【请教】ODE中如何设置条件语句?
我用ODE解运动方程:Mx''+Cx'+Kx=f下面是引用的程序
function tangxioder
clear;clc
x0=zeros(6,1);
=ode45(@tangxi,,x0);
plot(t,x(:,1))
function dx=tangxi(t,x)
f=;
M=eye(3);
C=eye(3)*0.1;
K=eye(3)-0.5*diag(ones(2,1),1)-0.5*diag(ones(2,1),-1);
dx=;
我的问题是:我把f改成这样行不行?
if t<=3,
f1=t*100;
elseif t>3&t<=6,
f1=(6-t)*100;
else
f1=0;
end
f=;
如果行的话,该如何安插?我试过放在原来的位置取代原来的 f 好像行不通
想了一整天了,烦请各位高手指教,先谢过了!
[ 本帖最后由 tangxi 于 2008-11-11 09:54 编辑 ]
回复 楼主 tangxi 的帖子
原来的f是3*1的回复 沙发 sigma665 的帖子
不好意思,我改了一下回复 楼主 tangxi 的帖子
将t分为三段求三次,不知可否?回复 地板 ch_j1985 的帖子
我尝试了您说的,语言编排上老出错而且分三段理论上行的通吗?
回复 楼主 tangxi 的帖子
这里面是对时间进行分段,上面的做法是不合理的需要调用event这个函数,你查一下ode45
就知道了
回复 6楼 无水1324 的帖子
感谢院长,我按您说的试试
页:
[1]