|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有账号?我要加入
x
小弟刚刚着手matlab 以前只用过他做过线性规划,如今要利用它去仿真一个模型。
我写的代码如下:
syms t asd11;
asd11=dsolve('Dasd11+25*asd11-25*0.43392=0','asd11(0)=0');
ysd11=asd11-0.153
syms t asd12;
asd12=dsolve('Dasd12+25*asd12-25*0.31616=0','asd12(0)=0');
asd12
ysd12=asd12-0.159
[ustn1,ustn2,ustn3,ustn4,...
astn1,astn2,astn3,astn4,...
ugpe1,ugpe2,ugpe3,ugpe4,...
agpe1,agpe2,agpe3,agpe4,...
ygpe1,ygpe2,ygpe3,ygpe4,...
ugpi1,ugpi2,ugpi3,ugpi4,...
agpi1,agpi2,agpi3,agpi4,...
ygpi1,ygpi2,ygpi3,ygpi4]=dsolve('ustn1=1.003*0.4--0.922*ygpe1','Dastn1+25*astn1-25*ustn1=0',...
'ustn2=-0.922*ygpe2', 'Dastn2+25*astn2-25*ustn2=0',...
'ustn3=-0.922*ygpe3', 'Dastn3+25*astn3-25*ustn3=0',...
'ustn4=-0.922*ygpe4', 'Dastn4+25*astn4-25*ustn4=0',...
...
'ugpe1=0.774*astn1+0.774*0.347-0.981*ysd12','Dagpe1+25*agpe1-25*ugpe1=0', 'ygpe1=agpe1+0.268',...
'ugpe2=0.774*astn1+0.774*0.347', 'Dagpe2+25*agpe2-25*ugpe2=0', 'ygpe2=agpe2+0.268',...
'ugpe3=0.774*astn1+0.774*0.347', 'Dagpe3+25*agpe3-25*ugpe3=0', 'ygpe3=agpe3+0.268',...
'ugpe4=0.774*astn1+0.774*0.347', 'Dagpe4+25*agpe4-25*ugpe4=0', 'ygpe4=agpe4+0.268',...
...
'ugpi1=0.83*astn1+0.83*0.347-1.065*ysd11-0.382ygpe1','Dagpi1+25*agpi1-25*ugpi1=0', 'ygpi1=agpi1+0.121',...
'ugpi2=0.83*astn1+0.83*0.347-0.382ygpe2', 'Dagpi2+25*agpi2-25*ugpi2=0', 'ygpi2=agpi2+0.121',...
'ugpi3=0.83*astn1+0.83*0.347-0.382ygpe3', 'Dagpi3+25*agpi3-25*ugpi3=0', 'ygpi3=agpi3+0.121',...
'ugpi4=0.83*astn1+0.83*0.347-0.382ygpe4', 'Dagpi4+25*agpi4-25*ugpi4=0', 'ygpi4=agpi4+0.121',...
...
'astn1(0)=0','astn2(0)=0','astn3(0)=0','astn4(0)=0',...
'agpe1(0)=0','agpe2(0)=0','agpe3(0)=0','agpe4(0)=0',...
'agpi1(0)=0','agpi2(0)=0','agpi3(0)=0','agpi4(0)=0','t')
运行的时候asd11 asd12 ysd11 ysd12 四个关于的t的方程都解出来了,但是接下来就报错了“??? Error using ==> dsolve at 249
There are more ODEs than variables.” 这个是什么意思呢? 我又32个未知数 32个方程 和12个边界条件 按理应该是够得啊
请知道的大侠们说说问题在哪里~~~~TT |
|