P
OLITECHNIKA
´
S
L ˛
ASKA
W
YDZIAŁ
I
N ˙
ZYNIERII
B
IOMEDYCZNEJ
Sprawozdanie
Wprowadzenie do MATLABa
Autor: ANNA ZIELI ´
NSKA
Prowadz ˛
acy ´cwiczenie: PAWEŁ SZWARC
Gliwice, 13 marca 2012
Spis treści
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
6
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
6
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
7
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
7
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
8
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
8
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
9
Spis rysunków
Wykres liczb zespolonych o losowej wartości części rzeczywistej i uro-
jonej
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
6
Wykres losowych liczb zespolonych rozmieszczonych na okręgu.
. . .
7
1. Opis zawartości
W sprawozdaniu zawarte są kody utworzone w środowisku MATLAB do ko-
lejnych zadań podanych w instrukcji. Obrazy, wykresy i funkcje umieściłam bezpo-
średnio w paragrafie opisującym dane zadanie, zamieściłam również wykaz wykresów
zawartych w sprawozdaniu.
2. Zadania
2.1
Zadanie 1
Zapoznałam się z wyglądem okien środowiska MATLAB.
2.2
Zadanie 2
a =[1 2 3 4 ] ;
A=[1 2 3 ; 4 5 6 ; 7 8 9 ] ;
a1 = 1 : 5 ;
c = 1 : 0 . 5 : 5 ;
d =5: −1:1;
B=A ( 1 : 2 , [ 1 , 3 ] ) ;
C=A ( 1 , 2 , : ) ;
F=A( [ 2 1 3 ] , [ 3 2 1 ] ) ;
b=A(
end
, : ) ;
G =[ a ,
5 ; b 10 1 1 ] ;
G ( : , 1 : 2 : 5 ) = [ ] ;
H=A ’ ;
I=A∗H;
J=A. ∗H;
L=A==H;
M=A==5;
2.3
Zadanie 3
D=
rand
( 1 0 )
E=D ( 2 : 2 :
end
,
1 : 2 :
end
)
2.4
Zadanie 4
Funkcja rand generuje liczby z pseudolosowym rozkładem prawdopodobieństwa
z przedziału < 0, 1 >. Natomiast funkcja randn działa jak funkcja rand, z tą różnicą,
że generowane liczby podlegają rozkładowi normalnemu.
A=
rand
( 5 , 5 ) ;
B=
randn
( 5 , 5 ) ;
4
2. Zadania
Efekt działania skryptu:
A =
0.1380
0.5990
0.5172
0.9889
0.6731
0.9902
0.4079
0.1569
0.7509
0.3924
0.0077
0.8261
0.9075
0.7145
0.5380
0.2870
0.4398
0.1917
0.1541
0.5333
0.0387
0.6699
0.9499
0.8780
0.9673
B =
1.8572
0.7981
-0.5717
0.1419
1.2143
1.2809
-0.0738
0.1681
-1.3264
-0.0241
1.0519
-0.0328
-1.7058
-0.7525
-1.5385
0.0775
0.1257
-1.4973
0.3587
0.0717
0.7739
-1.9137
0.7511
1.1305
0.5092
2.5
Zadanie 5
%a )
c l e a r a l l
c l o s e a l l
c l c
%b )
A=
rand
( 4 , 3 )
B=
rand
( 3 , 4 )
%c )
C=A∗B
%d )
C ( :
,
end
) = [ ]
%e )
F=A. ∗C
2.6
Zadanie 6
%R = normrnd (mu, sigma ,m, n )
%s r e d n i a mu=5 o d c h y l e n i e sigma =0.5
R1 = normrnd ( 5 , 0 . 5 , [ 2 0 0 , 1 ] ) ;
2.6. Zadanie 6
5
R2 = normrnd ( 5 , 0 . 5 , [ 2 0 0 0 , 1 ] ) ;
R3 = normrnd ( 5 , 0 . 5 , [ 2 0 0 0 0 , 1 ] ) ;
R4 = normrnd ( 5 , 0 . 5 , [ 2 0 0 0 0 0 , 1 ] ) ;
d l u g o s c =
log10
( [ 2 0 0 , 2 0 0 0 , 2 0 0 0 0 ] ) ;
d l u g o s c = 1 : 4 ;
s r 1=
mean
( R1 )
s r 2=
mean
( R2 )
s r 3=
mean
( R3 )
s r 4=
mean
( R4 )
s i g 1 =
std
( R1 ) ;
s i g 2 =
std
( R2 ) ;
s i g 3 =
std
( R3 ) ;
s i g 4 =
std
( R4 ) ;
s r e d n i a = [ s r 1 , s r 2 , s r 3 , s r 4 ] ;
STD = [ s i g 1 s i g 2 s i g 3 s i g 4 ] ;
w e z S r e d n i a = o n e s ( 4 , 1 ) ∗ 5 ;
wezSTD = o n e s ( 4 , 1 ) ∗ 0 . 5 ;
subplot
( 2 , 1 , 1 )
plot
( d l u g o s c , s r e d n i a , ’−∗r ’ , d l u g o s c , w e z S r e d n i a ,
’ : g ’ )
x l ab e l
( ’ l o g 1 0 ( n ) ’ )
legend
( ’ S r e d n i a p r o b k i ’ , ’ Zadana s r e d n i a ’ )
subplot
( 2 , 1 , 2 )
plot
( d l u g o s c , STD,
’−∗g ’ , d l u g o s c , wezSTD ,
’ : b ’ )
x l ab e l
( ’ l o g 1 0 ( n ) ’ )
legend
( ’ O d c h y l e n i e p r o b k i ’ , ’ Zadane o d c h y l e n i e ’ )
6
2. Zadania
Rys. 2.1:
Wykres liczb zespolonych o losowej wartości części rzeczywistej i urojonej
2.7
Zadanie 7
c l o s e a l l
;
c l e a r a l l
;
c l c
;
wektor =
rand
( 1 0 0 0 , 1 ) ;
reshape
( wektor , 1 0 , 1 0 0 )
2.8
Zadanie 8
imag
= ( 1 0 ∗
rand
( 1 0 0 0 , 1 ) ) − 5 ;
r e a l
= ( 1 0 ∗
rand
( 1 0 0 0 , 1 ) ) − 5
m a c i e r z Z e s p o l o n a = complex (
imag
,
r e a l
)
modul =
abs
( m a c i e r z Z e s p o l o n a )
maxZespolona =
max
( modul )
plot
( m a c i e r z Z e s p o l o n a , ’+ ’ )
hold
on
r = maxZespolona ;
hold
on
plot
( r , ’ g ∗ ’ )
hold
on
[ x , y , z ] =
cylinder
( r , 2 0 0 ) ;
plot
( x ( 1 , : ) , y ( 1 , : ) )
2.9. Zadanie 9
7
Rys. 2.2:
Wykres losowych liczb zespolonych rozmieszczonych na okręgu.
2.9
Zadanie 9
Funkcja prostokąt:
function
[ p o l e , obwod ] = p r o s t o k a t ( bok 1 , b o k 2 )
obwod = ( b o k 1+b o k 2 ) ∗ 2 ;
p o l e = b o k 1 ∗ b o k 2 ;
end
Wywołanie funkcji prostokąt:
b o k 1 = 5 ;
b o k 2 = 3 ;
[ p , obw]= p r o s t o k a t ( bok 1 , b o k 2 ) ;
2.10
Zadanie 10
Ciało funkcji:
function
[ B, C, l i c z b y W i e k s z e , l i c z b y Z z a k r e s u ]= m o j a f u n k c j a ( A, gd , gg )
i f
gd < 0 | | gg > 1 | | gd > gg
zwr = 1
e l s e
zwr=0
8
2. Zadania
end
s w i t c h zwr
c a s e 1
B=0;
C=0;
l i c z b y W i e k s z e =0;
l i c z b y Z z a k r e s u =0;
disp
( ’ Błędna w a r t o ś ć ’ )
c a s e 0
x=
s i z e
(A, 1 )
y=
s i z e
(A, 2 )
B=
zeros
( x , y )
C=
zeros
( x , y )
B(A( : , : ) > gd)=1
B(A( : , : ) < = gd)=0
C(A( : , : ) > = gd & A<=gg )=1
C(A( : , : ) < gd & A>gg )=0
l i c z b y W i e k s z e =
sum
(
sum
(B) )
l i c z b y Z z a k r e s u =
sum
(
sum
(C) )
end
end
Wywołanie funkcji:
A=
rand
( 1 0 , 1 0 )
gd = 0 . 4 5 ;
gg = 0 . 6 5 ;
[ B, C, r , t ]= m o j a f u n k c j a (A, gd , gg ) ;
2.11
Zadanie 11
wektor =
rand
( 1 0 , 1 )
M a c i e r z =
rand
( 3 0 , 1 0 ) ∗ 1 0
[ Y, I ] =
s o r t
( wektor ,
’ d e s c e n d ’ )
M a c i e r z 2=M a c i e r z ( : , I )
2.12
Zadanie 12
A=
rand
( 5000 ) ;
B=
rand
( 5000 ) ;
t i c
C=A. ∗B ;
2.13. Zadanie 13
9
toc
t i c
f o r
i =1:5000
f o r
j =1:5000
C( i
, j )=A( i
, j ) ∗B( i
, j ) ;
end
end
toc
W pierwszym przypadku czas obliczeń dla iloczynu tablicowego wyniósł: 0.398438
sekund. W przypadku drugim czas obliczeń dla pętli for wyniósł: 4.178329 sekund.
2.13
Zadanie 13
a = 1 . 4 ;
a1 = i n t 8 ( a ) ;
a2 = u i n t 8 ( a ) ;
l o s o w a M a c i e r z =
f l o o r
(
rand
( 1 0 , 1 0 ) ∗ 2 5 5 )