Matlab - przykłady obliczeń.pdf
(
212 KB
)
Pobierz
68237230 UNPDF
Adam Szustalewicz
Modelowanie zjawisk przyrodniczych 2001/2002 w.2, 27.02.2002
Wyk“ad 2. Interakcyjne –rodowisko do prowadzenia oblicze«
MATLAB
1. Literatura, internet:
1. P. Drozdowski, Wprowadzenie do MATLAB-a, (skrypt) Politechnika Krakowska, Krak
ó
w, 1995
(jest w bibliotece instytutu),
2. Brz
ó
zka, Dorobczy«ski, Programowanie w MATLAB, NIKOM, Warszawa 1998,
3. B. Mrozek, Z. Mrozek, Matlab 5.x ... poradnik u»ytkownika, PLJ, Warszawa 1998,
4. materia“y internetowe zwi¡zane z MATLABem:
(a) http://www.mathworks.co.uk/access/helpdesk/help/techdoc/
demo_example.shtml#development_environment
(b) http://www.indiana.edu/ statmath/math/matlab/gettingstarted/
(c) http://bass.gmu.edu/matlab/
(d) http://www.mathworks.co.uk/support/
(e) http://www.mathworks.com/company/digest/index.shtml
(f) http://www.mathworks.com/matlabcentral/
leexchange/index.jsp
(g) ftp://ftp.mathworks.com/pub/books/
5. wesole:
(a) http://www.tcs.uni.wroc.pl/eciepecie/etapy.html
(b) http://rutcor.rutgers.edu/ bisrael/
2. Dwa przyk“ady oblicze« w MATLABie
%echo off;
% test linequ
clc; format long e; clear
echo on;
%
test linequ
% This program solves linear systems Ax = B.
% Remark. linequ.m is used.
% Solve the system Ax = B where:
A = [1 5 4 -3;
4 8 4 0;
1 3 0 -2;
1 4 7 2];
A
b = [-4; 8; -4; 10]
pause % dane
x = linequ(A,b);
disp(x);
res = b - A*x; disp(res);
pause % rozwiazanie i residuum
x = inv(A)*b
res = b - A*x
pause % odwracanie macierzy: inv
x = A\b;
disp(x’);
1
Adam Szustalewicz
Modelowanie zjawisk przyrodniczych 2001/2002 w.2, 27.02.2002
res = b - A*x; disp(res’);
pause % "lewe dzielenie": A\b
fprintf(’\n\n przyklad nastepny z macierza Hilberta:’)
pause
n=8;
A = hilb(n)
%disp(A);
pause % A
x=ones(n,1)
%disp(x);
pause % x
b = A*x
pause % b = prawa strona
x = linequ(A,b)
res = b - A*x
pause % linequ
x = inv(A)*b
res = b - A*x
pause % odwracanie macierzy: inv
x = A\b
res = b - A*x
pause % "lewe dzielenie": A\b
================= 2 =========================
clear, clc, echo off
I=1000;
disp(’ for i=1:I x=x+1.0/(i*i); ’);
x=0.0;
for i=1:I
r=1.0/(i);
x=x+r;
end
fprintf(’ x = %f\n’,x);
fprintf(’ x = %20.12e\n’,x);
disp(’ for i=I:-1:1 y=y+1.0/(i*i); ’);
y=0.0;
for i=I:-1:1
r=1.0/(i);
y=y+r;
end
fprintf(’ y = %f\n’,y);
fprintf(’ y = %20.12e\n’,y);
disp(’ roznica:’);
fprintf(’ x-y = %20.12e\n’,x-y);
if 1
disp(’ eps maszynowe:’);
e=1.0;
x=1.0; r=x+e; j=0;
while r~=x
e=e/2.0;
r=x+e;
j=j+1;
2
Adam Szustalewicz
Modelowanie zjawisk przyrodniczych 2001/2002 w.2, 27.02.2002
end
e=e+e;
j=j-1;
fprintf(’ xmin = %20.12e j = %i\n’,e,j);
end % if 1
3. Rzeczy wa»ne w Matlabie
1. Nazwy zmiennych
Nazwa zmiennej w Matlabie sk“ada siƒ z liter lub cyfr lub znaku podkre–lenia i musi rozpoczyna¢ siƒ od
litery.
2. Instrukcja podstawienia nie zako«czona –rednikiem powoduje wydrukowanie warto–ci podstawianej.
3. Stosowanie ma“ych lub du»ych liter w nazwach.
Litery du»e i ma“e s¡ przez Matlab rozr
ó
»niane. Mo»emy wy“¡czy¢ rozr
ó
»nianie du»ych i ma“ych liter.
Polecenia: ???
(a) casesen o
wy“¡cza rozr
ó
»nianie du»ych i ma“ych liter.
(b) casesen on
w“¡cza rozr
ó
»nianie du»ych i ma“ych liter.
4. Pierwsze«stwo operator
ó
w arytmetycznych
(1) podnoszenie do potƒgi (, .),
(2) mno»enia, dzielenia (* , .*, / ,./ ,
n
,.
n
),
(3) dodawanie, odejmowanie (+,
¡
).
Nawiasy okr¡g“e pozwalaj¡ na ustalenie wybranej kolejno–ci dzia“a«, a argumenty musz¡
pasowa¢
do
operatora dzia“ania.
5. Instrukcje warunkowe if
(1) if
<
warunek
>
,
<
instr1
>
;
<
instr2
>
; .. .
<
instr
n>
; end
(zamiast –rednik
ó
w mog¡ by¢ przecinki.)
(2) if
<
warunek
>
<
instrukcjeA
>
else
<
instrukcjeB
>
end
(3) if
<
warunek1
>
<
instrukcjeA
>
elseif
<
warunek2
>
<
instrukcjeB
>
elseif
<
warunek3
>
<
instrukcjeC
>
.. .
else
<
instrukcjeE
>
end
6.
<
warunki
>
, wyra»enia logiczne
W miejscu
<
warunku
>
mo»e by¢
(1) wyra»enie arytmetyczne: warto–ci¡ warunku jest prawda dla r
ó
»nej od zera warto–ci wyra»enia
arytmetycznego i fa“sz w wypadku zera,
(2) wyra»enie logiczne zbudowane za pomoc¡ operator
ó
w logicznych, podanych w kolejno–ci pierwsze«-
stwa:
relacje:
<
,
<
=,==,=,
>
,
>
=,
negacja: ,
koniunkcja:&,
alternatywa:
j
.
3
Adam Szustalewicz
Modelowanie zjawisk przyrodniczych 2001/2002 w.2, 27.02.2002
Przyk“ad z r
ó
wnania kwadratowego:
if b2-4*a*c==0&a=0, x=-b/(2*a), end
Wida¢, »e warto u»ywa¢ nawias
ó
w i rozstrzeli¢ tekst w kilku wierszach.
4. Zadania
1. Uruchomi¢ MATLABa. Wyda¢ komendƒ demo i obejrze¢ mo»liwo–ci programu. Wyda¢ komendƒ peaks
gra
ka tr
ó
jwymiarowa.
2. Zapozna¢ siƒ z komendami help, clc, who, whos, clear, echo, diary, delete.
3. Wyznaczy¢ warto–ci wyra»e« bez u»ycia Matlaba:
(a) 2 3 2
(b) -4 2
(c) dla a = [2 -1 5 0]; r = 0.9; b = [3 2 -1 4]; policzy¢
i. a * (1 + r) 10
ii. a .* (1 + r) 10
iii. a(1 + r) 10
iv. c = b + a - 3
v. c = 2 * a + a . b
vi. c = b ./ a
vii. c = b .
n
a
viii. c = a . b
ix. c = (2) . b + a
x. c = 2*b/3.0.*a
xi. c = b*2.*a
(d) Fraktal. Opracowa¢ procedurƒ znajduj¡c¡ pierwiastki r
ó
wnania
z
4
=1
w zbiorze liczb zespolonych, metod¡ Newtona. Wyprowadzi¢ odpowiednie wzory. Wybieraj¡c teraz
prostok¡t na p“aszczy»nie zespolonej mo»emy uruchamia¢ metodƒ Newtona przyjmuj¡c jako punkty
startowe punkty p“aszczyzny odpowiadaj¡ce kolejnym pikslom ekranu, znajduj¡cym sie w wybranym
prostok¡cie. Teraz, po przydzieleniu poszczeg
ó
lnym pierwiastkom r
ó
»nych kolor
ó
w, nale»y startowe
piksle za–wieca¢ w kolorze otrzymanego rozwi¡zania. Pi¡ty kolor oznacza¢ bƒdzie brak rozwi¡zania.
*
*
*
4
Plik z chomika:
protur
Inne pliki z tego folderu:
Maciej Krawiecki - Matlab Dla Odpornych.pdf
(281 KB)
Przypomnienie Matlaba.pdf
(554 KB)
Roman Salomon - 'Matlab' - podstawy i zastosowania.pdf
(1800 KB)
Lab Matlab.pdf
(1218 KB)
Zastosowanie obliczeń w Matlabie.doc
(892 KB)
Inne foldery tego chomika:
program
zestawy ćwiczeń
Zgłoś jeśli
naruszono regulamin