# How to plot two calculated values in for loop ?

6 views (last 30 days)
Bora K on 31 Oct 2019
Commented: Bora K on 31 Oct 2019
Hello,
I have a problem with plotting the values that I found inside the 'for loop'. I want to plot v_corr and v, but when I run this v gets 180 same values inside the matrix? Could you help me to solve it?
clc
clear
M = 0:1.001:180;
e = 0:0.00557:1;
v = zeros(length(M),length(e));
for i = 1:length(M)
for j = 1:length(e)
E = atand((sind(M))/(cosd(M)-e));
v(i,j) = 2.*(atand(tand(M/2).*(1+e)/(1-e)));
v_corr(i,j) = 2.*(atand(sqrt((1+e)/(1-e)).*(tand(E/2))));
end
end
darova on 31 Oct 2019
YOu forgot indexes
M(i) e(j)

Bhaskar R on 31 Oct 2019
Hi Bora KAMACI , What is the need of the for loops over here?
We can notice in your code that you used Solve systems of linear equations(/ symbol) but I assume ./ is the actual division operation as
clc
clear
M = 0:1.001:180;
e = 0:0.00557:1;
%v = zeros(length(M),length(e));
% changed division operation insted of / operator
E = atand((sind(M))./(cosd(M)-e));
v = 2.*(atand(tand(M/2).*(1+e)./(1-e)));
v_corr = 2.*(atand(sqrt((1+e)./(1-e)).*(tand(E/2))));
figure, plot(v), title('v')
figure, plot(v_corr), title('v\_corr')
Hope helps you
Bora K on 31 Oct 2019
Thanks a lot, it worked!!