谁来帮我解释一下matlab中的这一句话?
y=sum((2*y(1:end-1)+diff(y)).*diff(x))/2这句说是用梯形法求面积,但是我不懂这里面这些具体函数的意思,比如2*y(1:end-1)是...
y=sum((2*y(1:end-1)+diff(y)).*diff(x))/2
这句说是用梯形法求面积,但是我不懂这里面这些具体函数的意思,比如2*y(1:end-1)是什么意思?指的是什么?为什么是(1:end-1),而后面的y和x都没有这样写了
我的x是 0:pi/100:pi,
y=sin(x), 展开
这句说是用梯形法求面积,但是我不懂这里面这些具体函数的意思,比如2*y(1:end-1)是什么意思?指的是什么?为什么是(1:end-1),而后面的y和x都没有这样写了
我的x是 0:pi/100:pi,
y=sin(x), 展开
3个回答
展开全部
y(1:end-1)是y 这一组数的第一个到倒数第二个元素
diff(y)是作差, y每个元素的后一个元素减去自身, 构成一个新的数列,其实也就是每个小梯形下底比上底多的部分
2*y(1:end-1)+diff(y) 其实就是上底加下底的和
diff(x)的每个元素是每个小梯形的高
(2*y(1:end-1)+diff(y)).*diff(x))/2 既梯形面积公式
最后把所有的小梯形面积加起来sum(),得到积分
diff(y)是作差, y每个元素的后一个元素减去自身, 构成一个新的数列,其实也就是每个小梯形下底比上底多的部分
2*y(1:end-1)+diff(y) 其实就是上底加下底的和
diff(x)的每个元素是每个小梯形的高
(2*y(1:end-1)+diff(y)).*diff(x))/2 既梯形面积公式
最后把所有的小梯形面积加起来sum(),得到积分
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
y是一个向量,代表被积函数。里面就是梯形法求面积,至于写成(2*y(1:end-1)+diff(y)).*diff(x),里面关键是diff(y)表示y的差分,这其实就是上下底的和,diff(x)就是高。因为是向量结果,用了一个.*
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询