Wprowadzenie do programowania w SciLab: typy danych, wyrażenia, operatory, funkcje własne, skrypty.

Podobne dokumenty
Mathcad c.d. - Macierze, wykresy 3D, rozwiązywanie równań, pochodne i całki, animacje

Elementy metod numerycznych - zajęcia 9

WPROWADZENIE DO ŚRODOWISKA SCILAB

Przykład 1 -->s="hello World!" s = Hello World! -->disp(s) Hello World!

Metody i analiza danych

Wprowadzenie do Scilab: macierze

Całkowanie numeryczne

Baltie 3. Podręcznik do nauki programowania dla klas I III gimnazjum. Tadeusz Sołtys, Bohumír Soukup

Ćwiczenie 1. Wprowadzenie do programu Octave

LABORATORIUM 3 ALGORYTMY OBLICZENIOWE W ELEKTRONICE I TELEKOMUNIKACJI. Wprowadzenie do środowiska Matlab

WEKTORY I MACIERZE. Strona 1 z 11. Lekcja 7.

Podstawowe operacje na macierzach, operacje we/wy

SKRYPTY. Zadanie: Wyznaczyć wartość wyrażenia arytmetycznego

Ćwiczenie 3: Wprowadzenie do programu Matlab

Metody optymalizacji - wprowadzenie do SciLab a

Wprowadzenie do Scilab: macierze

Przetwarzanie sygnałów

Podstawy Automatyki ćwiczenia Cz.1. Środowisko Matlab

Programowanie: grafika w SciLab Slajd 1. Programowanie: grafika w SciLab

Cw.12 JAVAScript w dokumentach HTML

GNU Octave (w skrócie Octave) to rozbudowany program do analizy numerycznej.

Ćwiczenie 1. Matlab podstawy (1) Matlab firmy MathWorks to uniwersalny pakiet do obliczeń naukowych i inżynierskich, analiz układów statycznych

Wprowadzenie do środowiska

Obliczenia iteracyjne

Ćwiczenie 1. Wprowadzenie do programu Octave

JAVAScript w dokumentach HTML (1)

Laboratorium Programowanie Obrabiarek CNC. Nr H7

JAVAScript w dokumentach HTML (1) JavaScript jest to interpretowany, zorientowany obiektowo, skryptowy język programowania.

MATLAB tworzenie własnych funkcji

Podstawowe operacje na macierzach

Wprowadzenie do systemu Scilab

Instalacja Pakietu R

Wprowadzenie do Pakietu R dla kierunku Zootechnika. Dr Magda Mielczarek Katedra Genetyki Uniwersytet Przyrodniczy we Wrocławiu

Wstęp do Programowania Lista 1

Matlab Składnia + podstawy programowania

do MATLABa programowanie WYKŁAD Piotr Ciskowski

Podstawy obsługi pakietu GNU octave.

Metody numeryczne Laboratorium 2

Instalacja

Metody Numeryczne. Laboratorium 1. Wstęp do programu Matlab

EXCEL wprowadzenie Ćwiczenia

Programowanie strukturalne. Opis ogólny programu w Turbo Pascalu

Wprowadzenie do programowania w języku Visual Basic. Podstawowe instrukcje języka

Scilab skrypty (programowanie)

Wprowadzenie do Scilab: podstawy języka Scilab

Roger Bacon Def. Def. Def Funktory zdaniotwórcze

Pracownia Informatyczna Instytut Technologii Mechanicznej Wydział Inżynierii Mechanicznej i Mechatroniki. Podstawy Informatyki i algorytmizacji

do MATLABa podstawowe operacje na macierzach WYKŁAD Piotr Ciskowski

Interpolacja i aproksymacja, pojęcie modelu regresji

Podstawy MATLABA, cd.

ANALIZA DANYCH I PROCESÓW. Mgr inż. Paweł Wojciech Herbin

Elementy logiki. Zdania proste i złożone

Matematyka rozszerzona matura 2017

Podstawy Programowania Podstawowa składnia języka C++

Diary przydatne polecenie. Korzystanie z funkcji wbudowanych i systemu pomocy on-line. Najczęstsze typy plików. diary nazwa_pliku

Matlab Składnia + podstawy programowania

1 Programowanie w matlabie - skrypty i funkcje

