如何用函数系数的DSolve求解微分方程?

时间:2012-06-14 02:06:57

标签: wolfram-mathematica dsolve

假设我有

v[x_] = Square[1.453 Sech[x + 1]] + I  Sech[x + 1] Tanh[x + 1]

我必须解决这个问题:

mu1 u1[x] - u1''[x] - v[x] u1[x] == 0

代表u1[x]。给出的条件是:

u1[-2] == 1, u1'[-2] == 0 .

我尝试了DSolve,但它显示错误:

  

Solve :: inex:Solve无法用不精确的系数解决系统,或者通过系统中存在的不精确数字的直接合理化来获得系统。由于Solve使用的许多方法都需要精确输入,因此为Solve提供系统的精确版本可能有所帮助。

我如何象征性地在数学中解决这个等式?

1 个答案:

答案 0 :(得分:1)

这个更简单的版本解决了:

sol = DSolve[{mu1*u1[x] - u1''[x] - Cos[x]* u1[x] == 0,
    u1[-2] == 1,
    u1'[-2] == 0},
   u1, x];

GraphicsRow[Table[Plot[Evaluate[u1[x] /. sol], {x, 0, 20},
   PlotRange -> All], {mu1, 1, 3}]]

enter image description here

但是包含v的方程式存在问题,可能是数学问题:

DSolve[{mu1*u1[x] - u1''[x] -
    ((1.453*Sech[x + 1])^2 + I*Sech[x + 1]*Tanh[x + 1])* u1[x] == 0,
  u1[-2] == 1,
  u1'[-2] == 0},
 u1, x]