tôi muốn để lưu trữ các bước hội nhập khác nhau được thực hiện bởi người giải quyết riêng của mình khi tôi gọi nó là:Python - scipy: mô-đun thơ ca ngợi: Vấn đề cho phép tùy chọn bước của giải
solver1.integrate(t_end)
Vì vậy, tôi đã làm một vòng lặp while và kích hoạt tùy chọn bước thiết lập giá trị của nó để True
:
while solver1.successful() and solver1.t < t0+dt:
solver1.integrate(t_end,step=True)
time.append(solver1.t)
Sau đó, tôi âm mưu y
, kết quả của hội nhập và ở đây có vấn đề của tôi. Tôi có những bất ổn mà xuất hiện trong một khu vực nằm:
Tôi nghĩ đó là vì các vòng lặp hoặc một cái gì đó như thế nên tôi đã kiểm tra kết quả loại bỏ các step
:
while solver1.successful() and solver1.t < t0+dt:
solver1.integrate(t_end)
Và bất ngờ. .. Tôi có kết quả chính xác:
Đó là từ bỏ e tình hình kỳ lạ ... Tôi sẽ biết ơn nếu một người nào đó của bạn có thể giúp tôi với vấn đề này.
EDIT:
Để thiết lập các giải tôi làm:
solver1 = ode(y_dot,jac).set_integrator('vode',with_jacobian=True)
solver1.set_initial_value(x0,t0)
Và tôi lưu trữ các kết quả sử dụng .append()
Can bạn hiển thị thêm một số mã của bạn, cách bạn thiết lập trình giải quyết và lưu trữ kết quả để vẽ đồ thị? – silvado
Tất nhiên, tôi vừa mới chỉnh sửa câu hỏi của mình. – kuider
Bạn vẫn chưa chỉ ra cách bạn đang thực sự lưu trữ trạng thái ODE hiện tại mà bạn đang vẽ, giả sử rằng các ô hiển thị một trong các biến trạng thái ODE. – Nikolas