(我尝试在Scientific Computing发帖,但是他们说要在这里发帖;对不起,如果这又是偏离主题的话。)
我是第一次在Octave上使用dsolve(非常感谢包括这个功能,BTW;这个SimPy连接非常好),并且它可以与大多数的ODE和IVP一起使用。我试过了,但是这个给了我一个错误:
>> pkg load symbolic
>> syms x(t)
>> ode1 = diff(x,t) == -t/x
>> cond1 = x(0) == 5
>> dsolve(ode1, cond1)
error: Python exception: AttributeError: 'list' object has no attribute 'subs'
occurred at line 15 of the Python code block error: called from
python_cmd at line 176 column 5
dsolve at line 200 column 10
刚刚解决ODE工作正常;它只会与IVP崩溃:
>> dsolve(ode1)
ans =
{
(sym)
_________
╱ 2
x(t) = -╲╱ C₁ - t
(sym)
_________
╱ 2
x(t) = ╲╱ C₁ - t
我尝试了其他初始条件,但得到了同样的错误:
>> cond2 = x(-3) == 0.1
warning: Using rat() heuristics for double-precision input (is this what you wanted?)
warning: called from
sym at line 225 column 7
binop_helper at line 60 column 5
ineq_helper at line 35 column 5
eq at line 91 column 5
cond2 = (sym) x(-3) = 1/10
>> dsolve(ode1, cond2)
error: Python exception: AttributeError: 'list' object has no attribute 'subs'
occurred at line 15 of the Python code block
error: called from
python_cmd at line 176 column 5
dsolve at line 200 column 10
任何人都可以帮忙吗?我真的很想使用Octave明确地解决ODE和IVP
答案 0 :(得分:0)
简答:
不幸的是,它尚未得到支持。
更长的答案:
我遇到了同样的问题,并查看了脚本内部,看看出了什么问题。
在dsolve.m函数的第174行,您将找到以下内容:
% FIXME: it is not currently supported a list of boundary/initial conditions
你能做什么:
如果您真的需要它,我建议您联系该软件包的作者,让他们知道实际上有人想要这个功能。访问Forge页面,查看该软件包作者的详细信息。