📄 谱峰面积估计程序.m
字号:
%峰面积估计
y=[0.518, 0.586, 0.682, 0.824, 0.999, 1.170, 1.370, 1.520, 1.650, 1.670,1.660, 1.550, 1.380, 1.180, 0.988, 0.814, 0.670, 0.572, 0.509, 0.479,0.479, 0.516, 0.553, 0.501, 0.323, 0.163, 0.063, 0.021];
n=28;
%梯形法计算面积
s1 = (y(1) + y(n)) / 2;
s2 = 0;
for i = 2:n - 1
s2 = s2 + y(i);
end
st = s1 + s2;
disp(strcat('梯形法面积为:',num2str(st))) %strcat为字符组合函数,num2str为数值转换成字符函数,disp为字符输出函数
%辛普森法计算面积
if mod(n,2) == 0 %mod为求余函数
s1 = y(1) + y(n - 3);
s2 = 0;
for i = 2: 2:n - 4 %i后面的三个数值分别为:初值,步长,终值
s2 = s2 + y(i);
end
s2 = s2 * 4;
s3 = 0;
for i = 3:2:n - 5
s3 = s3 + y(i);
end
s3 = s3 * 2;
s4 = (y(n - 3) + 3 * (y(n - 2) + y(n - 1)) + y(n)) * 3 / 8;
sf = (s1 + s2 + s3) / 3 + s4;
else
s1 = y(1) + y(n);
s2 = 0;
for i = 2:2:n - 1
s2 = s2 + y(i);
end
s2 = s2 * 4;
s3 = 0;
for i = 3:2:n - 2
s3 = s3 + y(i);
end
s3 = s3 * 2;
sf = s1 + s2 + s3;
sf = s / 3;
end
disp(strcat('辛普森法面积为:',num2str(sf)))
plot(y,'.-r')
gtext(strcat('梯形法面积为:',num2str(st))) %gtext函数在图形上交互输出文本
gtext(strcat('辛普森法面积为:',num2str(sf)))
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -