How plot graph with loop over existing graph on new figure

clc;
clear all;
K = 1.38065*10^-23; %Boltzmann constant
q = 1.602 *10^-19; %charge of electron
Iscn = 8.21; %Nominal SC current
Vocn = 34.9; %Nominal OC voltage
Kv = -0.123; %Temperature voltage constant
Ki = 0.0032; %Temperature current constant
Ns = 54; %no. of series connected cells
T = 25+273; %operating temperature
Tn = 25+273; %nominal temperature
Gn = 1000; %Nominal Irradiance
a = 1.3; %diode ideality constant
Eg = 1.12; %Band gap of silicon at 25 degree Celsius
G = 1000; %Actual Irradiance
Rs = 0.221; Rp = 415.405;
for n=0:5
G = G+100;
Vth = Ns*(K*Tn/q);
Ion = Iscn/((exp(Vocn/(a*Vth)))-1);
Io = Ion*((Tn/T)^3)*exp(((q*Eg/(a*K))*((1/Tn)-(1/T))));
Ipvn = Iscn;
Ipv = (Ipvn + Ki*(T-Tn))*(G/Gn);
Vt = Ns*(K*T/q);
I = zeros (330,1); i = 1; I(1,1)=0;
for V=0:0.1:34.9
I_part = Io*(exp((V+(I(i,1)*Rs))/(Vt*a))-1) + ((V+(Rs*I(i,1)))/Rp);
I(i+1) = Ipv - I_part;
V1(i)=V;
P(i)= V*I(i);
i=i+1;
end V1(i)=V1(i-1);
P(i) = P(i-1);
V1=transpose(V1);
hold on xlabel('output voltage'); ylabel('output power');
plot(V1,P,"linewidth",3);
end
hold off

4 commentaires

you mean on 6 different figures
KALYAN ACHARJYA
KALYAN ACHARJYA le 8 Mai 2020
Modifié(e) : KALYAN ACHARJYA le 8 Mai 2020
Why have you removed the previous question where Walter sir commented on it. I have answered this question, so that you do not allow do so. Please always follow the original question, when anyone commented or answered the question, they spent a few minutes of their time reading your question. You can edit the question if necessary.
Something like this
Yess , how you did , guide please

Connectez-vous pour commenter.

Réponses (1)

KALYAN ACHARJYA
KALYAN ACHARJYA le 8 Mai 2020
Modifié(e) : KALYAN ACHARJYA le 8 Mai 2020
K = 1.38065*10^-23; %Boltzmann constant
q = 1.602 *10^-19; %charge of electron
Iscn = 8.21; %Nominal SC current
Vocn = 34.9; %Nominal OC voltage
Kv = -0.123; %Temperature voltage constant
Ki = 0.0032; %Temperature current constant
Ns = 54; %no. of series connected cells
T = 25+273; %operating temperature
Tn = 25+273; %nominal temperature
Gn = 1000; %Nominal Irradiance
a = 1.3; %diode ideality constant
Eg = 1.12; %Band gap of silicon at 25 degree Celsius
Gvalue =1000; %Actual Irradiance
Rs = 0.221;
Rp = 415.405;
G=0;
for n=0:4
G = G +100;
Vth = Ns*(K*Tn/q);
Ion = Iscn/((exp(Vocn/(a*Vth)))-1);
Io = Ion*((Tn/T)^3)*exp(((q*Eg/(a*K))*((1/Tn)-(1/T))));
Ipvn = Iscn;
Ipv = (Ipvn + Ki*(T-Tn))*(G/Gn);
Vt = Ns*(K*T/q);
I = zeros (330,1); i = 1; I(1,1)=0;
for V=0:0.1:34.9
I_part = Io*(exp((V+(I(i,1)*Rs))/(Vt*a))-1) + ((V+(Rs*I(i,1)))/Rp);
I(i+1) = Ipv - I_part;
V1(i)=V; P(i)= V*I(i); i=i+1;
end
V1(i)=V1(i-1);
P(i) = P(i-1);
V1=transpose(V1);
xlabel('output voltage');
ylabel('output power');
plot(V1,P,'linewidth',3);
hold on
grid on;
end
If you are looking for different figure, then
K = 1.38065*10^-23; %Boltzmann constant
q = 1.602 *10^-19; %charge of electron
Iscn = 8.21; %Nominal SC current
Vocn = 34.9; %Nominal OC voltage
Kv = -0.123; %Temperature voltage constant
Ki = 0.0032; %Temperature current constant
Ns = 54; %no. of series connected cells
T = 25+273; %operating temperature
Tn = 25+273; %nominal temperature
Gn = 1000; %Nominal Irradiance
a = 1.3; %diode ideality constant
Eg = 1.12; %Band gap of silicon at 25 degree Celsius
Gvalue =1000; %Actual Irradiance
Rs = 0.221;
Rp = 415.405;
G=0;
for n=0:4
G = G +100;
Vth = Ns*(K*Tn/q);
Ion = Iscn/((exp(Vocn/(a*Vth)))-1);
Io = Ion*((Tn/T)^3)*exp(((q*Eg/(a*K))*((1/Tn)-(1/T))));
Ipvn = Iscn;
Ipv = (Ipvn + Ki*(T-Tn))*(G/Gn);
Vt = Ns*(K*T/q);
I = zeros (330,1); i = 1; I(1,1)=0;
for V=0:0.1:34.9
I_part = Io*(exp((V+(I(i,1)*Rs))/(Vt*a))-1) + ((V+(Rs*I(i,1)))/Rp);
I(i+1) = Ipv - I_part;
V1(i)=V; P(i)= V*I(i); i=i+1;
end
V1(i)=V1(i-1);
P(i) = P(i-1);
V1=transpose(V1);
figure, plot(V1,P,'linewidth',3);
grid on;
xlabel('output voltage');
ylabel('output power');
end