1. Znajdowanie miejsca zerowego funkcji metodą bisekcji.

Zad. 3: Układ równań liniowych

3 1 + i 1 i i 1 2i 2. Wyznaczyć macierze spełniające własność komutacji: [A, X] = B

Wartości x-ów : Wartości x ów można w Scilabie zdefiniować na kilka sposobów, wpisując odpowiednie polecenie na konsoli.

Podstawy Informatyki 1. Laboratorium 1

Programowanie strukturalne i obiektowe. Funkcje

Środowisko R wprowadzenie. Wykład R1; Pakiety statystyczne

Języki programowania wysokiego poziomu. PHP cz.2.

WYDZIAŁ ELEKTROTECHNIKI, AUTOMATYKI I INFORMATYKI INSTYTUT AUTOMATYKI I INFORMATYKI KIERUNEK AUTOMATYKA I ROBOTYKA STUDIA STACJONARNE I STOPNIA

Scilab - wprowadzenie

Wprowadzenie do Scilab: macierze

Liczby zespolone. x + 2 = 0.

//warunki początkowe m=500; T=30; c=0.4; t=linspace(0,t,m); y0=[-2.5;2.5];

WIMIM/MIBM/N1/-/B04 WIMIM/ME/S1/-/C46 WIMIM/IM/S1/-/B19

WYRAŻENIA ALGEBRAICZNE

Wykład 6. Metoda eliminacji Gaussa: Eliminacja z wyborem częściowym Eliminacja z wyborem pełnym

I. Podstawy języka C powtórka

Wprowadzenie do programowania w języku Visual Basic. Podstawowe instrukcje języka

Wykłady z matematyki Liczby zespolone

JAVAScript w dokumentach HTML - przypomnienie

Matlab MATrix LABoratory Mathworks Inc.

PODSTAWY AUTOMATYKI. MATLAB - komputerowe środowisko obliczeń naukowoinżynierskich - podstawowe operacje na liczbach i macierzach.

Adres komórki-nazwa kolumny i nazwa wiersza, na przecięciu których znajduje się komórka. B3- adres aktywnej komórki

Programowanie w języku Matlab

Pętla for. Matematyka dla ciekawych świata -19- Scilab. for i=1:10... end. for k=4:-1:1... end. k=3 k=4. k=1. k=2

Wstęp do Informatyki i Programowania Laboratorium: Lista 1 Środowisko programowania

Funkcje. Część pierwsza. Zbigniew Koza. Wydział Fizyki i Astronomii

ODPOWIEDZI I SCHEMAT PUNKTOWANIA ZESTAW NR 2 POZIOM PODSTAWOWY. Etapy rozwiązania zadania

Funkcje. Deklaracja funkcji. Definicja funkcji. Wykorzystanie funkcji w programie.

Programowanie w Scilab

MATLAB - laboratorium nr 1 wektory i macierze

Ćwiczenie 3. MatLab: Algebra liniowa. Rozwiązywanie układów liniowych

Modelowanie komputerowe w ochronie środowiska

Po uruchomieniu programu nasza litera zostanie wyświetlona na ekranie

JAVAScript w dokumentach HTML (2)

LUBELSKA PRÓBA PRZED MATURĄ poziom podstawowy MATEMATYKA LUTY Instrukcja dla zdającego. Czas pracy: 170 minut

Programowanie w LOGO KOMENIUSZ grafika żółwia

PRZYKŁADOWE SKRYPTY (PROGRAMY W MATLABIE Z ROZSZERZENIEM.m): 1) OBLICZANIE WYRAŻEŃ 1:

Modelowanie Systemów Dynamicznych Studia zaoczne, Automatyka i Robotyka, rok II. Podstawy MATLABA, cz2.

KURS WSPOMAGAJĄCY PRZYGOTOWANIA DO MATURY Z MATEMATYKI ZDAJ MATMĘ NA MAKSA. przyjmuje wartości większe od funkcji dokładnie w przedziale

Zad. 3: Rotacje 2D. Demonstracja przykładu problemu skończonej reprezentacji binarnej liczb

Transkrypt:

13 listopad 2012 Podstawowe obliczenia w programie SciLab slajd 1 Wprowadzenie do programowania w SciLab: typy danych, wyrażenia, operatory, funkcje własne, skrypty.

