i get this error "attempting to load ybus script as a function"

조회 수: 10 (최근 30일)
Adegoke Williams
Adegoke Williams 2022년 9월 28일
댓글: Adegoke Williams 2022년 9월 29일
i have added the ybus.m in the command window byt when i try to run the fuction it gives an error message "attempting to load script as a function"
  댓글 수: 2
Geoff Hayes
Geoff Hayes 2022년 9월 29일
@Adegoke Williams - are you referring to the code from the File Exchange found here? Please clarify what you mean by "added the ybus.m in the command window" and show how you are "running the function". Also, please copy and paste the full error message to this post.
Adegoke Williams
Adegoke Williams 2022년 9월 29일
Thanks Geoff, its Exactly that file, i actually trried so many files but got the sa error message. I used the addpath ybus on the command window to add the path to the directory. I tried to run the ybus(z) found in the Power Systems Analysis Textbook , Saadat . When i try to run the ybus(z) either on command window oR LiVESCRIPT, i get the error "Attempt to load ybus script as a function.
>> z = [0, 1, 0, 1.0; 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 = ybus(z)
z =
0 1.0000 0 1.0000
0 2.0000 0 0.8000
1.0000 2.0000 0 0.4000
1.0000 3.0000 0 0.2000
2.0000 3.0000 0 0.2000
3.0000 4.0000 0 0.0800
Cannot find an exact (case-sensitive) match for 'ybus'
The closest match is: Ybus in C:\Program Files\Polyspace\R2020a\bin\ybus\Ybus.
Did you mean:
>> Y = Ybus(z)
Attempt to execute SCRIPT Ybus as a function:
C:\Program Files\Polyspace\R2020a\bin\ybus\Ybus.m

댓글을 달려면 로그인하십시오.

채택된 답변

David Hill
David Hill 2022년 9월 29일
Not sure what you are doing, but works fine for me.
z = [0, 1, 0, 1.0; 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=Ybus(z)
y =
0.0000 - 8.5000i 0.0000 + 2.5000i 0.0000 + 5.0000i 0.0000 + 0.0000i 0.0000 + 2.5000i 0.0000 - 8.7500i 0.0000 + 5.0000i 0.0000 + 0.0000i 0.0000 + 5.0000i 0.0000 + 5.0000i 0.0000 -22.5000i 0.0000 +12.5000i 0.0000 + 0.0000i 0.0000 + 0.0000i 0.0000 +12.5000i 0.0000 -12.5000i
function[Ybus] = Ybus(zdata)
nl=zdata(:,1); nr=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
Ybus=zeros(nbus,nbus); % initialize Ybus to zero
for k = 1:nbr; % formation of the off diagonal elements
if nl(k) > 0 & nr(k) > 0
Ybus(nl(k),nr(k)) = Ybus(nl(k),nr(k)) - y(k);
Ybus(nr(k),nl(k)) = Ybus(nl(k),nr(k));
end
end
for n = 1:nbus % formation of the diagonal elements
for k = 1:nbr
if nl(k) == n | nr(k) == n
Ybus(n,n) = Ybus(n,n) + y(k);
else, end
end
end
end
  댓글 수: 5
David Hill
David Hill 2022년 9월 29일
What is the problem, the below executes just fine.
zdata = [0, 1, 0, 1.0; 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]
zdata = 6×4
0 1.0000 0 1.0000 0 2.0000 0 0.8000 1.0000 2.0000 0 0.4000 1.0000 3.0000 0 0.2000 2.0000 3.0000 0 0.2000 3.0000 4.0000 0 0.0800
y=Ybus(zdata)
y =
0.0000 - 8.5000i 0.0000 + 2.5000i 0.0000 + 5.0000i 0.0000 + 0.0000i 0.0000 + 2.5000i 0.0000 - 8.7500i 0.0000 + 5.0000i 0.0000 + 0.0000i 0.0000 + 5.0000i 0.0000 + 5.0000i 0.0000 -22.5000i 0.0000 +12.5000i 0.0000 + 0.0000i 0.0000 + 0.0000i 0.0000 +12.5000i 0.0000 -12.5000i
function[Ybus] = Ybus(zdata)
nl=zdata(:,1); nr=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
Ybus=zeros(nbus,nbus); % initialize Ybus to zero
for k = 1:nbr; % formation of the off diagonal elements
if nl(k) > 0 & nr(k) > 0
Ybus(nl(k),nr(k)) = Ybus(nl(k),nr(k)) - y(k);
Ybus(nr(k),nl(k)) = Ybus(nl(k),nr(k));
end
end
for n = 1:nbus % formation of the diagonal elements
for k = 1:nbr
if nl(k) == n | nr(k) == n
Ybus(n,n) = Ybus(n,n) + y(k);
else, end
end
end
end
Adegoke Williams
Adegoke Williams 2022년 9월 29일
Thanks so so much . It works perfectly.

댓글을 달려면 로그인하십시오.

추가 답변 (0개)

카테고리

Help CenterFile Exchange에서 Logical에 대해 자세히 알아보기

태그

제품


릴리스

R2020a

Community Treasure Hunt

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

Start Hunting!

Translated by