matlab 迭代时保存每次迭代数据,Matlab 迭代步数据保存问题.

本文介绍了一个涉及多个变量和复杂计算的数学模型。程序首先定义了变量和边界条件,然后通过一系列迭代计算,包括速度、面积、力和能量等参数的计算,最终得出关键指标如BZ、delta、qD和t。此外,代码还涉及到数据的加载、保存以及一些特定函数的运用。
摘要由CSDN通过智能技术生成

该楼层疑似违规已被系统折叠 隐藏此楼查看此楼

function fitness = D1(sol)

fitness = zeros(2,1);

load Input;

r(1:bounds6) = sol(1:bounds6);

y(1:bounds6) = sol(bounds6+1:2*bounds6);

z(1:bounds6) = sol(2*bounds6+1:3*bounds6);

e(1:bounds6)= sol(3*bounds6+1:4*bounds6);

m=7.8;

c=0.45;

D1=data2;

D0=data1;

f=data3;

y=round(y);

z=floor(z);

e=floor(e);

x(1)=D0*sqrt(1-r(1));

for i=2:bounds6

if i==1

x(1)=D0*sqrt(1-r(1));

else

x(i)=x(i-1)*sqrt(1-r(i));

end

end

for i=1:bounds6

if x(i)<=D1

x(i)=D1;

end

end

if x(bounds6)>D1

T=10000;

E=10e+8;

else

v1=data4/60;

v0(bounds6)=v1*(D1.^2)/(x(bounds6).^2);

for i=bounds6-1:-1:1

v0(i)=v0(i+1)*(x(i+1).^2)/(x(i).^2);

end

for i=1:bounds6

s(i)=(s1(i)+s2(i-1))/2;

B=f/tan(y(i)/360*pi);

l(i)=s(i)*((1+1/B)*(1-(x(i)/x(i-1))^(2*B))+4/3/sqrt(3)*tan(y(i)/360*pi))+q(i-1)*((x(i)/x(i-1))^(2*B))+0.1*f*ld(i)*s(i);

q(i)=l(i)*exp(-0.2*pi*h(i));

w1(i)=(pi*x(i-1).^2/4-pi*x(i).^2/4)*s(i)*v0(i);

w2(i)=0.77*s(i)*pi*(x(i).^2)/4*v0(i)*(tan(y(i)/360*pi));

w3(i)=s(i)*(pi*x(i-1).^2/4-pi*x(i).^2/4)/sin(y(i)/360*pi)*f*v0(i)+0.1*f*ld(i)*s(i)*v0(i)*pi*x(i).^2/4;

delta(i)=y(i)/360*pi*(x(i-1)+x(i))/(x(i-1)-x(i));

C(i)=(x(i-1)^(2*B+1)-x(i)^(2*B+1))/(x(i-1)-x(i))/(x(i-1)^(2*B))/(2*B+1);

qm(i)=s(i)*((1+1/B)*C(i)-1/B)-q(i-1)*C(i);

qD(i)=qm(i)*v0(i);

w(i)=(l(i)-q(i-1))*pi*(x(i)^2)/4*v0(i);

BZ(i)=l(i)/s(i);

t(i)=(0.55*w1(i)+0.55*w2(i)+0.6*w3(i))/m/c/v0(i)/(pi*(x(i)^2)/4);

t(i)=t(i)+45;

end

end

savefile='test.mat';

save(savefile, 'BZ','delta','qD','t','w' )

这个是我的程序,一部分下面 你说的要加在什么地方呢?

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值