13 listopad 2012 Podstawowe obliczenia w programie SciLab slajd 2 Plan zajęć Wprowadzenie, stałe specjalne, podstawowe operatory i funkcje Zmienne liczbowe, tablicowe, tekstowe, konwersja i przeliczanie wyrażeń tekstowych Deklaracja wielomianów Operatory logiczne Deklaracja funkcji użytkownika Skrypty

13 listopad 2012 Podstawowe obliczenia w programie SciLab slajd 3

13 listopad 2012 Podstawowe obliczenia w programie SciLab slajd 4 Podstawowe operatory działań matematycznych + dodawanie 2 + 2 = 4 - odejmowanie 4 1 = 3 * mnożenie 3 * 2 = 6 / dzielenie 6 / 2 = 3 ^ potęgowanie 4 ^ 2 = 16 -->3 + 2.5 5.5 -->10 + 6/2 13. -->8*3-2^2 20. -->(10 + 6)/2 8.

13 listopad 2012 Podstawowe obliczenia w programie SciLab slajd 5 Stałe specjalne %pi liczba π ( 3.1415927...) %e liczba e (2.7182818...) %i %inf %eps %nan 1 nieskończoność wielkość bardzo mała (dokładność maszyny liczącej) wielkość nie będąca liczbą (NotANumber) %t stała logiczna = True (prawda) %f stała logiczna = False (fałsz)

13 listopad 2012 Podstawowe obliczenia w programie SciLab slajd 6 Kilka podstawowych funkcji abs() sqrt() sin(), cos() exp() wartość bezwzględna, moduł liczby pierwiastek sinus, cosinus eksponent

13 listopad 2012 Podstawowe obliczenia w programie SciLab slajd 7 Kilka podstawowych funkcji abs() sqrt() sin(), cos() exp() wartość bezwzględna, moduł liczby pierwiastek sinus, cosinus eksponent Obliczyć wyrażenia: π sin( ) 5 (2 + e 5 ) 3 6 e 3π + 11 + ε

13 listopad 2012 Podstawowe obliczenia w programie SciLab slajd 8 Kilka podstawowych funkcji abs() sqrt() sin(), cos() exp() wartość bezwzględna, moduł liczby pierwiastek sinus, cosinus eksponent Obliczyć wyrażenia: π sin( ) 5 3 (2 + e 3π + 11 6 + ε e 5 ) -->sin(%pi/5) 0.5877853 -->sqrt(2+exp(5)) 12.264304 -->abs(%e-3* %pi)^(1/3) 1.8858127 -->%inf+11 Inf -->6+%eps 6.

13 listopad 2012 Podstawowe obliczenia w programie SciLab slajd 9 Obliczyć wyrażenia: sin( π cos( e 2 )) Ćwiczenie 2 + (2 sin( + e 3 ) 2 + π ) 3 4 sin π 2 + π (1 1 π )

13 listopad 2012 Podstawowe obliczenia w programie SciLab slajd 10 Obliczyć wyrażenia: sin( π cos( e 2 )) Ćwiczenie -->sin(%pi-cos(exp(2))) 2 + (2 sin( + e 3 ) 2 + π ) 0.4334848 3 4 sin π 2 + π (1 1 π )

13 listopad 2012 Podstawowe obliczenia w programie SciLab slajd 11 Obliczyć wyrażenia: sin( π cos( e 2 )) Ćwiczenie -->sin(%pi-cos(exp(2))) 2 + (2 sin( + e 3 ) 2 + π ) 0.4334848 -->sqrt(2+exp(3))/(2+sin(sqrt(2+%pi))) 3 4 sin π 2 + π (1 1 π ) 1.6984457 -->(%pi+%pi^4)^(1/3)/sin(1-1/%pi)^2 11.71208

13 listopad 2012 Podstawowe obliczenia w programie SciLab slajd 12 Zmienne - instrukcja podstawienia: pojedyncza wartość tablica 2 a = 2 2 1 3 5 podstawienie liczby rzeczywistej w = [2,3,4] v = [1;2;3] m = [1,2;3,4] t = w(2) b = m(1,2) podstawienie wektora (wierszowego) podstawienie wektora (kolumnowego) podstawienie macierzy ( 2 wiersze, 2 kolumny) podstawienie współrzędnej wektora podstawienie elementu macierzy

