summaryrefslogtreecommitdiff
path: root/3793/CH6/EX6.5/exp_6_5.sce
blob: 519654d610bf07640b8e8021d481e31b80ba2836 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
clear;
clc;

function[Ybus,I]=fbsub(Ybus,nbus,I);
    for k=1:nbus;
        if k==1;
            for j=2:nbus;
                Ybus(k,j)=Ybus(k,j)/Ybus(k,k);
    end
else
    for j=2:nbus;
        if j<=k;
            for m=1:j-1;
                Ybus(k,j)=Ybus(k,j)-Ybus(k,m)*Ybus(m,j);
                
    end
else
    for m=1:k-1;
        Ybus(k,j)=Ybus(k,j)-Ybus(k,m)*Ybus(m,j);
        
    end
    Ybus(k,j)=Ybus(k,j)/Ybus(k,k);
end
end
end
end
for k=1:nbus;
    if k==1;
        I(k)=I(k)/Ybus(k,k);
    else
        for j=1:k-1;
            I(k)=I(k)-Ybus(k,j)*I(j);
end
I(k)=I(k)/Ybus(k,k);
end
end
for k=nbus:-1:1;
    if k==nbus;
        disp('node voltages');
        disp(Ybus);
        
       
    else
        for j=nbus:-1:k+1;
            I(k)=I(k)-Ybus(k,j)*I(j);
end
end
end
endfunction
Ybus=[4 3 6;2 8 5;1 5 9];
nbus=3;
I=[1;1;1];
[Ybus,I]=fbsub(Ybus,nbus,I);
V1=1/Ybus(1,1);
V2=(1/Ybus(2,2))*(1-2*V1);
V3=(1/Ybus(3,3))*(1-1*V1-4.25*V2);
VV3=V3;
VV2=(V2-Ybus(2,3)*V3);
VV1=(V1-Ybus(1,2)*VV2-Ybus(1,3)*V3);
V=[VV1 ; VV2 ;VV3]
disp("V is");
disp(V);