2023年8月3日发(作者:)
多项式拟合曲线的方法一
Contents
多项式曲线拟合函数介绍
拟合某种磁性材料的磁化曲线(50Hz,0.5mm,D23)
多项式曲线拟合函数介绍
多项式曲线拟合函数:polyfit( ) 调用格式: p=polyfit(x,y,n) [p,s]= polyfit(x,y,n) 说明:x,y为数据点,n为多项式阶数,返回p为幂次从高到低的多项式系数向量p。矩阵s用于生成预测值的误差估计。
拟合某种磁性材料的磁化曲线(50Hz,0.5mm,D23)
clc;
clear;
%磁场强度
Hdata=[1.38, 1.40, 1.42, 1.44, 1.46, 1.48, 1.50, 1.52, 1.54, 1.56, ...
1.58, 1.60, 1.62, 1.64, 1.66, 1.69, 1.71, 1.74, 1.76, 1.78, ...
1.81, 1.84, 1.86, 1.89, 1.91, 1.94, 1.97, 2.00, 2.03, 2.06, ...
2.10, 2.13, 2.16, 2.20, 2.24, 2.28, 2.32, 2.36, 2.24, 2.45, ...
2.50, 2.55, 2.60, 2.65, 2.70, 2.76, 2.81, 2.87, 2.93, 2.99, ...
3.06, 3.13, 3.19, 3.26, 3.33, 3.41, 3.49, 3.57, 3.65, 3.74, ...
3.83, 3.92, 4.01, 4.11, 4.22, 4.33, 4.44, 4.56, 4.67, 4.80, ...
4.93, 5.07, 5.21, 5.36, 5.52, 5.68, 5.84, 6.00, 6.16, 6.33, ...
6.52, 6.72, 6.94, 7.16, 7.38, 7.62, 7.86, 8.10, 8.36, 8.62, ...
8.90, 9.20, 9.50, 9.80, 10.1, 10.5, 10.9, 11.3, 11.7, 12.1, ...
12.6, 13.1, 13.6, 14.2, 14.8, 15.5, 16.3, 17.1, 18.1, 19.1, ...
20.1, 21.2, 22.4, 23.7, 25.0, 26.7, 28.5, 30.4, 32.6, 35.1, ...
37.8, 40.7, 43.7, 46.8, 50.0, 53.4, 56.8, 60.4, 64.0, 67.8];
%磁感应强度
Bdata = 0.40:0.01:1.69;
% 阶数
n=6;
p=polyfit(Hdata,Bdata,n);
Bi=linspace(0,1,100);
z=polyval(p,Bi);%多项式求值
plot(Hdata,Bdata,'*',Bi,z,'k:',Hdata,Bdata,'b')
legend('原始数据','三阶曲线')%图例
xlabel('H[A//cm]')
ylabel('B[T]') 1.81.61.41.210.80.60.40.20
0原始数据六阶曲线
B[T]10203040H[A//cm]506070p =
-0.0000 0.0000 -0.0000 0.0014 -0.0303 0.3143 0.1298
多项式为:B=0.0014H^3 - 0.0303H^2+ 0.3143H+0.1298
Published with MATLAB® R2014a
2023年8月3日发(作者:)
多项式拟合曲线的方法一
Contents
多项式曲线拟合函数介绍
拟合某种磁性材料的磁化曲线(50Hz,0.5mm,D23)
多项式曲线拟合函数介绍
多项式曲线拟合函数:polyfit( ) 调用格式: p=polyfit(x,y,n) [p,s]= polyfit(x,y,n) 说明:x,y为数据点,n为多项式阶数,返回p为幂次从高到低的多项式系数向量p。矩阵s用于生成预测值的误差估计。
拟合某种磁性材料的磁化曲线(50Hz,0.5mm,D23)
clc;
clear;
%磁场强度
Hdata=[1.38, 1.40, 1.42, 1.44, 1.46, 1.48, 1.50, 1.52, 1.54, 1.56, ...
1.58, 1.60, 1.62, 1.64, 1.66, 1.69, 1.71, 1.74, 1.76, 1.78, ...
1.81, 1.84, 1.86, 1.89, 1.91, 1.94, 1.97, 2.00, 2.03, 2.06, ...
2.10, 2.13, 2.16, 2.20, 2.24, 2.28, 2.32, 2.36, 2.24, 2.45, ...
2.50, 2.55, 2.60, 2.65, 2.70, 2.76, 2.81, 2.87, 2.93, 2.99, ...
3.06, 3.13, 3.19, 3.26, 3.33, 3.41, 3.49, 3.57, 3.65, 3.74, ...
3.83, 3.92, 4.01, 4.11, 4.22, 4.33, 4.44, 4.56, 4.67, 4.80, ...
4.93, 5.07, 5.21, 5.36, 5.52, 5.68, 5.84, 6.00, 6.16, 6.33, ...
6.52, 6.72, 6.94, 7.16, 7.38, 7.62, 7.86, 8.10, 8.36, 8.62, ...
8.90, 9.20, 9.50, 9.80, 10.1, 10.5, 10.9, 11.3, 11.7, 12.1, ...
12.6, 13.1, 13.6, 14.2, 14.8, 15.5, 16.3, 17.1, 18.1, 19.1, ...
20.1, 21.2, 22.4, 23.7, 25.0, 26.7, 28.5, 30.4, 32.6, 35.1, ...
37.8, 40.7, 43.7, 46.8, 50.0, 53.4, 56.8, 60.4, 64.0, 67.8];
%磁感应强度
Bdata = 0.40:0.01:1.69;
% 阶数
n=6;
p=polyfit(Hdata,Bdata,n);
Bi=linspace(0,1,100);
z=polyval(p,Bi);%多项式求值
plot(Hdata,Bdata,'*',Bi,z,'k:',Hdata,Bdata,'b')
legend('原始数据','三阶曲线')%图例
xlabel('H[A//cm]')
ylabel('B[T]') 1.81.61.41.210.80.60.40.20
0原始数据六阶曲线
B[T]10203040H[A//cm]506070p =
-0.0000 0.0000 -0.0000 0.0014 -0.0303 0.3143 0.1298
多项式为:B=0.0014H^3 - 0.0303H^2+ 0.3143H+0.1298
Published with MATLAB® R2014a
发布评论