【急】有关MATLAB的相关问题程序非常简短和简单,而且在别的电脑上能运行,为什么换个电脑(MATL

发布时间:2021-02-26 01:37:26

【急】有关MATLAB的相关问题程序非常简短和简单,而且在别的电脑上能运行,为什么换个电脑(MATLAB版本也不一样了),就不能运行了呢?程序如下:function dx=cx3(t,x)dx=[x(2)+sin(x(1))x(1)-x(2)+sin(x(2))x(4)+sin(x(3))+4.2058*(x(1)-x(3))x(3)-x(4)+sin(x(4))+9.1945*(x(2)-x(4

网友回答

不是环境设置问题,是你的顺序不对,把以下程序放在一个m文件中运行即可:
function [] = myhelp() %%%%% 采用子函数解决定义问题
clear;
clc;tspan=[0 10];
x0=[0.01 0.02 0.01 0.01]';
[t,x]=ode15s(@cx3,tspan,x0);
e1=x(:,1)-x(:,3);
e2=x(:,2)-x(:,4);
plot(t,x(:,1),'r*',t,x(:,3),'o')
xlabel('t')
legend('x_{1}','x_{1}的估计')
figure
plot(t,e1)
xlabel('t')
;ylabel('x_{1}与其估计量的误差e_{1}')
figure
plot(t,x(:,2),'r*',t,x(:,4))
xlabel('t')
legend('x_{2}','x_{2}的估计')
figure
plot(t,e2)
xlabel('t')
;ylabel('x_{2}与其估计量的误差e_{2}')
function dx=cx3(t,x)
dx=[x(2)+sin(x(1))
x(1)-x(2)+sin(x(2)) x(4)+sin(x(3))+4.2058*(x(1)-x(3)) x(3)-x(4)+sin(x(4))+9.1945*(x(2)-x(4))]
以上问题属网友观点,不代表本站立场,仅供参考!