Cw07 Matlab1

background image

Ćw 7. Matlab (1)

Matlab

to pakiet do obliczeń naukowych, tworzenia wykresów, analiz układów dynamicznych itp. Podstawowa

praca w środowisku odbywa się sposobem interakcyjnym, w oknie poleceń (Command Window) wpisujemy poje-

dyncze instrukcje obliczeniowe i na bieżąco otrzymujemy wyniki.

Domyślne środowisko (Desktop Layout) składa się z okna Command Window, w którym wpisujemy kolejne

polecenia, okna Command History (historia utworzonych poleceń), ewentualnie okna z zakładkami Workspace

(obszar roboczy - lista zainicjowanych przez użytkownika zmiennych i ich wartości) i Current Directory (zawartość

katalogu roboczego).

Sposoby obsługi:

dialog - wpisywanie kolejnych poleceń w oknie Command Window,

praca wsadowa – wykonywanie napisanych skryptów zawierających ciągi poleceń.

Wykonać i zanalizować odpowiedzi na przykładowe instrukcje:

a=1.2

%przypisanie (nadanie wartości) zmiennej - uwaga: kropka dziesiętna!

% po tym znaku komentarz - ignorowany przez MATLAB’a

b=1.5E5

%przypisanie wartości w formacie naukowym (wykładniczym) – 1.5E5 to 150000

3*5

% przypisanie zmiennej domyślnej ans (answer)

c=a+b

%przypisanie wartości prostego wyrażenia

c

%prosty sposób wyświetlenia wartości zmiennej c

disp(a)

%wyświetlenie wartości zmiennej a

a=sin(pi/4)+b %przypisanie dla zmiennej a wartości prostego wyrażenia

Uwagi:

Operatory działań jak w Excelu: + – * / ^. Potęgowanie wykonywane przed zmianą znaku (-2^2= -4 ale 2^-1=0.5).

Nazwy zmiennych, muszą się zaczynać od litery, a potem dowolny ciąg liter, cyfr i znaków _. W nazwach zmien-

nych istotne są duże i małe litery.

Edycja ewentualnego błędu polecenia po przewinięciu pamięci poleceń - przy pomocy strzałek klawiatury

↓↑

.

Wybrane funkcje arytmetyczne

sqrt(w) – pierwiastek kwadratowy

abs(w) – wartość bezwzględna

exp(w) – funkcja wykładnicza (e

w

)

power(a, b) – potęga (a

b

)

log(w) – logarytm naturalny

log10(w) – logarytm dziesiętny

rem(x, y) – reszta z dzielenia x/y

fix(w), ceil(w), floor(w), round(w) – funkcje zaokrągleń

gdzie: w, a, b, x, y – dowolne wyrażenia obliczeniowe.

Przykład

x=3.45

y=(x^3-exp(-2*x))/(power(x,6)-2)















Inne użyteczne polecenia:

help

%pomoc globalna

help elfun

% pomoc – spis funkcji elementarnych

help rem

% pomoc na temat wybranej funkcji (tu: rem)

format long

% większa dokładność wyświetlanych wyników

format short

% dokładność podstawowa

demo

% program demonstracyjny Matlab'a

clc

% czyszczenie ekranu

clear

% usunięcie zmiennych z obszaru roboczego

Zadanie:

background image

Wykonać przykładowe obliczenie wyrażenia dla wartości x=2.43:





− 



 − √



− 



Operacje na tablicach

m=[1 2 3 ]

%przypisanie wartości elementom macierzy (wektor wierszowy)

m0= [1; 2; 1; 1; 0]

% przypisanie macierzy (wektor kolumnowy)

m1 = [1.1 2.1 3.55 ; -2 1 1; 1.44 0 0]

%macierz kwadratowa

m2=[1 1 1 1 1]
m3=[1 2 3 4 5]
m4 = m1 + m2

% dodawanie macierzy (uwaga na wymiary i rozmiar)

m5 = m4*m0

% mnożenie macierzy (uwaga na wymiary i rozmiar)

m5t = m5'

% macierz transponowana