13 listopad 2012 Podstawowe obliczenia w programie SciLab slajd 13 Zmienne - instrukcja podstawienia wx = [1,3,5,7,9] lub wx = 1:2:9 lub wx = 1:2:10 1 pierwsza współrzędna 2 krok, wx(i) = wx(i-1) + krok 9 ostatnia współrzędna wz = [1,2,3,4,5,6,7,8] wz = 1:8 domyślny krok = 1 lub wt = [1;3;5;7;9] wt = wx' transpozycja wektora lub

13 listopad 2012 Podstawowe obliczenia w programie SciLab slajd 14 A =[1,2,3,4,5,6; 8,8,8,8,8,8] A =! 1. 2. 3. 4. 5. 6.!! 8. 8. 8. 8. 8. 8.! -->A(1,3) 3. pierwszy indeks dotyczy wiersza -->A(1,3:6)! 3. 4. 5. 6.! -->B = A(1:2,2:3) B =! 2. 3.!! 8. 8.! Zmienne - instrukcja podstawienia

13 listopad 2012 Podstawowe obliczenia w programie SciLab slajd 15 Zmienne - instrukcja podstawienia A =[1,2,3,4,5,6; 8,8,8,8,8,8] A =! 1. 2. 3. 4. 5. 6.!! 8. 8. 8. 8. 8. 8.! -->B = matrix(a, 3, 4) B =! 1. 8. 4. 8.!! 8. 3. 8. 6.!! 2. 8. 5. 8.! zmiana kształtu macierzy elementy macierzy czytane kolumnami 1 2 3 4 5 6 1 8 4 11 7 8 9 10 11 12 7 3 10 6 2 9 5 12

13 listopad 2012 Podstawowe obliczenia w programie SciLab slajd 16 Ćwiczenie Zdeklaruj wektor X = [-5π,-4π,...,5π,6π] Przepisz elementy wektora X do macierzy A (3 wiersze, 4 kolumny) wpisując wg kolumn Zdeklaruj wektor Y, tworząc go jako wektor kolumnowy z pierwszych 4 współrzędnych wektora X

13 listopad 2012 Podstawowe obliczenia w programie SciLab slajd 17 Zdeklaruj wektor X = [-5π,-4π,...,5π,6π] Przepisz elementy wektora X do macierzy A (3 wiersze, 4 kolumny) wpisując wg kolumn Zdeklaruj wektor Y, tworząc go jako wektor kolumnowy z pierwszych 4 współrzędnych wektora X X=-5*%pi:%pi:6*%pi X =! - 15.707963-12.566371...!... 12.566371 15.707963 18.849556! -->A=matrix(X,3,4) A =! - 15.707963-6.2831853 3.1415927 12.566371!! - 12.566371-3.1415927 6.2831853 15.707963!! - 9.424778 0. 9.424778 18.849556! -->Y=X(1:4)' Y =! - 15.707963!! - 12.566371!! - 9.424778!! - 6.2831853! Ćwiczenie

13 listopad 2012 Podstawowe obliczenia w programie SciLab slajd 18 w = zeros(1:3) w =! 0. 0. 0.! Kilka funkcji macierzowych podstawienie pod w wektora trzech zer x = ones(1:6) x =! 1. 1. 1. 1. 1. 1.! A = ones(3,4) A =! 1. 1. 1. 1.!! 1. 1. 1. 1.!! 1. 1. 1. 1.! podstawienie pod x wektora sześciu jedynek podstawienie pod A macierzy 3x4 złożonej z jedynek A(1,1:3) = w A =! 0. 0. 0. 1.!! 1. 1. 1. 1.!! 1. 1. 1. 1.! podstawienie pod pierwsze 3 elementy pierwszego wiersza macierzy A współrzędnych wektora x

13 listopad 2012 Podstawowe obliczenia w programie SciLab slajd 19 Kilka funkcji macierzowych w = rand() podstawienie pod w losowo wybranej liczby z [0,1) w = 0.0002211 x = 10*rand(1:3) podstawienie pod x wektora losowego liczb z [0,10) x =! 0.6837404 5.6084861 6.6235694! sin(x) obliczenie wartości funkcji sin() dla wszystkich elementów tablicy x! 0.6316970-0.6246625 0.3338491!

