1. 怎么给微分方程写程序呀,matlab,谢谢了
y=dsolve('Ds=-108','t')
y =
-108*t+C1
2. matlab求微分
MATLAB 提供的函数diff( )可用来求解符号对象的微分,其调用的格式为
(1) diff(S,'v'):对符号对象S 中指定的符号变量v 求其1 阶导数。
(2) diff(S):对符号对象S 中的默认的独立变量求其1 阶导数。
(3) diff(S,n):对符号对象S 中的默认的独立变量求其n 阶导数。
(4) diff(S,'v',n):对符号对象S 中指定的符号变量v 求其n 阶导数。
下面举例说明用法:
>> syms x n
>> y=sin(x)^n*cos(n*x);
>> Xd=diff(y)
Xd =
sin(x)^n*n*cos(x)/sin(x)*cos(n*x)-sin(x)^n*sin(n*x)*n
>> Nd=diff(y, n)
Nd =
sin(x)^n*log(sin(x))*cos(n*x)-sin(x)^n*sin(n*x)*x
至于你要求的微分值,请按照上述方法,然后调用函数subs()完成所求值,例如
subs(Xd, x, 2) ,其中Xd是微分后的表达式,x是自变量,2是指定的某点。
3. matlab微分方程m文件编程
syms
i
t
dsolve('L*Di+R*i=Um*sin(w*t)','i(0)=0','t')
你少写了一个条件,就是t=0的时候,i=0
运行结果为
i=exp(-R/L*t)/(R^2+w^2*L^2)*Um*w*L+Um*(-w*L*cos(w*t)+R*sin(w*t))/(R^2+w^2*L^2)
4. matlab中求符号函数的微分
x,y,z是t的函数就要显示的写出来
比如
syms t sita;
x=sin(t);
y=cos(t);
Rq=[x*x x x*y];
diff(Rq,t,1)
第一个参数Rq是函数,第二个参数是对哪个变量求导t,一个参数时可以不指定。
第三个参数是求几次(偏)导数。
5. MATLAB求解微分方程
问题出在函数exf.m上,定义function之后最后一句应该是end。
functionxdot=exf(t,x)
u=3*cos(t);
xdot=[01;-11]*x+[0;1]*u;
end
%主程序可以用下面的试试
clf;t0=0;tf=2*pi;x0t=[0;0];
[t,x]=ode23('exf',[t0,tf],x0t)
y1=x(:,1),
%y2=x(:,2)
plot(t,y1,'b-')
holdon
y=dsolve('D2y-Dy+y=3*cos(t)','y(0)=0,Dy(0)=0','t');
yy=subs(y,t);
plot(t,yy,'r*')
legend('数值解','解析解')
6. 如何用matlab求解二阶微分方程,以及程序实例
1、对于解析值,你可以用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')
运行结版果
2、对于数值解,你可以查看二阶常微分方程这个例子,https://..com/question/1112476448513751339.html(龙格-库塔方法)
7. 求MATLAB编程实现微分画图
把这部分保存为M函数,注意文件名一定是:Lemaitrechaboche
function dy=Lemaitrechaboche(t,y)
r=13.19;A=1209;x=620;a0=13.2478;
a1=0.00007865;a2=-0.0001924;z=733.25;
k=a0+a1*(x-z)+a2*(x-z)^2;
dy=[0;(x/A)^r*(1-y(2))^(-k)];
end
————————分割线——————————
在命令窗口输入:
[t2,y2]=ode45(@Lemaitrechaboche,[0,565],[0,0]); %Lemaitrechaboche模型函数数值求解
plot(t2,y2)
结果:
8. 想请高人帮我看一下以下微分方程的matlab程序怎么编写
将下面代码保存为ddextest.m直接运行就可。传统了tz系统参数
function ddextest
tz=1;%系统参数
tao=2;%延迟
sol = dde23(@(t,y,Z)ddex1de(t,y,Z,tz,tao),[tao, tao],ones(2,1),[0, 5]);
figure;
plot(sol.x,sol.y)
function dydt = ddex1de(t,y,Z,tz,tao)
% Differential equations function for DDEX1.
ylag1 = Z(:,1);
ylag2 = Z(:,1);
dydt = [ y(2)-ylag1(2)+tz^2
ylag1(1) + ylag2(2)+tao^3];
9. 求MATLAB解微分方程的程序
用dsolve命令。该命令中可以用D表示微分符号,其中D2表示二阶微分,D3表示三阶微分,以此类推。像这样:“dsolve(“Dy=3*x*x”,“x”)”