Уведомления

Группа в Telegram: @pythonsu

#1 Апрель 16, 2015 11:31:00

mixxx92
Зарегистрирован: 2015-04-16
Сообщения: 4
Репутация: +  0  -
Профиль   Отправить e-mail  

решение систем дифференциальных уравнений

Доброго времени суток!))
Разбирался с scipy и numpy, понял как решать системы дифференциальных уравнений , если у нас есть фиксированное количество уравнений(например,2)
Когда попытался решить уравнение n*n(задавая матрицу коэффициентов А), у меня выскочила ошибка
Вот код:

from scipy import integrate
import numpy as np
 
A=np.array([[3,2],[1,-1]])
 
def func(t,x):
    f=np.array(A*x)
 
 
    return f
 
 
y0=np.array([0,1])
t=np.linspace(0,1,10)
result = integrate.odeint(func,y0,t)
 
print result

Вот ошибка:
ValueError: object too deep for desired array
odepack.error: Result from function call is not a proper array of floats.
ValueError: object too deep for desired array
odepack.error: Result from function call is not a proper array of floats.

Может, кто-нибудь знает в чем дело?

Отредактировано mixxx92 (Апрель 16, 2015 11:33:50)

Офлайн

#2 Апрель 16, 2015 18:24:01

doza_and
От:
Зарегистрирован: 2010-08-15
Сообщения: 4138
Репутация: +  253  -
Профиль   Отправить e-mail  

решение систем дифференциальных уравнений

В том что A*x и numpy.dot(A,x) это совершенно разные вещи. Рекомендую смотреть что вы решаете.



Офлайн

#3 Апрель 16, 2015 20:50:38

mixxx92
Зарегистрирован: 2015-04-16
Сообщения: 4
Репутация: +  0  -
Профиль   Отправить e-mail  

решение систем дифференциальных уравнений

я и так и так пробовал, ничего не меняется

Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version