1楼:匿名用户
看**,interrp想要实现的功能是按照指定的点数,对输入数据按照样条插值进行重采样。但存在以下两个问题:
1、interrp函数中,调用interp1时,缺少第一个参数即(1:n),导致y和xx会被分别视为横坐标和纵坐标,而这两个向量的长度不同,这也是题主现在遇到错误的原因;
2、在下面的那个m文件中,结果是要返回成为列向量,但从现有**看,interrp返回的结果很可能是行向量。
s函数,matlab,运行时出现以下报错,求大神解答
2楼:匿名用户
以下是题主贴出s函数**的一部分:
functionsys=mdlderivatives(t,x,u)
t1=x(1);
t2=x(2);
t3=x(3);
t=[t1;t2;t3];
y1=u(1);
y2=u(2);
y3=u(3);
y4=u(4);
y5=u(5);
y=[y1;y2;y3;y4;y5];
a=[-0.0590.496-0.868;
-5.513-0.9390.665;
0.0680.026-0.104];
b=[0.0060.0060.00400.09;
1.8791.3280.0290.6750.217;
-0.109-0.096-0.0840.007-2.974];
deltan=[0.5*sin(t)0cos(t);
0-0.5*sin(t)0;
-cos(t)00;
000];
d=[0.1000.050;
0-0.050.0100.1;
0.0200.0100.1];
a1=a+d*deltan;
sys(1)=a1(1,:)*t+b(1,:)*y;
sys(2)=a1(2,:)*t+b(2,:)*y;
sys(3)=a1(3,:)*t+b(3,:)*y;
这里面存在以下问题:
1、变量t在前面被定义成列向量(t=[t1;t2;t3];),而计算deltan的那句似乎还是把它当成标量(时间)使用的,这是导致题主目前错误的直接原因。
2、即使上述问题解决了,后面仍然会有问题:d有5列,而deltan只有4行,无法相乘。
对于s函数的错误,比较有效的解决方法是在函数中适当的位置设置断点,然后对模型运行**,执行到断点处会停下来,仔细检查,找出错误的原因改正即可。
matlab2015b安装后运行出现了下面的警告是什么原因 求解答
3楼:匿名用户
matlab2015b安装后运行出现了下面的警告的原因是,因为你安装在原matlab安装目录中,与原matlab的内置函数同名了。只要覆盖就可以了,不影响调用。
4楼:梦在京
应该是装在根目录里了,重新建一个文件夹把所有安装的matlab文件装进去就行。
求教大神:这个匐灯藓怎么养,求教养花大神,我家这个玉树是出现什么问题了?叶子从中间开始烂掉, 10
1楼 荣荣和平 放室内明亮处通风处比较好 干透浇水及时点,喜湿润叶片枝干经常喷喷水比较好,怕干旱喜湿润,干透浇水及时点 大灰藓怎么养 2楼 陈璐燕 大灰藓的耐受性非常好生存能力强 ,在苔藓中属于比较耐旱的品种,干枯时候会呈现黄褐色 遇水养一段时间就会转为青绿。 30岁的她还没嫁出去,身材不错高薪白领...