13 listopad 2012 Podstawowe obliczenia w programie SciLab slajd 20 Pomoc opis funkcji dostępnych w SciLab -->help sin

13 listopad 2012 Podstawowe obliczenia w programie SciLab slajd 21 Zmienne tekstowe x=2;y=3 T='x+2*y' podstawienie ciągu znaków evstr(t) obliczenie wartości wyrażenia T x = 2 x = 2. y = 3 y = 3. T ='x+2*y' T = x+2*y evstr(t) 8.

13 listopad 2012 Podstawowe obliczenia w programie SciLab slajd 22 Wielomiany p = poly([1,2,3],'x'); w = poly(0,'x') podstawienie wielomianu o podanych pierwiastkach q = poly([1,2,3],'x','c') podstawienie wielomianu o podanych współczynnikach -->p = poly([1, 2, 3],'x') p = 2 3-6 + 11x - 6x + x -->q = poly([1, 2, 3],'x','c') q = 2 1 + 2x + 3x

13 listopad 2012 Podstawowe obliczenia w programie SciLab slajd 23 Wielomiany p = poly([1,2,3],'x'); w = poly(0,'x') podstawienie wielomianu o podanych pierwiastkach q = poly([1,2,3],'x','c') podstawienie wielomianu o podanych współczynnikach -->p = poly([1, 2, 3],'x') p = 2 3-6 + 11x - 6x + x roots(p) obliczenie pierwiastków wielomianu p roots(q)=? -->q = poly([1, 2, 3],'x','c') q = 2 1 + 2x + 3x -->roots(p) 1. 2. 3.

13 listopad 2012 Podstawowe obliczenia w programie SciLab slajd 24 Wielomiany Dla określonych wielomianów możliwe są: dodawanie, mnożenie, dzielenie (tylko gdy mają tę samą zmienną) oblicz wyrażenia p+q, p*q, p/q, wylicz pierwiastki dwóch pierwszych wielomianów -->p+q 2 3-5 + 13x - 3x + x -->p*q 2 3 4 5-6 - x - 2x + 22x - 16x + 3x -->p/q 2 3-6 + 11x - 6x + x ---------------- 2 1 + 2x + 3x

13 listopad 2012 Podstawowe obliczenia w programie SciLab slajd 25 Operacje logiczne 2 == 2; [1 2 3]== [2 2 2] porównanie wartości ~( 1 == 2 ) zaprzeczenie [1 2 3]== 1 porównanie współczynników tablicy z podaną wartością w z operator alternatywy (lub) w & z operator koniunkcji (i)

13 listopad 2012 Podstawowe obliczenia w programie SciLab slajd 26 Ćwiczenie Zdeklaruj wektory o współczynnikach stałych logicznych a=[ T T F T ], b=[ F T F T]. Wyświetl wektor przeciwny do a koniunkcję a i b alternatywę a i b koniunkcję a i wektora przeciwnego do b

13 listopad 2012 Podstawowe obliczenia w programie SciLab slajd 27 Ćwiczenie Zdeklaruj wektory o współczynnikach stałych logicznych a=[ T T F T ], b=[ F T F T]. Wyświetl wektor przeciwny do a koniunkcję a i b alternatywę a i b koniunkcję a i wektora przeciwnego do b -->a=[ %T %T %F %T ] a =! T T F T! -->b=[%f %T %F %T] b =! F T F T! -->~a! F F T F!

13 listopad 2012 Podstawowe obliczenia w programie SciLab slajd 28 Ćwiczenie Zdeklaruj wektory o współczynnikach stałych logicznych a=[ T T F T ], b=[ F T F T]. Wyświetl wektor przeciwny do a koniunkcję a i b alternatywę a i b koniunkcję a i wektora przeciwnego do b -->a=[ %T %T %F %T ] a =! T T F T! -->b=[%f %T %F %T] b =! F T F T! -->~a! F F T F! -->a&b! F T F T! -->a b! T T F T! -->a & ~b! T F F F!

13 listopad 2012 Podstawowe obliczenia w programie SciLab slajd 29 Wykorzystanie wbudowanego edytora

