如何用matlab求解二阶微分方程,以及程序实例
3个回答
展开全部
1、对于求数值解的微分方程,你可以用ode45()函数求解。如求下列微分方程
func。m %自定义微分方程的函数
function z = func(t,y)
z =[y(2);(1-y(1)^2)*y(2)-y(1)];
main。m %主程序
clear all;close all;clc
y0 = [0.25;0];
h = 0.1;
a = 0;
b = 20;
[t1 y1] = ode45(@func,y0,h,a,b)
2、对于求解析解的微分方程,你可以用dsolve()函数求解。如求微分方程x*y''+x﹡(y')^2-y'=0的解析解,可以下列步骤计算
>> syms y(x)
>>Dy = diff(y);D2y = diff(y, 2);
>>dsolve(x*D2y+x*(Dy)^2-Dy==0,'x')
展开全部
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
dsolve('D2y=x','x')
ans
=
x^3/6
+
C2*x
+
C3
D2y的意思就是y的二阶微分项
不明白你的问题什么意思,要输入的话直接定义符号变量输入
syms
D2x
x
D2x=x;
如果是矩阵,那就用矩阵表示
ans
=
x^3/6
+
C2*x
+
C3
D2y的意思就是y的二阶微分项
不明白你的问题什么意思,要输入的话直接定义符号变量输入
syms
D2x
x
D2x=x;
如果是矩阵,那就用矩阵表示
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询