Using a loop in a loop Help pls..

2 Ansichten (letzte 30 Tage)
Ernest Yim
Ernest Yim am 8 Dez. 2015
Bearbeitet: John BG am 13 Feb. 2016
Help... please a question about using loop inside a loop.
I got a loop which is
N=100;
i=1;
for x=0:c/N:c
if x>=(P*c)
dzdx(:,i)=(M*c/(1-P)^2)*(2*P/c-2*x/c^2);
else
dzdx(:,i)=(M*c/P^2)*(2*P/c-2*x/c^2);
end
i=i+1;
end
x=[0:c/N:c];
%%Using vortex_lattice to get gamma and xj
[gamma, xj] = vortex_lattice(dzdx, x, alpha, vinf, rhoinf, c);)
which i want to find gamma and , xj
I am sure the above code is correct , can i know how should i type if i want this loop run when N=[20:20:640]
following up from the gamma and xj
gamma_total=sum(gamma);
gamma_big=vinf*gamma_total;
% Finding Lift
L=rhoinf*vinf*gamma_big;
% Finding Coefficient of lift
C_lN(n)=L/(0.5*rhoinf*c*vinf^2);
How am I suppose to get 6 different C_lN when N[20,40,80,160,320,640]??

Antworten (1)

John BG
John BG am 8 Dez. 2015
Bearbeitet: John BG am 13 Feb. 2016
c=3e8;M=5;P=10 % since you did not define them I gave P and M these values
N=[20:20:640]
gamma_array=[]
xj_array=[]
big_dzdx=zeros(101,32) % 32 out of the 640/20 you want N to sweep through
for j=1:1:numel(N)
i=1;
for x=0:c/N:c
if x>=(P*c)
dzdx(:,i)=(M*c/(1-P)^2)*(2*P/c-2*x/c^2);
else
dzdx(:,i)=(M*c/P^2)*(2*P/c-2*x/c^2);
end
i=i+1;
end
x=[0:c/N:c];
big_dzdx(:,j)=dzdx
%%Using vortex_lattice to get gamma and xj
[gamma, xj] = vortex_lattice(dzdx, x, alpha, vinf, rhoinf, c);)
gamma_array(:,j)=[gamma_array; gamma]
xj_array=[xj_array; xj]
end

Kategorien

Mehr zu Loops and Conditional Statements finden Sie in Help Center und File Exchange

Produkte

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by