13 listopad 2012 Podstawowe obliczenia w programie SciLab slajd 30 Definiowane funkcje użytkownika Funkcja - przyporządkowanie x y z Definiujemy: argumenty Obliczenie wyniku nagłówek funkcji nazwa funkcji, lista argumentów oczekiwane wyniki wynik sposób obliczenia funkcji algorytm wraz z instrukcją podstawienia

13 listopad 2012 Podstawowe obliczenia w programie SciLab slajd 31 Definiowane funkcje użytkownika funkcja obliczająca przekątną prostokąta function [c] = przekatna(a,b) c = sqrt(a^2+b^2) endfunction

13 listopad 2012 Podstawowe obliczenia w programie SciLab slajd 32 Definiowane funkcje użytkownika funkcja obliczająca przekątną prostokąta function [c] = przekatna(a,b) c = sqrt(a^2+b^2) endfunction Load into Sclilab przesłanie do interpretera całości skryptu Evaluate selection przesłanie do interpretera zaznaczonego fragmentu skryptu --> function [c]=przekatna(a,b), c=sqrt(a^2+b^2), endfunction, -->przekatna(3,4) 5.

13 listopad 2012 Podstawowe obliczenia w programie SciLab slajd 33 Przykład Zdefiniować w edytorze funkcję dokonującą zamiany współrzędnych biegunowych na kartezjańskie Zapisać zawartość edytora do pliku ~/biegun.sci Obliczyć współrzędne kartezjańskie punktu odległego od środka układu współrzędnych o wielkość = 1, przy nachyleniu prostej łączącej punkt z początkiem układu współrzędnych pod kątem 60 stopni

13 listopad 2012 Podstawowe obliczenia w programie SciLab slajd 34 Przykład Zdefiniować w edytorze funkcję dokonującą zamiany współrzędnych biegunowych na kartezjańskie Zapisać zawartość edytora do pliku ~/biegun.sci Obliczyć współrzędne kartezjańskie punktu odległego od środka układu współrzędnych o wielkość = 1, przy nachyleniu prostej łączącej punkt z początkiem układu współrzędnych pod kątem 60 stopni function [x,y]=biegun(r,fi) x=r*cos(fi); y=r*sin(fi); endfunction -->[a,b]=biegun(1,%pi/3) b = 0.8660254 a = 0.5

13 listopad 2012 Podstawowe obliczenia w programie SciLab slajd 35 Przy użyciu zdefiniowanych funkcji przekatna i biegun wykonać Podstaw a=3, b=5 Oblicz przekątną pr prostokątu o bokach a,b Znajdź współrzędne kartezjańskie punktu określonego współrzędnymi biegunowymi : Promień jest równy przekątnej prostokąta o bokach a,b Ćwiczenie Kąt fi jest równy kątowi nachylenia przekątnej prostokąta o bokach a,b do boku a (skorzystaj z funkcji acos() lub asin() )

13 listopad 2012 Podstawowe obliczenia w programie SciLab slajd 36 Ćwiczenie Przy użyciu zdefiniowanych funkcji przekatna i biegun wykonać Podstaw a=3, b=5 Oblicz przekątną pr prostokątu o bokach a,b Znajdź współrzędne kartezjańskie punktu określonego współrzędnymi biegunowymi : Promień jest równy przekątnej prostokąta o bokach a,b Kąt fi jest równy kątowi nachylenia przekątnej prostokąta o bokach a,b do boku a (skorzystaj z funkcji acos() lub asin() ) -->a=3; b=5 b = 5. -->pr=przekatna(a,b) pr = 5.8309519 -->fi=acos(a/pr) fi = 1.0303768 -->[x,y]=biegun(pr,fi) y = 5. x = 3.

13 listopad 2012 Podstawowe obliczenia w programie SciLab slajd 37 Definiowane funkcje użytkownika funkcja dokonuje zamiany współrzędnych biegunowych na kartezjańskie użycie polecenia deff() deff('[x,y]=biegun(r,fi)','x=r*cos(fi);y=r*sin(fi)') użycie zapisu function... endfunction function [x,y]=biegun(r,fi) x=r*cos(fi); y=r*sin(fi); endfunction

13 listopad 2012 Podstawowe obliczenia w programie SciLab slajd 38 Ćwiczenie Określić funkcję sfera (przy użyciu polecenia deff), dokonującą zamiany współrzędnych sferycznych na kartezjańskie wg wzorów: x = r * cos(fi) * sin(psi) y = r * sin(fi) * sin(psi) z = r * cos(psi) Wylicz współrzędne kartezjańskie dla punktu podanego we współrzędnych sferycznych (1, π/3, π/4 )

