早教吧 育儿知识 作业答案 考试题库 百科 知识分享

关于偏微分方程组mathematica或matlab编程求解,有没有简单点的办法,方程见图谢啦

题目详情
关于偏微分方程组mathematica或matlab编程求解,有没有简单点的办法,方程见图
谢啦
▼优质解答
答案和解析
只会Mathematica.数值解的话可以用NDSolve.你给的条件还不足,需要补充边界条件,以及具体参数.一个小例子:
eqn = D[u[t, r], t] == D[u[t, r], r, r] + D[u[t, r], r]/r;
int = u[0, r] == 1;
bon1 = u[t, 0.1] == 1;
bon2 = u[t, 1] == 1 + t;
sol = NDSolve[{eqn, int, bon1, bon2}, u, {t, 0, 1}, {r, 0.1, 1}];
Plot3D[u[t, r] /. sol, {t, 0, 1}, {r, 0.1, 1}]
注意这里把0点给挖掉了,因为那里是奇点,而Mathematica对偏微分数值计算的此类地方要求比较严,不去掉的话运算会出错.这个就是个最简单的圆形分布的,外边界的温度随时间t线性增加的温度随时间变化图了.非齐次项的引入是完全类似的.读懂了我的代码的话,你就该知道怎么加了.