Politechnika Wrocławska | Wydział: Elektryczny Rok: II Semestr: IV Rok akademicki: 2010/2011 |
||
---|---|---|---|
Programowanie w środowisku MATLAB |
Zad 1.
>> %Wprowadzam dane z treści zadania
>> E1=50;
>> E2=60;
>> E3=10;
>> E4=100;
>> Z1=10;
>> Z2=20;
>> Z3=30;
>> Z4=100;
>> Z5=100;
>> Z6=100;
>> Z7=20;
>> %Zapisuje je w postaci macierzowej, zgodnie z metodą prądów oczkowych
>> E=[-E1-E2;-E2+E3;E4]
E =
-110
-50
100
>> Z=[Z1+Z2+Z3 Z3 -Z2; Z3 Z4+Z7+Z3+Z6 Z6; -Z2 Z6 Z5+Z2+Z6]
Z =
60 30 -20
30 250 100
-20 100 220
>> I=['I1';'I2';'I3']
I =
I1
I2
I3
>> %Obliczam poszczególne prądy oczkowe ze wzoru I=Z^(-1)*E
>> I=Z^(-1)*E
I =
-1.6301
-0.1551
0.3769
>> %Otrzymałem obliczone poszczególne prądy oczkowe
>> I1=-1.6301; %Prąd w pierwszym oczku
>> I2=-0.1551; %Prąd w drugim oczku
>> I3=0.3769; %Prąd w trzecim oczku
>> %Obliczam prądy gałęziowe obwodu, zgodnie z metodą prądów oczkowych
>> i1=I1;
>> i2=I1-I3;
>> i3=I1+I3;
>> i4=I2;
>> i5=I3;
>> i6=I3+I2;
>> %Otrzymane poszczegolne prądy gałęziowe
>> i1
i1 =
-1.6301
>> i2
i2 =
-2.0070
>> i3
i3 =
-1.2532
>> i4
i4 =
-0.1551
>> i5
i5 =
0.3769
>> i6
i6 =
0.2218
>>i7
i7=
-0.1551
Zad 2.
%Obliczanie metodą prądów oczkowych
%Wprowadzam dane podane w zadaniu
E1=50;
E2=60;
E3=10;
E4=100;
Z1=10;
Z2=20;
Z3=30;
Z4=100;
Z5=100;
Z6=100;
Z7=20;
%Zapisuje je w postaci macierzowej
E = [-E1-E2; -E2+E3; E4];
Z=[Z1+Z2+Z3 Z3 -Z2; Z3 Z4+Z7+Z3+Z6 Z6; -Z2 Z6 Z5+Z2+Z6];
%Obliczam I (czyli poszczególne prądy oczkowe)
I=Z^(-1)*E;
Io1=I(1,:); %Prąd oczka 1
Io2=I(2,:); %Prąd oczka 2
Io3=I(3,:); %Prąd oczka 3
%Obliczam prądy gałęziowe obwodu
i1=Io1;
i2=Io1-Io3;
i3=Io1+Io3;
i4=Io2;
i5=Io3;
i6=Io3+Io2;
i7=Io2;
disp('i1='),disp(i1)
disp('i2='),disp(i2)
disp('i3='),disp(i3)
disp('i4='),disp(i4)
disp('i5='),disp(i5)
disp('i6='),disp(i6)
disp('i7='),disp(i7)
Zad 3.
%Obliczanie metodą prądów oczkowych
%Wprowadzam dane
E1=input('Podaj E1:\n');
E2=input('Podaj E2:\n');
E3=input('Podaj E3:\n');
E4=input('Podaj E4:\n');
Z1=input('Podaj Z1:\n');
Z2=input('Podaj Z2:\n');
Z3=input('Podaj Z3:\n');
Z4=input('Podaj Z4:\n');
Z5=input('Podaj Z5:\n');
Z6=input('Podaj Z6:\n');
Z7=input('Podaj Z7:\n');
%Zapisuje je w postaci macierzowej
E = [-E1-E2; -E2+E3; E4];
Z=[Z1+Z2+Z3 Z3 -Z2; Z3 Z4+Z7+Z3+Z6 Z6; -Z2 Z6 Z5+Z2+Z6];
%Obliczam I (czyli poszczególne prądy oczkowe)
I=Z^(-1)*E;
Io1=I(1,:); %Prąd oczka 1
Io2=I(2,:); %Prąd oczka 2
Io3=I(3,:); %Prąd oczka 3
%Obliczam prądy gałęziowe obwodu
i1=Io1;
i2=Io1-Io3;
i3=Io1+Io3;
i4=Io2;
i5=Io3;
i6=Io3+Io2;
i7=Io2;
disp('i1='),disp(i1)
disp('i2='),disp(i2)
disp('i3='),disp(i3)
disp('i4='),disp(i4)
disp('i5='),disp(i5)
disp('i6='),disp(i6)
disp('i7='),disp(i7)
zad 4
function y=signum(x)
x=input('Podaj x:');
if(x<0);
y1=-1;
disp('y='),disp(y1)
elseif(x==0)
y2=0;
disp('y='),disp(y2)
elseif(x>0)
y3=1;
disp('y='),disp(y3)
end
Zad 6.
%Postać równania kwadratowego y=ax^2+bx+c
a=input('Podaj a:\n'); %Należy podać wartość a
b=input('Podaj b:\n'); %Należy podać wartość b
c=input('Podaj c:\n'); %Należy podać wartość c
delta=b*b-4*a*c; %Program oblicza deltę
if delta>0
x1=(-b-sqrt(delta))/(2*a);
x2=(-b+sqrt(delta))/(2*a);
disp('Wartość pierwszego pierwiastka wynosi:'),disp(x1)
disp('Wartość drugiego pierwiastka wynosi:'),disp(x2)
elseif delta==0
x1=(-b)/(2*a);
disp('Równanie ma podwójny pierwiastek, który wynosi:'),disp(x1)
elseif delta<0
fprintf('Równanie nie posiada pierwiastka\n');
end
q=input('Podaj zakres funkcji na osi X od:\n');
z=input('Podaj zakres funkcji na osi X do:\n');
x=[q:1:z];
y=a*x.^2+b*x+c;
plot(x,y)
%Postać równania kwadratowego y=ax^2+bx+c
function y=kwadrat(a,b,c)
a=input('Podaj a:\n'); %Należy podać wartość a
b=input('Podaj b:\n'); %Należy podać wartość b
c=input('Podaj c:\n'); %Należy podać wartość c
delta=b*b-4*a*c; %Program oblicza deltę
if delta>0
x1=(-b-sqrt(delta))/(2*a);
x2=(-b+sqrt(delta))/(2*a);
disp('Wartość pierwszego pierwiastka wynosi:'),disp(x1)
disp('Wartość drugiego pierwiastka wynosi:'),disp(x2)
elseif delta==0
x1=(-b)/(2*a);
disp('Równanie ma podwójny pierwiastek, który wynosi:'),disp(x1);
elseif delta<0
fprintf('Równanie nie posiada pierwiastka\n');
q=input('Podaj zakres funkcji na osi X od:\n');
z=input('Podaj zakres funkcji na osi X do:\n');
x=[q:1:z];
y=a*x.^2+b*x+c;
plot(x,y);
end