13 listopad 2012 Podstawowe obliczenia w programie SciLab slajd 39 Ćwiczenie Określić funkcję sfera (przy użyciu polecenia deff), dokonującą zamiany współrzędnych sferycznych na kartezjańskie wg wzorów: x = r * cos(fi) * sin(psi) y = r * sin(fi) * sin(psi) z = r * cos(psi) Wylicz współrzędne kartezjańskie dla punktu podanego we współrzędnych sferycznych (1, π/3, π/4 ) -->deff('[x,y,z]=sfera(r,fi,psi)','x = r*cos(fi)*sin(psi);... y = r*sin(fi)*sin(psi); z = r*cos(psi)')

13 listopad 2012 Podstawowe obliczenia w programie SciLab slajd 40 Ćwiczenie Określić funkcję sfera (przy użyciu polecenia deff), dokonującą zamiany współrzędnych sferycznych na kartezjańskie wg wzorów: x = r * cos(fi) * sin(psi) y = r * sin(fi) * sin(psi) z = r * cos(psi) Wylicz współrzędne kartezjańskie dla punktu podanego we współrzędnych sferycznych (1, π/3, π/4 ) -->deff('[x,y,z]=sfera(r,fi,psi)','x = r*cos(fi)*sin(psi);... y = r*sin(fi)*sin(psi); z = r*cos(psi)') -->[x,y,z]=sfera(1,%pi/3,%pi/4) z = 0.7071068 y = 0.6123724 x = 0.3535534

13 listopad 2012 Podstawowe obliczenia w programie SciLab slajd 41 Definiowane funkcje wykorzystanie bibliotek Deklaracja funkcji oddzielne pliki (rozszerzenie *.sci ) Wczytanie funkcji do SciLaba Po ponownym uruchomieniu SciLaba, sprawdzić czy można skorzystać z funkcji biegun() -->exists('biegun') 0. Wyświetlić na ekranie zawartość pliku /pub/programy/biegun.sci Wczytać definicję funkcji poleceniem Getf (menu File) Ponownie sprawdzić czy można skorzystać z funkcji biegun() Przeliczyć współrzędne biegunowe (2, π/3) na współrzędne kartezjańskie

13 listopad 2012 Podstawowe obliczenia w programie SciLab slajd 42 Definiowane funkcje wykorzystanie bibliotek

13 listopad 2012 Podstawowe obliczenia w programie SciLab slajd 43 Definiowane funkcje wykorzystanie bibliotek

13 listopad 2012 Podstawowe obliczenia w programie SciLab slajd 44 Skrypty Wyświetlić na ekranie zawartość pliku lab_scilab_1.dem znajdującego się w katalogu /pub/programy Wczytać skrypt lab_scilab_1.dem (z menu FILE wybrać pozycję FILE OPERATIONS, wskazać plik, wybrać EXEC i kliknąć Ok) Wykonać kolejne, zapisane polecenia naciskając klawisz [ENTER]

13 listopad 2012 Podstawowe obliczenia w programie SciLab slajd 45 Skrypty (exec file) Funkcja mode(k) stosowana międzu innymi w plikach typu 'exec', decyduje w zależności od wartości parametru k o sposobie wyswietlania informacji podczas wykonywania skryptów k = 1 : (wartość domyslna) polecenia pliku 'exec' wykonywane są w sposób nie interaktywny (ciągły), pokazując wyniki na ekranie k = -1 : polecenia pliku 'exec' wykonywane są w sposób ciągły, nie pokazując wyników wykonania na ekranie k = 7 : wykonywanie skryptu w sposób interaktywny, każda instrukcja wymaga potwierdzenia (klawiszem ENTER)

13 listopad 2012 Podstawowe obliczenia w programie SciLab slajd 46 Ćwiczenie Przy użyciu dowolnego, dostępnego edytora utwórz skrypt moje_funkcje.sci (zapisując go w katalogu domowym) i zdefiniuj w nim następujące funkcje: kula(r) - wynikiem wektor [s, v], gdzie s jest powierzchnią kuli o promieniu r, v jej objętością. Przetestuj działanie skryptu obliczając: kula(2)

