用边界条件求Maple中的微分方程组

时间:2012-03-14 08:50:55

标签: maple differential-equations

我正在尝试解决一组耦合微分方程,我想用 Maple 检查我的一些推导。但是,我没有让synthax正确。

我尝试在一个简单的情况下重现我的问题,如下所示:

restart;
e1:=diff(P(y),y,y,y,y)=0;
e2:=diff(Q(x,y),y,y)=0;
dsolve([e1,e2]);
cond:=P(0)=0;
dsolve({e1,cond});
dsolve({e1,e2,cond});
dsolve({e1,e2,cond},[P,Q]);

所以现在这些都是解耦的,并且很容易解决。但是,由于某种原因我没有真正得到Maple,因此我坚持使用Maple。

对于以下情况(从上面可以看到),Maple给了我一个解决方案

  • 解决没有边界条件的两个方程式。
  • 用边界条件求解第一个方程。

现在,当我将两者结合起来时,我收到一条错误消息

  

错误,(在dsolve中)发现以下等式不依赖于   输入系统的未知数:{diff(diff(Q(x,y),y),y)= 0}

如果我明确地将P和Q定义为未知数(我作为提示)(参见代码的最后一行)

  

错误,(在dsolve中)收到{Q}的指示作为未知的   问题,并找到相关的函数{Q(x,y)},不依赖于   {Y}。请明确指定未知{Q}的功能

备注

  • 如果我只在e2中将Q定义为y的函数,则dsolve语句可以工作,但这不是我想要的
  • 我看过pdsolve,但到目前为止没有运气。我试过pdsolve({e1,e2,cond});然而,这没有给出错误消息,但也没有输出。
  • 我在线搜索了我收到的错误消息,但不幸的是,这并没有让我更进一步。
  • 如果y将e1中的P定义为x和y P(x,y)并设置cond:=P(x,0)=0的函数,则dsolve不会给出任何输出。

我想要解决的问题

我想解决的实际问题如下。

d^4 P(y) / dy^4 = 0
d^2 Q(x,y) / dy^2 = 0
P(y=0) = 0

如何在一个命令中解决Maple中的这个集合? 我知道答案应该是

P(y) =1/6 C1 y^3 + 1/2 C2 y^2 + C1 y
Q(x,y) = F1(x) y + F2(x)

非常感谢任何提示/建议!

1 个答案:

答案 0 :(得分:2)

这里的问题完全是程序性和数学性的。

考虑第一个错误:

  

错误,(在dsolve中)发现以下等式不依赖于输入系统的未知数:{diff(diff(Q(x,y),y),y)= 0}

这告诉你的是你有一个恒定的关系。从字面上看,你的函数Q(x,y)的一阶导数是常数,C,并且进一步尝试找出下一个衍生炸弹,因为你已经尽可能低了。完全是迂腐的,the evaluation should be zero,但这似乎不是Maple支持的情况。

第二条错误消息似乎在告诉您,当您将PQ定义为未知数时,您仍然没有真正的未知数y,求解。这也导致了Maple的困难。

我认为如果我们看到你对Q(x,y)的定义,我们会很快发现,至少根据Maple,该函数实际上并不依赖于x的任何值。这就是造成部分困难的原因。

另外,我不清楚你为什么要调用diff,因为采用两个函数的导数和二阶导数似乎不是你想做的。也许这些应该替换为dsolve,条件指定为here