matlab中怎么对由两个一维数组绘出的曲线求积分
2个回答
展开全部
可以先用ployfit将数据拟合成一个多项式,然后再对这个多项式求积分。不过你这个图形很难用多项式进行拟合,所以该方法虽然简单,但在这不可取。
自己编写图形积分m函数。这种方法适合用于数据点很密集的情况,即用两个函数值的平均值代替小矩形的高,在乘以矩形的宽就行。这里给个算法流程。
1)n=length(x);m=length(y); 求向量的长度,如果n~=m,则输入参数有误
2)int = 0; 求面积
for i=1:n-1
int=int+(x(i+1)-x(i))*(y(i+1)+y(i)/2);
3)返回int
如果曲线不好拟合,而且数据点也不密。可以先interpl插值函数进行插值,再用上面第二种方法。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询