问题标签 [dsolve]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
matlab - Matlab使用参数解决错误
我正在尝试使用dsolve
命令在 Matlab 上求解一组微分方程。我有如下定义的三个方程,但不是数值系数,而是我有通用参数,如lambda1
、lambda2
等,我想根据这些参数获得结果。代码如下:
我收到以下错误:
我相信它必须与参数有关。我应该怎么办?
matlab - 解算图
如何绘制以下函数?我需要 x 范围的[0; 1]
.
matlab - 解决差异。和 sin 函数作为符号方程
我正在寻找一种通过 MATLAB 求解以下微分方程的方法:
参数定义为:
但我找不到任何解决方案't'。有谁知道如何做这些事情?
感谢您的帮助和时间。
dsolve - func() 返回的导数数量必须等于初始条件向量的长度
虽然存在相关的问题和回复,但我无法将它们转化为我自己的问题,所以这里是:
我得到的错误信息是:func() (153) 返回的导数数量必须等于初始条件向量的长度 (3)
谢谢你!
wolfram-mathematica - DSolve 命令 - Mathematica
我想用 Mathematica 求解这个微分方程:
这是行不通的。还有其他方法可以解决这个问题吗?
matlab - dsolve MATLAB:找不到显式解决方案
我想解微分方程。MATLAB 显示警告:
有没有办法解决它?(分析或数字)谢谢
sympy - sympy dsolve 返回不正确的答案
我正在使用 sympy.dsolve 来解决衰减链的简单 ODE。对于不同的衰减率(例如 lambda_1 > lambda_2),我得到的答案是错误的。代入 C1=0 后,我得到一个简单的指数
而不是正确的答案:
我究竟做错了什么?这是我的代码
python - SymPy dsolve 为数学等效的微分方程返回不同的结果
这是我的脚本的内容:
该程序返回以下输出:
但是当我这样定义变量时diffeq
:
然后我收到输出:
当我diffeq
像这样定义变量时:
然后我收到输出:
在每一种情况下,微分方程diffeq
在数学上都是相等的。因此,我认为dsolve()
应该为每种情况返回相同的输出。有人请帮助我理解为什么dsolve()
在第二种情况下返回错误。非齐次线性常微分方程应该如何表达才能保证dsolve()
不返回错误?
matlab - 使用“subs”函数评估“dsolve”的输出在 Maltab 中提供额外的输出
介绍
如果您想了解宏伟计划……请阅读简介。如果没有,请直接跳到我的问题。
我的微分方程和线性代数课程有一个项目,我必须使用计算机代数系统来求解具有常系数的一阶线性常微分方程和具有常系数的非线性 ODE。我必须证明这是在分析和数字上完成的。我的计划是有 2 个函数利用dsolve
分析部分的函数和我通过 Matlab 的本教程ODE1
了解的函数. 该函数被定义为使用欧拉方法逼近微分方程的解。这些函数都将使用相同的输入参数,因此每个输入都可以定义一次,并且这些函数都将了解要使用的输入(可能将函数嵌套在一个调用函数下)。目标是在用于查找数值近似值的相同区间内评估解析解,并在表格和图表中比较结果。我得到了数值解,以行向量的形式给了我一个“表格”,并绘制了该行向量。我开始遇到分析解决方案的问题...
我的问题
为了解决一阶线性 ODE,我生成了这个函数
这个函数生成的列表L_Analytic(diff(y)==y, 0, 0.1, 5, 1)
是
在使用相同输入的 Matlab 中的不同函数中使用数值方法时,我得到列表:
对于那些了解微分方程或精通微积分的人来说,y' = y 的解是 e^x,当使用 5 个步骤在 0:0.4 区间内进行评估时,列表应该是
经过一些四舍五入。
1
所以这里的问题是我的分析解决方案中有一个额外的条目。我相信它与循环中的subs(S1)
部分有关S1 = [subs(S1); vpa(subs(s1))]
,for
但我不知道如何解决这个问题。
我有点理解为什么我需要使用该subs
函数,因为我使用符号变量来使用dsolve
在其答案中输出符号变量的函数。此外,为了for
循环迭代和改变,符号变量必须替换为t
每次的实际值。我确实尝试vpa(subs(s1))
在循环之前移动for
,但这只是在向量中返回了 5 次相同的值。我也试过不使用subs(S1)
它给了我
所以我很肯定这是代码的这一部分。
旁注:我了解分析方法输出列向量,如ODE1
链接的视频中所示。为了让 Matlab 将其绘制为一条线,我将列向量转置为行向量,一旦解决方案部分固定,我将对解析解执行相同的操作。