13 listopad 2012 Podstawowe obliczenia w programie SciLab slajd 47 Ćwiczenie Przy użyciu dowolnego, dostępnego edytora utwórz skrypt moje_funkcje.sci (zapisując go w katalogu domowym) i zdefiniuj w nim następujące funkcje: kula(r) - wynikiem wektor [s, v], gdzie s jest powierzchnią kuli o promieniu r, v jej objętością. function [s,v]=kula(r) s=4*%pi*r^2; v=4/3*%pi*r^3; endfunction [s,v]=kula(2) v = 33.510322 s = 50.265482 Przetestuj działanie skryptu obliczając: kula(2)

13 listopad 2012 Podstawowe obliczenia w programie SciLab slajd 48 Ćwiczenie W skrypcie moje_funkcje.sci i zdefiniować funkcje jedynki(n,m), wynikiem działania funkcji ma być macierz A n x m wypełniona jedynkami Przetestuj działanie skryptu obliczając: jedynki(6,6)

13 listopad 2012 Podstawowe obliczenia w programie SciLab slajd 49 Ćwiczenie W skrypcie moje_funkcje.sci i zdefiniować funkcje jedynki(n,m), wynikiem działania funkcji ma być macierz A n x m wypełniona jedynkami function A = jedynki(n,m) A = ones(n,m); endfunction Przetestuj działanie skryptu obliczając: jedynki(6,6)

13 listopad 2012 Podstawowe obliczenia w programie SciLab slajd 50 Ćwiczenie W skrypcie moje_funkcje.sci i zdefiniować funkcje jedynki(n,m), wynikiem działania funkcji ma być macierz A n x m wypełniona jedynkami uzupełnij funkcję o instrukcje które k-ty wiersz macierzy A wypełnią zerami ( k dodać do listy argumentów), ostatni wiersz macierzy A wypełnią kolejnymi liczbami naturalnymi (rozpoczynając od jedynki) ostatnią kolumnę macierzy A, z wyłączeniem elementu w ostatnim wierszu) wypełnią kolejnymi liczbami naturalnymi (rozpoczynając od jedynki) function A = jedynki(n,m) A = ones(n,m); endfunction Przetestuj działanie skryptu obliczając: jedynki(6,6)

13 listopad 2012 Podstawowe obliczenia w programie SciLab slajd 51 Ćwiczenie W skrypcie moje_funkcje.sci i zdefiniować funkcje jedynki(n,m), wynikiem działania funkcji ma być macierz A n x m wypełniona jedynkami uzupełnij funkcję o instrukcje które k-ty wiersz macierzy A wypełnią zerami ( k dodać do listy argumentów), ostatni wiersz macierzy A wypełnią kolejnymi liczbami naturalnymi (rozpoczynając od jedynki) ostatnią kolumnę macierzy A, z wyłączeniem elementu w ostatnim wierszu) wypełnią kolejnymi liczbami naturalnymi (rozpoczynając od jedynki) function A = jedynki(n,m,k) A = ones(n,m); A(k,1:m)= 0 A(n,1:m)= [1:m] A(1:n-1,m)= [1:n-1]' endfunction Przetestuj działanie skryptu obliczając: jedynki(6,6)

13 listopad 2012 Podstawowe obliczenia w programie SciLab slajd 52 Ćwiczenie W skrypcie moje_funkcje.sci i zdefiniować następujące funkcje: f ( x, y, z) = sin( x 2 cos ( z + + y) xy) + 1 delta( a, b, c) = b 2 4ac Przetestuj działanie skryptu obliczając: f(1,2,3), delta(1,3,1)

13 listopad 2012 Podstawowe obliczenia w programie SciLab slajd 53 Ćwiczenie W skrypcie moje_funkcje.sci i zdefiniować następujące funkcje: f ( x, y, z) = sin( x 2 cos ( z + + y) xy) + 1 delta( a, b, c) function [p]=f(x,y,z) p=sin(x+y)/(cos(z+x*y)^2+1) endfunction = b 2 4ac -->f(1,2,3) 0.1306105 function [d]=delta(a,b,c) d=b^2-4*a*c endfunction -->delta(1,3,1) 5. Przetestuj działanie skryptu obliczając: f(1,2,3), delta(1,3,1)