Pohdin projekti Scilab 5.3.3 - ohjelman alkeisohjeet Käytön aloittaminen Ohjelma käynnistetään kaksoisklikkaamalla työpöydällä ohjelman kuvaketta ja ohjelman käyttö lopetetaan käyttämällä komentoa exit tai quit. Ohjelmiston Scilab 5.3.3 komentorivi näyttää seuraavalta --> Ohjelman käytön aikana tietyn komennon käytöstä saa apua komennolla help komento. Muuttujan luominen Sijoitusoperaattorina Scilabissa on yhtäsuuruusmerkki =. Luotaessa muuttuja, jolle halutaan antaa jokin arvo, voidaan kirjoittaa esimerkiksi --> a = 6 --> b = 7 Laskutoimitukset Peruslaskutoimitukset ovat summa, erotus, tulo, osamäärä, potenssiin korotus ja neliöjuuri, jotka voidaan suorittaa seuraavilla operaattoreilla +, -, *, /, ^, sqrt() Erityisesti on huomattava, että esimerkiksi polynomilausekkeiden käsittelyssä kertoimen ja kirjainosan väliin on kirjoitettava aina kertomerkki. Editori Scilabia voidaan käyttää suoraan komentoikkunassa ts. laskut ja muut operaatiot voidaan kirjoittaa suoraan komentoikkunan näyttöön. Scilabia kannattaa kuitenkin käyttää editorin Scipad avulla, jolloin pienen harjoittelun jälkeen Scilabin käyttö nopeutuu ja helpottuu huomattavasti. Editorin voi käynnistää kirjoittamalla komentoikkunaan edit tai klikkaamalla kuvakepalkin ensimmäistä kuvaketta Launch SciNotes. Editorille kirjoitettua komentokokoelmaa kutsutaan scriptiksi tai ohjelmakoodiksi. Editorin scripti ajetaan klikkaamalla editorin ylälaidasta Execute ja edelleen file with echo, tai näppäinyhdistelmällä Ctrl+L. Ideana editorin käytössä on, että sinne voidaan kirjoittaa useita komentoja ja laskuja peräkkäin, ja Scilab suorittaa kaikki komennot kerralla. Jos huomataan jokin virhe tai halutaan kokeilla komentojonoa muilla muuttujien arvoilla, niin tällöin ei tarvitse kirjoittaa koko komentosarjaa uudestaan.
Esimerkki Kirjoita seuraavan kuvan mukainen teksti Editoriin ja aja se Scilabilla (Ctrl+L). Vaihda tämän jälkeen kuusitukin mittoja ja aja laskentaohjelma uudelleen.
Vektoreista Vektorilaskenta tasossa ja myös moniulotteisissa avaruuksissa on Scilabilla varsin yksinkertaista. Aluksi on määriteltävä vektorit ja huomioitava, että vaakavektorit ja pystyvektorit ovat nyt eri asioita. Vaakavektori voidaan syöttää kahdella eri tavalla -->// Tapa 1: -->a=[1 2 3] -->// Tapa 2: -->a=[1,2,3] Pystyvektori tulee ymmärtää vaakavektorin transpoosina ts. = ts. transpoosi saadaan ns. heittomerkin avulla. -->// Tapa 1: -->a=[4 5 6] -->// Tapa 2: -->a=[4,5,6] -->// Tapa 3: -->a=[4;5;6] Viimeinen muoto on nyt myös 3x1-matriisi, joka on sama asia kuin 1x3-vektorin transpoosi. Seuraavaksi määritetään joitain vektorilaskennan peruslaskutoimituksia. Yhteenlasku Vähennyslasku -->a+b Transpoosi -->a-c -->a Vektorin a normi eli itseisarvo -->norm(a) Vektoreiden a ja b pistetulo = cos(, ) //jos a on vaakavektori ja b pystyvektori: -->a*b //jos a ja b ovat pystyvektoreita: -->a *b
Kolmiulotteisessa avaruudessa voidaan laskea vektoreiden a ja ristitulo muodostamalla uusi funktio ristituloa varten: -->function y=cross(a,b) y=[a(2)*b(3)-a(3)*b(2);-(a(1)*b(3)-a(3)*b(1));a(1)*b(2)-a(2)*b(1)] endfunction Nyt voidaan laskea kolmiulotteisten vektoreiden ja ristitulo : -->cross(a,b) Edelleen vektorien, ja skalaarikolmitulo : missä a on vaakavektori Esimerkki -->a*(cross(b,c)) Määritä vektoreiden = [3 5 9] ja = [6 2 9] välisen kulman suuruus funktion arccos(x) avulla. -->a=[3,5,9], b=[6,2,9] -->acos((a*b')/(norm(a)*norm(b))) ans = 0.3923123 Tulos on radiaaneina, joten asteina se on -->ans*(180/%pi) ans = 22.477837 Matriisit Matriisin määrittäminen Matriisin alkiot laitetaan hakasulkujen väliin vaakariveittäin. Rivien alkiot voidaan erottaa pilkulla tai välilyönnillä toisistaan ja rivit enterin painalluksella tai puolipisteellä. Seuraavaksi esitellään kolme erilaista 0 1 0 tapaa määritellä matriisi = 2 3 1. 5 3 2 -->"Tapa 1"; -->A=[0,1,0;2,3,1;5,3,2] -->"Tapa 2"; -->A=[0 1 0;2 3 1; 5 3 2]
-->"Tapa 3"; -->A=[0 1 0 -->2 3 1 -->5 3 2] Matriisien yhteen-, vähennys- ja kertolasku Scilabissa voidaan suorittaa matriisien yhteen-, vähennys- ja kertolaskuja. Yhteen- ja vähennyslaskussa täytyy kuitenkin ottaa huomioon, että matriisien kertaluvut pitää olla samat. Matriisin kertaluvun saa selville komennolla size: -->size(a) ans = 3. 3. Matriisien yhteen- ja vähennyslasku suoritetaan käyttämällä merkkejä + ja -. -->C=B+A -->B=C-A Kertolaskussa kertojan sarakkeiden lukumäärä tulee olla sama kuin kerrottavan rivien lukumäärä. Kertolaskua merkitään symbolilla *. -->C=A*B Matriisin transpoosi, determinantti ja käänteismatriisi Matriisille voidaan Scilabissa määrittää determinantti ( ), transpoosi ja käänteismatriisi : Determinantti Transpoosi --> det(a) -->A' Käänteismatriisi -->inv(a) Kompleksiluvuista Imaginaariyksikköä merkitään Scilabissa %i. Esimerkiksi luku =1+2 syötetään seuraavasti. -->z=1+2*%i Kompleksiluvun reaaliosa ja imaginaariosa saadaan seuraavilla komennoilla. -->real(z) -->imag(z)
Vastaavasti kompleksiluvun liittoluku ja itseisarvo -->conj(z) -->abs(z). Kuvaajista Funktion kuvaajan piirtäminen tapahtuu yleensä komennolla plot, mutta muitakin piirtokomentoja löytyy esimerkiksi vaikkapa 3D-piirtämiseen. Komennolla help plot saadaan apua piirtämiseen. Kuvaajien ulkoasua, esim. väriä ja viivan tyyliä jne. voidaan muuttaa. Esimerkiksi komennoilla xlabel, ylabel ja title voidaan nimetä akselit ja itse kuva. Lisäksi on vielä huomattava, että itse kuvaaja piirtyy omaan ikkunaan. Jos haluat että kuvaajia ei piirretä samaan ikkunaan, käytä komentoa clf(), joka tyhjentää ikkunan. Seuraavassa esimerkkejä funktioiden kuvaajien piirtämisestä Scilab 5.1.1:llä. Esimerkkejä Esimerkki 1. Esimerkki 2. Esimerkki 3. Esimerkki 4. --> x=-5:0.1:5; // Muuttujan x arvot. Puoli- --> plot(x,x.^2) // piste estää tulostuksen. --> clf(); // Tyhjennetään ikkuna. --> x=linspace(-3*%pi,3*%pi,100); // Muuttujan x arvot. --> y=sin(x); --> plot(x,y) --> x=-3:0.1:3; --> plot(x,x.^2,'r--',x,x.^3,'b-')// Punainen käyrä katkovii- // valla, sekä sininen // käyrä yhtenäisellä vii- // alla --> x=-3*%pi:0.1:3*%pi; --> plot(x,sin(x)) --> title('käyrä y=sin(x)') --> xlabel('x') --> ylabel('sin(x)') --> legend('sin(x)')
Esimerkki 5. Editorilla kuvia piirrettäessä kannattaa ohjelmakoodi ajaa kuvassa ylhäällä näkyvää Execute-kuvaketta klikkaamalla tai Execute valikosta Ctrl+L tai pelkkä Ctrl+L. Näin menetellen Scilabin komentoikkunaan ei tulostu komentoja, vaan Scilab piirtää kuvan erilliseen ikkunaan