C#真比matlab差太远了吧

就这段matlab,用C#写起码要五倍的代码量吧?

R_ice=zeros(size(Branch,1),t);

LI=zeros(size(Branch,1),t);

for i=1:size(Branch,1)

for j=1:t

if YX_z(i,j)~=0

R_ice(i,j)=R_ice(i,(j-1))+0.25*sqrt(DY^2+((3.6*v_w(i,j)*0.067*DY^0.846))^2)/(0.9*3.1415926);

R_ice(i,j:t)=R_ice(i,j);

LI(i,j)=0.0098*0.9*pi*(D+R_ice(i,j))*R_ice(i,j);

LW(i,j)=6.964*0.001*(v_w(i,j)^2)*(D+2*R_ice(i,j));

LWI(i,j)=sqrt(LI(i,j)^2+LW(i,j)^2);

if LWI(i,j)<15

P(i,j)=0;

else if LWI(i,j)<=75

P(i,j)=exp((0.6931*(LWI(i,j)-15))/(75-15))-1;

else

P(i,j)=1;

end

end

else

P(i,j)=0;

end

end

end

for i=1:size(Branch,1)

for j=1:t

P_z(i,j)=1-(1-P(i,j))^YX_z(i,j);

end

end

a_pole=0.01;

b_pole=0.8;

a_plot=zeros(size(Branch,1),t);

for i=1:size(Branch,1)

for j=1:t

if LI(i,j)~=0

a_plot(i,j)=LI(i,j)*((l_1+l_2)/2+(F11*h_1/(LI(i,j)*l_1))+(F12*h_2/(LI(i,j)*l_2)));

end

end

end

for i=1:size(Branch,1)

for j=1:t

P_ganta(i,j)=a_pole*exp(a_plot(i,j)/(b_pole*M_pole));

end

end

nita=[0.05,0.1,0.15,0.2];

T0=32806;

l=500;

n=3;

g=9.8;

seita=pi/18;

seita0=pi/6;

S=23746;

f=zeros(size(Branch,1),t);

Z=zeros(size(Branch,1),t);

for i=1:size(Branch,1)

for j=1:t

if LI(i,j)~=0

f(i,j)=(1/(2*l))*sqrt(T0/LI(i,j));

Z(i,j)=nita(1)*v_w(i,j)*sind(beta(i))/(f(i,j)*2);

end

end

end

for i=1:size(Branch,1)

for j=1:t

if Z(i,j)>=5.5

pwd(i,j)=1;

elseif Z(i,j)>3

pwd(i,j)=(Z(i,j)-3)/(5.5-3);

else

pwd(i,j)=0;

end

end

end

for j=1:1:t

for i=1:size(Branch,1)

p_zong(i,j)=1-(1-pwd(i,j))*(1-P_ganta(i,j))*(1-P_z(i,j));

end

end