Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/matlab/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Matlab 用trapz计算积分的误差_Matlab_Integral - Fatal编程技术网

Matlab 用trapz计算积分的误差

Matlab 用trapz计算积分的误差,matlab,integral,Matlab,Integral,我想计算一个时间向量(testime),所以我应用了以下等式 在向量上积分cp(t)并计算,但我会看到一个错误 “在赋值A(I)=B中,B和I中的元素数必须为 同样” IntegrateTest中的错误(第12行) testime(i)=1/vs(i)+trapz(pas,vs(i))。” 我应该提到: 所有向量大小相同(345600) vs是一个包含27个值的向量。(vs est le cp dans la formule) 注意如何使用trapz功能,并仔细阅读其手册: 您得到的错误表

我想计算一个时间向量(testime),所以我应用了以下等式

在向量上积分cp(t)并计算,但我会看到一个错误

“在赋值A(I)=B中,B和I中的元素数必须为 同样”

IntegrateTest中的错误(第12行) testime(i)=1/vs(i)+trapz(pas,vs(i))。”

我应该提到:

  • 所有向量大小相同(345600)
  • vs
    是一个包含27个值的向量。(vs est le cp dans la formule)


注意如何使用trapz功能,并仔细阅读其手册:

您得到的错误表明,结果的长度(右侧)在迭代过程中会发生变化,但左侧应该保持不变(testime(i)中的元素数)。这是因为您没有正确使用函数trapz

如果希望在特定间隔内进行积分,则应指定要在其上积分的网格,而不是最终点(如您尝试提供单个元素作为限制“sr(i)”,该限制被trapz函数视为尺寸

您应该做以下几点:

区间[0i]上的积分函数“pas”=trapz(0:(i-1),pas(1:i))


假设间隔的间距为单位长度。如果不是,则相应地定义间距向量(而不是0:(i-1))。

注意如何使用trapz功能,并仔细阅读其手册:

您得到的错误表明,结果的长度(右侧)在迭代过程中会发生变化,但左侧应该保持不变(testime(i)中的元素数)。这是因为您没有正确使用函数trapz

如果希望在特定间隔内进行积分,则应指定要在其上积分的网格,而不是最终点(如您尝试提供单个元素作为限制“sr(i)”,该限制被trapz函数视为尺寸

您应该做以下几点:

区间[0i]上的积分函数“pas”=trapz(0:(i-1),pas(1:i))


假设间隔的间隔为单位长度。如果不是,则相应地定义间隔向量(而不是0:(i-1))。

谢谢您的回答,但我记得您的代码,但另一个错误是“使用排列顺序的错误包含无效排列索引。trapz(第43行)中的错误y=排列(y,排列)积分测试中的错误(第12行)testime(i)=1/vs(i)+trapz(0:(i-1),pas(1:i))“我像公式cp(vs在我的代码中)那样在t(pas在我的代码中)的区间进行积分你所说的间距向量是什么意思?请使用此代码,但我不知道它是否正确,请你怎么看?testime=cumtrapz(pas,vs)谢谢你的回答,但我记得你的代码,但另一个错误是“使用排列顺序的错误包含无效的排列索引。trapz中的错误(第43行)y=排列(y,perm);IntegrateTest中的错误(第12行)testime(i)=1/vs(i)+trapz(0:(i-1),pas(1:i))“我在t(pas在我的代码中)的区间像公式cp(vs)一样积分。”你所说的间距向量是什么意思请使用这个代码,它是有效的,但我不知道它是否正确,请你怎么看?testime=cumtrapz(pas,vs)
load ('vleurcpetcm ','vs','k')

 pas= [0,5,15,25,35,45,55,65,75,85,95,105,115,135,165,...
      195,225,255,285,375,525,675,825,975,1125,1350,1650];


 for i=1:27
     testime(i)=  1/vs(i) +trapz(pas,vs(i))
 end