作业帮 > 数学 > 作业

mathematic 求解微分方程DSolve[{x'[t]== r*x[t]+b,x[0] == x0},x[t],t

来源:学生作业帮 编辑:作业帮 分类:数学作业 时间:2024/05/12 09:22:57
mathematic 求解微分方程DSolve[{x'[t]== r*x[t]+b,x[0] == x0},x[t],t]
为什么出现错误:DSolve::deqn:Equation or list of equations expected instead of True in the first argument {-b+(x^\[Prime])[t]==r x[t],True}.
当我把x换成y时,即DSolve[{y'[t] == r*y[t] + b,y[0] == y0},y[t],t]时却能成功求解,这是为什么?
mathematica求解微分方程中,x只能作自变量,y只能作因变量吗?例如求解x(t),则出现错误。
我把你的代码复制到mathematic里面:
DSolve[{x'[t]== r*x[t]+b,x[0] == x0},x[t],t]
运行报错,但是如果这么写
DSolve[{x'[t] == r*x[t] + b,x[0] == x0},x[t],t]
就能求出解来
看出上面两句有什么不同了吗?
我靠!你的上面那行的加号是中文输入法里的加号,这不管在哪种程序里都是错的啦.
再问: 谢谢!我按你写的复制下来,运行(保证没有输入法错误),运行结果为 DSolve[{x[t] == b + r x[t], x[0] == x0}, x[t], t] ,我用的是mac版本的,难道是版本问题?
再答: 我靠,DSolve是解微分方程的,你输入的是: DSolve[{x[t] == b + r x[t], x[0] == x0}, x[t], t] 我输入的是: DSolve[{x‘[t] == b + r*x[t], x[0] == x0}, x[t], t] 你那根本就不是微分方程好不好? 你在mathematica里先执行下面这个语句 Clear["Global`*"] 清楚所有变量的设置之后再试 实在不行,去它官方网站或 stack overflow 发一个bug声明。
再问: 非常感谢!我知道到底是怎么回事了。之前我求解微分方程时,不小心将“==“写成”=“,然后提示出错,后来我将”=“改成”=="时,仍然是错误。我现在才明白为什么改正后还是错误,原因是已经将 x'[t]赋值了,所以错误总是 Equation or list of equations expected instead of True in the first \ argument {True}. 即方程恒成立。那么该怎么办呢?清除变量对它来讲已经不起作用了。
再答: Clear["Global`*"] 清除所有变量和函数的设置