matlab常微分方程empty sym
来源:学生作业帮助网 编辑:作业帮 时间:2024/06/09 08:58:21
你这个方程应该是在初条件v(0)=0时解的咯,没有初条件matlab解不出来.语句如下(我现在没条件在软件中试,如果不行你告诉我再改~)G=527.436*0.4536*9.8;F=470.327*0
%欧拉法解一阶常微分方程% y'=xy^(1/3)f = inline('x*y^(1/3)','x','y');
设缉私艇航速为v1,走私船航速为v2,航行时间为t,以缉私艇出发点为原点,正东方向为x轴,正北方向为y轴,缉私艇经t时间行驶到(x,y)点.经过的航迹为y=f(x);y'=(v2*t-y)/(c-x)
symsxya;>>dsolve('Dy=-2*x*y/(x^2+2*a)','x')ans=C1/(x^2+2*a)我这里运行没错,你检查一下你的命令中括号等符号是否有问题,是否有输成全角的情况.另
这个只能用数值解法,初始值你没有给,假设t=0,q=0吧.functionhh[t,q]=ode23t(@ode,[05],0)plot(t,q)xlabel('t'),ylabel('q')func
原式可变为(x^2+y^2)dy^2+d(x^2+y^2)=0即(x^2+y^2)^-1*d(x^2+y^2)=-dy^2以下易得,通解为(x^2+y^2)*e^(y^2)=c(无法写为显函数)
>> y=dsolve('Dy=1-y^2','y(0)=0') y = tanh(t)>>
你这个属于边值问题.得用打靶算法.如果想简单,你令一个变量为x=y-2001,就变成正常的微分方程.
这个你没给初值条件啊我假设是x0=[0,0];x(1)是A,x(2)是R程序如下首先定义这个方程functiondx=funct(t,x)dx=zeros(2,1);dx(1)=0.00875+7.5
matlab里面常使用龙格库塔方法求解常微分方程组,命令是ode45,还有其他一些函数,但是最常用的是ode45,lz可以help一下,很简单的,另外给你一个文档,讲的还是比较详细,希望可以帮到你ht
这次看看,程序通了.functionhhh[t,x]=ode45(@xprim2,[0,20],[30;20]);plot(t,x);xlabel('timet0=0,tt=20');ylabel('
第一题y=dsolve('Dy=y-2*y^3*sin(t)','y(0)=1')[T,Y]=ode45(@(t,y)y-2*y^3*sin(t),[0,3],1);plot(T,Y)第二题(1)[T
首先建立vdp1.m文件functiondx=vdp1(t,x)dx=zeros(2,1);dx(1)=x(2);dx(2)=(10000*x+(96.321*exp(-t/378.47108)+28
简单的就是先把那个微分方程化成传递函数,这个可以用matlab自身的函数算,然后你就到simulink里面建个模,很快就出来了
x(:,1)意思是访问x矩阵的任意行的第一列举个例子>>x=randn(3,3)x=0.7254-0.20501.4090-0.0631-0.12411.41720.71471.48970.6715>
请到我的百度空间,标题为四阶龙格库塔(Runge-Kutta)方法
x = 0:0.2:6;y = 0:0.1:2;[x,y] = meshgrid(x,y);fxy = y.*(1-y)
欧拉方法的matlab先定义函数eulerfunction[x,y]=euler(fun,x0,xfinal,y0,n);ifnargin
%y1=y'%y2=y%----------函数文件fun.mfunctiondy=fun(t,y)dy=zeros(2,1);dy=[-0.147*sin(y(2));...y(1)];%-----
ode45和ode23都是用龙哥库塔法求解常微分方程的命令,直接用即可,具体用法可参看其帮助文档.[t,y]=ode45(@(t,p)-3*p./(100+t),[0200],7);plot(t,y)