Sprawozdanie
Politechnika Lubelska w Lublinie Laboratorium Metod Numerycznych |
---|
Data: 17.10.11 |
Ćwiczenie Wykonywali: |
-Adam Głowacki e-mail: adamglowacki.pollub@gmail.com |
-Żaklin Grądz |
Zad 2 Ustalić katalog roboczy.
-->chdir('e:\scilab');
Zad 3. Wykonać wszystkie przykłady z instrukcji.
Przykład 1: Uruchamiamy w Scilabie edytor. Wprowadzamy poniższy kod generujący wartości funkcji sinus wraz z wyświetleniem ich na wykresie.
t=linspace(0, 2*%pi, );
y=sin(t); // plot2d(t,y)
Przykład 2: Utworzyć i wykonać skrypt o poniższym kodzie. Zapisać pod nazwą funkcja.sce w katalogu roboczym. wykonanie skryptu wykonujemy przez wywołanie w terminalu polecenia exec ('funkcja.sce').Przetestować „tryby” wykonywania skryptu {exec ('funkcja.sce',0), exec ('funkcja.sce',1)}
Jest to skrypt do wygenerowana wykresu funkcji e-x sin(4x) ze zmiennym za każdym razem rozmiarem przedziału [a; b] i liczbą podprzedziałów.
a=input(" Podaj lewy kraniec przedziału : ");
b=input(" Podaj prawy kraniec przedziału : ");
n=input(" Podaj ilość podprzedziałów : ");
x=linspace(a,b,n+1);
y=exp(-x).*sin(4*x);
plot(x,y,"b")
xtitle("y=exp(-x)*sin(4x)","y","x")
Podaj lewy kraniec przedziału : 1
Podaj prawy kraniec przedziału : 2
Podaj ilość podprzedziałów : 3
Przykład 3: W edytorze wprowadź poniższy kod. Plik zapisz jako funkcja.sci.
function faza = f(x)
faza = sin(x*%pi/10)
endfunction
W konsoli Scilaba wywołaj polecenie:
exec('funkcja.sci');
x = -10:0.1:10;
faza = f(x);
plot2d(x,faza)
Przykład 4: scelect-case
clear;
punkty= 95;
select floor(punkty/10)
case 9 then ocena = 5
case 8 then ocena = 4
case 7 then ocena = 3
case 6 then ocena = 2
else ocena=1
end
Przykład 5
clear;
while %t do n=round(510*rand(1,1))
select n
case 0 then
disp(0)
case 1 then
disp (1)
else
break
end
end
Przykład 6: while
while
e=1;
a=1;
k=1;
while norma(a-(a+e),1) > %eps, e=e/2;
else
k=k+1;
end
Zad 4.Stworzyć skrypt generujący wykres funkcji y=14*cos(12*sin(2*x))+2.
clear;
xdel;
clc;
a=input("Podaj lewy kraniec przedzialu: ");
b=input("Podaj prawy kraniec przedzialu: ");
n=input("Podaj ilosc podprzedzialow: ");
x=linspace(a,b,n+1);
y=14*cos(12*sin(2*x))+2;
plot(x,y,"b");
xtitle("y=14*cos(12*sin(2*x))+2","y","x")
Zad 5. Utworzyć samodzielnie skrypt w którym po wprowadzeniu dowolnej wartości kąta (x) wyliczy funkcję średniej arytmetycznej czterech składników: sin(x), cos(x), tg(x) i ctg(x).
clear;
xdel(winsid());
clc;
x=input("Podaj x: ");
srednia=((sin(x)+cos(x)+tan(x)+(1/tan(x)))/4)
Zad 6.
Utworzyć samodzielnie skrypt impedancja.sce, który będzie wyznaczał wartość zastępczej impedancji szeregowo połączonych elementów RLC, przy zmiennych wartościach częstotliwości.
clear;
xdel(winsid());
clc;
R=input("podaj R : ");
L=input("podaj wartość L : ");
C=input("podaj wartość C : ");
f=input("podaj wartość f : ");
Z=R+(2*%pi*f*L*%i)-1/(2*%pi*f*C* %i);
Zad 7. Elementy R,L,C są połączone równolegle, i zasilane napięciem np.230V. Utworzyć skrypt, który będzie losowo definiował wartości elementów RLC, a następnie będzie liczył natężenie prądu dla różnych wartości częstotliwości (określonych jakimś zakresem, np. od 10Hz do 150Hz).
clear;
xdel(winsid());
clc;
R=[200*rand(1,1)];
L=[250*rand(1,1)];
C=[240*rand(1,1)];
f=[150*rand(1,1)];
Z=1/R+1/(2*%pi*f*L*%i)-1/(1/(2*%pi*f*C*%i));
U=input("podaj wartość U : ");
I=U/Z;
Zad 8. Utworzyć skrypt, który wypełnia losowymi liczbami całkowitymi macierz NAZWISKO o strukturze 4x3. Przedstawić wartość min i max w tej macierzy.
NAZWISKO=int(10*rand(4,3))
max(NAZWISKO)
min(NAZWISKO)