我是靠谱客的博主 开放芒果,最近开发中收集的这篇文章主要介绍给定一组相关对应的数值,通过for循环使用MATLAB利用一次函数计算出中间的其他数值大小,觉得挺不错的,现在分享给大家,希望可以做个参考。
概述
%% 线性插值:由已知数据点连成一条折线,认为相临两个数据点之间的函数值就在这两点之间的连线上。
% mmfr Ia Im F
% 2.6 1.575 0.49 13.6764
% 2.23 1.6 0.41 12.8904
% 1.96 1.35 0.37 10.1132
% 1.42 1.08 0.33 8.0172
% 1.18 1.01 0.28 6.9692
% 0.95 0.957 0.23 5.8688
% 0.71 0.8 0.23 4.7684
% 0.47 0.693 0.215 3.7728%%把F看成自变量,其他mmfr、Ia看成因变量。计算出有小到大按照0.001连续间隔的结果。
%% 线性插值:由已知数据点连成一条折线,认为相临两个数据点之间的函数值就在这两点之间的连线上。
%% 2019年07月21日
% mmfr Ia Im F
% 2.6 1.575 0.49 13.6764
% 2.23 1.6 0.41 12.8904
% 1.96 1.35 0.37 10.1132
% 1.42 1.08 0.33 8.0172
% 1.18 1.01 0.28 6.9692
% 0.95 0.957 0.23 5.8688
% 0.71 0.8 0.23 4.7684
% 0.47 0.693 0.215 3.7728
%%代入数值
mmfr_1 =0.47;mmfr_2 = 0.71;mmfr_3 = 0.95;mmfr_4 = 1.18;mmfr_5 =1.42;mmfr_6 =1.96;mmfr_7 =2.23;mmfr_8 = 2.6;
F_1 =3.7728;F_2 = 4.7684;F_3 =5.8688;F_4=6.9692; F_5 = 8.0172; F_6=10.1132;F_7=12.8904; F_8 = 13.6764;
Ia_1=0.693;Ia_2=0.8;Ia_3=0.957;Ia_4=1.01;Ia_5=1.08;Ia_6=1.35;Ia_7=1.6;Ia_8=1.575;
s=0.001; %自变量的步进间隔
clc
%%
%%1_2
delta_F_21 = F_2-F_1;
delta_mmfr_21 = mmfr_2-mmfr_1;
delta_Ia_21 = Ia_2-Ia_1;
%% 调用循环计算线性均匀变化的主流率和阳极电流
for i = 1:(F_2-F_1)/s
F(i) = F_1+ +s*i;
mmfr(i) = mmfr_1+s*i*delta_mmfr_21/delta_F_21;
Ia(i) = Ia_1+s*i*delta_Ia_21/delta_F_21;
end
F_1_2=F';
mmfr_1_2=mmfr';
Ia_1_2=Ia';
%%
%%2_3
delta_F_32 = F_3-F_2;
delta_mmfr_32 = mmfr_3-mmfr_2;
delta_Ia_32 = Ia_3-Ia_2;
%% 调用循环计算线性均匀变化的主流率和阳极电流
for i = 1:(F_3-F_2)/s
F(i) = F_2+ +s*i;
mmfr(i) = mmfr_2+s*i*delta_mmfr_32/delta_F_32;
Ia(i) = Ia_2+s*i*delta_Ia_32/delta_F_32;
end
%%
F_2_3=F';
mmfr_2_3=mmfr';
Ia_2_3=Ia';
%%3_4
delta_F_43 = F_4-F_3;
delta_mmfr_43 = mmfr_4-mmfr_3;
delta_Ia_43 = Ia_4-Ia_3;
%% 调用循环计算线性均匀变化的主流率和阳极电流
for i = 1:(F_4-F_3)/s
F(i) = F_3+ +s*i;
mmfr(i) = mmfr_3+s*i*delta_mmfr_43/delta_F_43;
Ia(i) = Ia_3+s*i*delta_Ia_43/delta_F_43;
end
%%
F_3_4=F';
mmfr_3_4=mmfr';
Ia_3_4=Ia';
%%
%%4_5
delta_F_54 = F_5-F_4;
delta_mmfr_54 = mmfr_5-mmfr_4;
delta_Ia_54 = Ia_5-Ia_4;
%% 调用循环计算线性均匀变化的主流率和阳极电流
for i = 1:(F_5-F_4)/s
F(i) = F_4+ +s*i;
mmfr(i) = mmfr_4+s*i*delta_mmfr_54/delta_F_54;
Ia(i) = Ia_4+s*i*delta_Ia_54/delta_F_54;
end
%%
F_4_5=F';
mmfr_4_5=mmfr';
Ia_4_5=Ia';
%%
%%5_6
delta_F_65 = F_6-F_5;
delta_mmfr_65 = mmfr_6-mmfr_5;
delta_Ia_65 = Ia_6-Ia_5;
%% 调用循环计算线性均匀变化的主流率和阳极电流
for i = 1:(F_6-F_5)/s
F(i) = F_5+ +s*i;
mmfr(i) = mmfr_5+s*i*delta_mmfr_65/delta_F_65;
Ia(i) = Ia_5+s*i*delta_Ia_65/delta_F_65;
end
%%
F_5_6=F';
mmfr_5_6=mmfr';
Ia_5_6=Ia';
%%
%%6_7
delta_F_76 = F_7-F_6;
delta_mmfr_76 = mmfr_7-mmfr_6;
delta_Ia_76 = Ia_7-Ia_6;
%% 调用循环计算线性均匀变化的主流率和阳极电流
for i = 1:(F_7-F_6)/s
F(i) = F_6+ +s*i;
mmfr(i) = mmfr_6+s*i*delta_mmfr_76/delta_F_76;
Ia(i) = Ia_6+s*i*delta_Ia_76/delta_F_76;
end
%%
F_6_7=F';
mmfr_6_7=mmfr';
Ia_6_7=Ia';
%%
%%7_8
delta_F_87 = F_8-F_7;
delta_mmfr_87 = mmfr_8-mmfr_7;
delta_Ia_87 = Ia_8-Ia_7;
%% 调用循环计算线性均匀变化的主流率和阳极电流
for i = 1:(F_8-F_7)/s
F(i) = F_7+ +s*i;
mmfr(i) = mmfr_7+s*i*delta_mmfr_87/delta_F_87;
Ia(i) = Ia_7+s*i*delta_Ia_87/delta_F_87;
end
%%
F_7_8=F';
mmfr_7_8=mmfr';
Ia_7_8=Ia';
%%
%%把各段拼接起来
FF = [F_1_2;F_2_3;F_3_4;F_4_5;F_5_6;F_6_7;F_7_8];
mmfrmmfr = [mmfr_1_2;mmfr_2_3;mmfr_3_4;mmfr_4_5;mmfr_5_6;mmfr_6_7;mmfr_7_8];
IaIa = [Ia_1_2;Ia_2_3;Ia_3_4;Ia_4_5;Ia_5_6;Ia_6_7;Ia_7_8];
%%检验FF按照0.001间隔变化是否unique,返回值依据原来的排列顺序取后面次数出现的索引号。
[G H] =unique(FF,'last');
%%合并表导出
for j = 1:length(H)
mmfrmmfr_H(j) = mmfrmmfr(H(j))';
IaIa_H(j) = IaIa(H(j))';
end
mmfrmmfr_H=mmfrmmfr_H';
IaIa_H=IaIa_H';
BestSchedule_2=[G mmfrmmfr_H];
BestfDemandToIa_2=[G IaIa_H];
最后
以上就是开放芒果为你收集整理的给定一组相关对应的数值,通过for循环使用MATLAB利用一次函数计算出中间的其他数值大小的全部内容,希望文章能够帮你解决给定一组相关对应的数值,通过for循环使用MATLAB利用一次函数计算出中间的其他数值大小所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复