Operator '*' is not supported for operands of type 'struct'.
1 回表示 (過去 30 日間)
古いコメントを表示
I want execute my Phasorcode by calling values of my PV and DG set SImulation. Hence I have logged data and saved it as .mat file. In following code you can observe code load that file (let me also know if this is the correct way of using values through .mat file)
% %This program is for samples from ATP simulation
clear all;
f0=50; % System freq=50,
T0=.02; % Time period=0.02 sec=20 msec
ts=2E-5; % ATP time step= 2E-5, so 1000 samples per cycle
N=round(T0/ts); % samples per cycle.
%% Take current and voltage samples by .mat files from both ends of the line
If=load('out.mat');
Vf=load('out.mat');
Ir=load('out.mat');
Vr=load('out.mat');
Nt = length(If);
Ical =[If Ir Vf Vr]; %signal without noise
jj=1;
for jj=1:4
Ifor1c(jj,1)=(2/N)*Ical(1,jj);
Ifor1s(jj,1)=0;
Ifor1m(jj,1)=(2/N)*abs(Ical(1,jj));
end
jj=1;
for jj=1:4
for t= 2:Nt
if(t<=N)
Ifor1c(jj,t) =Ifor1c(jj,t-1)+(2/N)*Ical(t,jj)*cos((t-1)*2*pi/(N));
Ifor1s(jj,t)= Ifor1s(jj,t-1)+(2/N)*Ical(t,jj)*sin((t-1)*2*pi/(N));
else
Ifor1c(jj,t)=Ifor1c(jj,t-1)+(2/N)*(Ical(t,jj)-Ical(t-N,jj))*cos((t-(N+1))*2*pi/(N));
Ifor1s(jj,t)=Ifor1s(jj,t-1)+(2/N)*(Ical(t,jj)-Ical(t-N,jj))*sin((t-(N+1))*2*pi/(N));
end
%% magnitude and angle calculation at each sample
Ifor1m(jj,t)= sqrt(Ifor1c(jj,t)^2+Ifor1s(jj,t)^2);
phi_Ifor1(jj,t)= atan2(-Ifor1c(jj,t),Ifor1s(jj,t));
end
end
%% complex phasor at each sample
I_s = Ifor1c(1,:)-j*Ifor1s(1,:);
I_r=Ifor1c(2,:)-j*Ifor1s(2,:);
V_fa=Ifor1c(3,:)-j*Ifor1s(3,:);
V_ra=Ifor1c(4,:)-j*Ifor1s(4,:);
In 24th line- Ifor1c(jj,1)=(2/N)*Ical(1,jj);- it shows error Operator '*' is not supported for operands of type 'struct'.
0 件のコメント
回答 (1 件)
Rik
2021 年 6 月 1 日
You are using an output for the load function (which you should), but that means Matlab will load the data to a struct. I'm guessing you mean this instead:
S=load('out.mat');
[If,Vf,Ir,Vr]=deal(S.If,S.Vf,S.Ir,S.Vr);
0 件のコメント
参考
カテゴリ
Help Center および File Exchange で Sources についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!