m5o = m5^(-1)

% macierz odwrotna

m5*m5o

% sprawdzenie - macierz jednostkowa

det(m1)

% funkcja obliczenia wyznacznika macierzy kwadratowej

m3(3)

% dostęp do elementu macierzy (indeks elementu)

m1(2,3)

% dostęp do elementu macierzy (indeksy wiersz-kolumna)

Inny sposób definicji tablic:

M1=0:10:90
%Uwaga:

wartość_początkowa:krok:wartość_końcowa

Przykład: Zinterpretować rezultat wypełnienia tablicy:

M2=[M1; sin(M1*pi/180)]

Zadania:

1.

Wypełnić dwie macierze dwuwymiarowe (wiersze, kolumny) rozmiarze MxN, a następnie:

dodać je do siebie,

pomnożyć je przez siebie.

2.

Jaki rozmiar w obu wymiarach powinny mieć macierze, żeby dozwolone było wykonanie obu

operacji?

3.

Zastąpić operator mnożenia * operatorem dwuznakowym

.* .

Zinterpretować wynik.

4.

Wykonać dzielenie elementowe macierzy przez macierz wykorzystując operator

./

(obie ten sam

rozmiar w obydwu wymiarach. Zinterpretować wynik.

5.

Jaką macierz da się podnieść do kwadratu? Wypróbować operatory:

^

i

.^

6.

Wypróbować i wyjaśnić działanie kolejnych poleceń:

A=rand(5,5)
B=max(A)
C=max(max(A))
[i,k]=max(A)

Rozwiązanie układu równań liniowych

2x + 3y – 4 z = 5
x + y – z = 3,5
-4 y + 2,5 x – z = 2

Rozwiązanie:

A = [2 3 –4 ; 1 1 -1 ; 2.5 –4 –1]

% Uwaga: zachować kolejność zmiennych

B = [ 5 ; 3.5 ; 2]
X= A^(-1)*B

%wektor rozwiązań

A*X

%sprawdzenie – wynikiem powinien być wektor wyrazów wolnych B

Pierwiastki wielomianu

Funkcja

roots

(argumentem funkcji jest tablica współczynników [a

n

a

n-1

... a

0

])

background image

Przykład: Dla równania: 5x

4

+x

2

–2x –3 =0

roots ( [5 0 1 –2 -3] )

Zadanie:

Rozwiązać poniższy układ równań:

–x + y – 4.3 z + 2 v= 15
3x + y – v = 35
4 x + 0,5 y + z – 4.5 v = 2,2
12,5 y – z – 5 v = 12

Zmienne zespolone

Przykłady działań:

z1 = 5.0 + 5.0i

% zmienna zespolona

z2 = sqrt(-1)

%

i

to jednostka urojona ( √−1 )

z3 = angle(z1)

% kąt

ϕ

z4 = 4*z3

k1 = angle(0+1i)*180/pi

k2 = angle(1+0i)*180/pi

z1o=1/z1
z4=z1*z2

Sprawdzić i wyjaśnić wyniki operacji:

v1= log(0)
v2=log(-1)
v3=exp(log(-1))

Zadanie

1.

Zdefiniować dwie zmienne zespolone:

4.5+4.7i

–2.5 –5.6i

2.

Wykonać dodawanie i mnożenie obu liczb zespolonych.

3.

Przedstawić graficznie wynik dodawania dwóch liczb zespolonych w układzie kartezjańskim jako

sumę dwóch wektorów.


Wyszukiwarka

Podobne podstrony:
Matlab cw1 2 zaoczni
cz 1, Matlab moj
Image Processing with Matlab 33
MATLAB graf(1)
kod matlab
Cw08 Matlab2
Matlab wiadomości wstępne
Matlab Class Chapter 1
Matlab środowisko programu
MATLAB, cz 1
Instrukcja obiekt dynamiczny matlab 2015
Matlab Programming (ang)
Matlab Class Chapter 6
OBLICZENIA MATLAB, PWR, SEE - sprawka moje
sprawozdanie matlab

więcej podobnych podstron