matlab求解振动微分方程组中出现的问题
振动方程组简化如下:x''+x'+y'-f(x,y)(x+y)=g;<BR> y''+x'+y'+f(x,y)(x-y)=k;<BR> g,k为已知量,if (x+y)>=0<BR> f(x,y)=1<BR> else<BR> f(x,y)=0;<BR>如何用ode(45)进行求解!!!!!!!!<BR>回复:(huzhaolin)matlab求解振动微分方程组中出现的...
把方程转化到状态空间,然后写成function,其中包含对f(x,y)的判断<BR>然后直接调用ode45就行了 <P>function F=fun(t,f)<BR>if(f(1)+f(2)>=0);<BR>f(e)=1<BR>else<BR>f(e)=0;<BR>F=<BR>=ode(@fun,0,10,0,0,0,0)<BR>请问这样可以吗?<BR> <BR></P>回复:(huzhaolin)function F=fun(t,f)if(f(1)+f(2)...
<DIV class=quote><B>以下是引用<I>huzhaolin</I>在2006-3-30 18:34:21的发言:</B><BR><P>function F=fun(t,f)<BR>if(f(1)+f(2)>=0);<BR>f(e)=1<BR>else<BR>f(e)=0;<BR>F=<BR>=ode(@fun,0,10,0,0,0,0)<BR>请问这样可以吗?<BR> <BR></P></DIV>
<br>你这里的f是什么东西? <P>令f(1)=y,f(2)=x,f(3)=x',f(4)=y';<BR>function F=fun(t,f)<BR>if(f(1)+f(2)>=0);<BR>fe=1<BR>else<BR>fe=0;<BR>F=<BR>=ode(@fun,0,10,0,0,0,0)</P>
回复:(huzhaolin)令f(1)=y,f(2)=x,f(3)=x',f(4)=y'...
<DIV class=quote><B>以下是引用<I>huzhaolin</I>在2006-3-30 18:43:24的发言:</B><BR><P><FONT color=#ff0000>令f(1)=y,f(2)=x,f(3)=x',f(4)=y';<BR></FONT>function F=fun(t,f)<BR>if(f(1)+f(2)>=0);<BR>fe=1<BR>else<BR>fe=0;<BR>F=<BR>=ode(@fun,0,10,0,0,0,0)</P></DIV>
<P>??????</P> <P>我这是大致步骤,是个大致草稿,请问是不是这样进行求解的。谢谢教授!</P>
回复:(huzhaolin)matlab求解振动微分方程组中出现的...
是的
页:
[1]