5 commentaires

Vinay Sharma
Vinay Sharma le 8 Mai 2020
Modifié(e) : Vinay Sharma le 8 Mai 2020
I to merge previous graph on new one on new figure, something like that
What you exactly want?
All plots in the same figure window.
or
2 plots in 1 window figure window
and later three plots in another figure window
or
Individuals figure window.
Mehmed Saad
Mehmed Saad le 8 Mai 2020
Modifié(e) : Mehmed Saad le 8 Mai 2020
@Kalyan Acharjya sir please guide him to write code in subplots using copyobj.
Vinay Sharma
Vinay Sharma le 8 Mai 2020
Modifié(e) : Vinay Sharma le 8 Mai 2020

Thank you sir , My problem is solved I used "hold on" after the "plot" then i use saveas command to save each plot

H=figure()

For ....

....

Plot(...)

Hold on

Saveas(h,sprintf("fig%d.png",n));

End

hi can i ask question. why i have error using plot must be same lenght if i change the value Vocn. please someone help me.thankyou
clc;
clear all;
K = 1.38065e-23; %Boltman Constants
q = 1.602e-19; %charge of electron
Iscn = 1.80; %Nominal SC current
Vocn = 21.6; %Nominal OC Voltage
Kv = -0.123; %Temperature voltage constant
Ki = 0.0032; %Temperature Current constant
Ns = 36; %n0. of serries connected cells
T = 29+273; %operating temperature
Tn = 25+273; %Nominal temperature
Gn = 1000; %Nominal irrandiace
a = 1.3; %diode ideality constant
Eg = 1.12; %ban gap of silicon at 25 degree celcius
G = 1000; %actual irradiation
Rs = 0.221;
Rp = 415.405;
Vtn = Ns*(K*Tn/q);
Ion = Iscn/ ((exp(Vocn/(a*Vtn)))-1)
Io = Ion*((Tn/T)^3)*exp(((q*Eg/(a*K))*((1/Tn)-(1/T))));
Ipvn = Iscn;
Ipv = (Ipvn + Ki*(T-Tn))*(G/Gn)
Vt = Ns*(K*T/q);
I = zeros(330,1);
i=1;
I(1,1)=0;
for V=21.6:-0.1:0
I_part = Io*(exp((V+(I(i,1)*Rs))/(Vt*a))-1) + ((V+(Rs*I(i,1)))/Rp);
I(i+1) = Ipv - I_part;
V1(i)=V;
P(i)=V*I(i);
i=i+1;
end
V1(i)=V1(i-1);
P(i) = P(i-1);
V1=transpose(V1);
% subplot(3,1,1)
plot(V1,I);
%subplot(3,1,2)
xlabel("Voltage")
ylabel("Current")
%plot(V1,P);
%subplot(3,1,3)
%plot (V1,I_part);

Connectez-vous pour commenter.

Catégories

En savoir plus sur Specialized Power Systems dans Centre d'aide et File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by