matlab小问题 一个函数 看不懂
来源:学生作业帮 编辑:大师作文网作业帮 分类:综合作业 时间:2024/11/15 01:36:38
matlab小问题 一个函数 看不懂
clf;clear;
x=0:5:100;
y=[0 2.41 2.96 2.15 2.65 3.12 4.23 5.12 6.21 5.68 4.22 3.91 3.26 2.85 2.35 3.02 3.63 4.12 3.46 2.08 0];
y1=8-y;
plot(x,y1,'k.','markersize',18);
axis([0 100 0 8]);
grid;
hold on;
t=0:100;
u=spline(x,y1,t);
plot(t,u);
s=100*8-trapz(t,u);
p=sqrt(diff(t).^2+diff(u).^2);
l=sum(p);
fprintf('s=%.2f,l=%.2f\n',s,l);
其中为啥要用diff函数?为啥要求导
高手帮忙啊
clf;clear;
x=0:5:100;
y=[0 2.41 2.96 2.15 2.65 3.12 4.23 5.12 6.21 5.68 4.22 3.91 3.26 2.85 2.35 3.02 3.63 4.12 3.46 2.08 0];
y1=8-y;
plot(x,y1,'k.','markersize',18);
axis([0 100 0 8]);
grid;
hold on;
t=0:100;
u=spline(x,y1,t);
plot(t,u);
s=100*8-trapz(t,u);
p=sqrt(diff(t).^2+diff(u).^2);
l=sum(p);
fprintf('s=%.2f,l=%.2f\n',s,l);
其中为啥要用diff函数?为啥要求导
高手帮忙啊
s是面积吧,因为用trapz进行了积分,800减去积分应该是曲线上部的面积.
l应该是曲线的弧长,用了勾股定理求每一小段的斜边(弧长),diff在这里不是微分,是差分,得到每一小段的长度.
l应该是曲线的弧长,用了勾股定理求每一小段的斜边(弧长),diff在这里不是微分,是差分,得到每一小段的长度.