which my mistake erro
1 次查看(过去 30 天)
显示 更早的评论
% TRANSFORMADOR MONOFASICO DE DOS DEVANADOS
%ARCHIVO: EFICIENCIA_I
Re=0.0276; %input('Resistencia equivalente por el lado de baja (Ohm) Re''=');
V2= 120; %('Voltaje a aplicar a la carga (V) V2=');
Pmag=180; %('Pérdidasmagneticas (W) Pmag=');
In= 1.125;%('Corriente Nominal (A)In=');
I2=0:2:1.2*In;
FP=[ 0.8 0 0.1 ];
for J=1:length(FP)
for I=1:length(I2)
Pel=I2(I).*I2(I)*Re;
Ef(I,J)=V2*I2(I).*FP(J)./(V2*I2(I).*FP(J)+Pmag+Pel)*100;
end
end
plot(I2,Ef,'-*')
title('Eficienciavs I2')
grid on
xlabel ('Corriente por el secundario (A)');
ylabel('Eficiencia (%)');
legend(' FP=0.8','FP=0.5','FP=0.1')
set(gca,'color',[1 1 0.7])
set(gca,'XGrid','on','YGrid','on')
[EfmaxIter]= max(Ef);
I2me=I2(Iter);
1 个评论
dpb
2022-5-12
...
[EfmaxIter]= max(Ef);
I2me=I2(Iter);
Well, there is no variable 'Iter' in sight here --- the only thing I see with "Iter" as part of a variable name is the previous returned max value of something called 'Ef' which is not likelyh to be what you want...but we don't know what you intend it to be...
回答(2 个)
Steven Lord
2022-5-13
I suspect that you want those last two lines to be:
[Efmax,Iter]= max(Ef);
I2me=I2(Iter);
in order to set I2me to the value of I2 in the same location that the maximum value is in Ef, instead of
[EfmaxIter]= max(Ef);
I2me=I2(Iter);
0 个评论
Miguel Amor Rodriguez Avelino
2022-5-12
3 个评论
dpb
2022-5-12
I don't know how we can explain your intent -- the problem is you used a variable named "Iter" in the line that threw the error but you didn't define it -- it doesn't exist which is what the error message is telling you.
But, we don't know what your intent was in writing that line of code; we didn't write it nor have you explained what you might be thinking it should do.
As far as plotting, it appears you created an array by three columns for Ef; maybe the intent was to iterate over those and plot one column at a time? Tthat may be so, and would seem to probably be the intent at some point, but it still doesn't give much of a hint of what that particular line is intended to do.
If you don't understand the intent, I'm guessing this is code you got from somebody/somewhere else and didn't write yourself? In that case, your best bet is to go to the source and ask them...
We're also somewhat hampered because you pasted images of incomplete code so we can't see what else is there nor can we do anything with it -- insert the full text of the code as text an use the CODE button to format it legibly for there to be any chance anybody can guess anything else. If it requires input data to run the function, then attach it also.
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Time Series Events 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!