当前位置:   article > 正文

微分方程应用(MATLAB)

微分方程应用(MATLAB)

【例题1】matlab求解微分方程的解析解

  1. close all
  2. clear
  3. clc
  4. t_final = 100;
  5. x0 = [0; 0; 1e-10];
  6. f = @(t,x)[-8/3*x(1)+x(2)*x(3); -10*x(2)+10*x(3); -x(1)*x(2)+28*x(2)-x(3)];
  7. [t,x] = ode45(f, [0,t_final], x0);
  8. plot(t,x), figure;
  9. plot3(x(:,1),x(:,2),x(:,3));

 【例题2】微分方程解析解

  1. close all
  2. clear
  3. clc
  4. syms y(t);
  5. u = exp(-5*t)*cos(2*t+1)+5;
  6. uu = 5*diff(u,t,2) + 4*diff(u,t) + 2*u;
  7. f(t) = diff(y,t,4) + 10*diff(y,t,3) + 35*diff(y,t,2) + 50*diff(y,t) + 24*y;
  8. ySol = dsolve(f(t)==uu);
  9. ySol = simplify(ySol);

 (1)初值条件

  1. close all
  2. clear
  3. clc
  4. syms y(t);
  5. u = exp(-5*t)*cos(2*t+1)+5;
  6. uu = 5*diff(u,t,2) + 4*diff(u,t) + 2*u;
  7. f(t) = diff(y,t,4) + 10*diff(y,t,3) + 35*diff(y,t,2) + 50*diff(y,t) + 24*y;
  8. Dy=diff(y,t);
  9. D2y=diff(y,t,2);
  10. D3y=diff(y,t,3);
  11. cond=[y(0)==3,Dy(0)==2, D2y(0)==0, D3y(0)==0];
  12. ySol = dsolve(f(t)==uu,cond);
  13. ySol = simplify(ySol);
  14. ezplot(ySol,[0,5])

【例题3】求解方程组

  1. close all
  2. clear
  3. clc
  4. syms x(t) y(t)
  5. eqn1 = diff(x,t,2) + 2*diff(x,t) == x + 2*y(t) - exp(-t);
  6. eqn2 = diff(y,t) == 4*x + 3*y(t) + 4*exp(-t);
  7. [xSol, ySol] = dsolve([eqn1, eqn2]);

【例题3】

  1. close all
  2. clear
  3. clc
  4. eq1='Dx=2*x-3*y+3*z';
  5. eq2='Dy=4*x-5*y+3*z';
  6. eq3='Dz=4*x-4*y+2*z';
  7. [x,y,z]=dsolve(eq1,eq2,eq3,'x(0)=1,y(0)=2,z(0)=1');%如果省略自变量,默认为t
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/article/detail/59363
推荐阅读
相关标签
  

闽ICP备14008679号