Ybus 구성후 실행시 오류가 납니다. 오류명은 '입력인수가 부족합니다.' 입니다.

8 views (last 30 days)
Juhwan Ham
Juhwan Ham on 15 Nov 2019
Answered: Angelo Yeo on 23 Jun 2024
Ybus 메트릭스를 구성중인데 입력인수가 부족하다고 합니다. 아무리 해봐도 모르겠어서 글을올립니다
function[Y]=ybus1(zdata)
nl=zdata(:,1); nt=zdata(:,2); R=zdata(:,3); X=zdata(:,4);
nbr=length(zdata(:,1)); nbus=max(max(nl),max(nr));
Z=R+j*X %branch impedance
y=ones(nbr,1)./Z; %branch admittance
Y=zeros(nbus,nbus); %initialize Y to zero
for k=1:nbr; %formation of th off daiagonal elements
if nl(k)>0&nr(k)>0
Y(nl(k),nr(k))=Y(nl(k),nr(k))-y(k);
Y(nr(k),nl(k))=Y(nl(k),nr(k));
end
end
for n=1:nbus %formation of th off daiagonal elements
for k=1:nbr
if nl(k)==n|nr(k)==n
Y(n,n)=Y(n,n)+y(k);
else, end
end
end
위 함수들은 Ybus를 구성하는 함수입니다. 파일명은 ybus1
% From To R X
z=[ 0 1 0 1
0 2 0 0.8
1 2 0 0.4
1 3 0 0.2
2 3 0 0.2
3 4 0 0.08];
Y=ybus1(z) %bus admittance matrix
Ibus=[-j*1.1; -j*1.25; 0; 0]; %vector of bus currents
Zbus=inv(Y) %bus impedance matrix
Vbus=Zbus*Ibus
제가 만들려고하는 Ybus의 데이터입니다. 파일명은 ybus6_1
실행시
입력인수가 부족합니다.
오류 발생 :ybus1 (line2)
nl=zdata(:,1); nt=zdata(:,2); R=zdata(:,3); X=zdata(:,4);
무엇이 문제인지 알려주세요

Answers (1)

Angelo Yeo
Angelo Yeo on 23 Jun 2024
올려주신 코드를 돌려보았을 때 함수 안에 있는 "nr"이 무엇인지 알 수 없어 말씀하신 에러를 재현할 수 없습니다. 도움을 받기 위해서는 말씀하신 입력 인수 부족에 관한 에러를 재현할 수 있도록 해주셔야 할 것 같습니다.
function[Y]=ybus1(zdata)
nl=zdata(:,1); nt=zdata(:,2); R=zdata(:,3); X=zdata(:,4);
nbr=length(zdata(:,1)); nbus=max(max(nl),max(nr));
Z=R+j*X %branch impedance
y=ones(nbr,1)./Z; %branch admittance
Y=zeros(nbus,nbus); %initialize Y to zero
for k=1:nbr; %formation of th off daiagonal elements
if nl(k)>0&nr(k)>0
Y(nl(k),nr(k))=Y(nl(k),nr(k))-y(k);
Y(nr(k),nl(k))=Y(nl(k),nr(k));
end
end
for n=1:nbus %formation of th off daiagonal elements
for k=1:nbr
if nl(k)==n|nr(k)==n
Y(n,n)=Y(n,n)+y(k);
else, end
end
end
end
% From To R X
z=[ 0 1 0 1
0 2 0 0.8
1 2 0 0.4
1 3 0 0.2
2 3 0 0.2
3 4 0 0.08];
Y=ybus1(z) %bus admittance matrix
Unrecognized function or variable 'nr'.

Error in solution>ybus1 (line 3)
nbr=length(zdata(:,1)); nbus=max(max(nl),max(nr));
Ibus=[-j*1.1; -j*1.25; 0; 0]; %vector of bus currents
Zbus=inv(Y) %bus impedance matrix
Vbus=Zbus*Ibus

Categories

Find more on 모델링 in Help Center and File Exchange

Products

Community Treasure Hunt

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

Start Hunting!