MATHCAD-W2 strona 1
11. Macierze i wektory
Macierz jest prostok
ą
tn
ą
tablic
ą
liczb o okre
ś
lonej liczbie kolumn i wierszy. Wektor jest tablica
posiadaj
ą
ca tylko jedn
ą
kolumn
ę
lub jeden wiersz.
Dla macierzy i wektorów istotna jest warto
ść
zmiennej systemowej ORIGIN, okre
ś
laj
ą
cej jak
Mathcad numeruje elementy kolumn i wierszy.
Je
ś
li ORIGIN=0, to numeracja zaczyna si
ę
od zera:
a
0 0
,
a
1 0
,
a
2 0
,
a
0 1
,
a
1 1
,
a
2 1
,
a
0 2
,
a
1 2
,
a
2 2
,
b
0
b
1
b
2
Je
ś
li ORIGIN=1, to numeracja zaczyna si
ę
od jedynki:
a
1 1
,
a
2 1
,
a
3 1
,
a
1 2
,
a
2 2
,
a
3 2
,
a
1 3
,
a
2 3
,
a
3 3
,
b
1
b
2
b
3
Warto
ść
zmiennej ORIGIN mo
ż
na wy
ś
wietli
ć
, za pomoc
ą
polecenia ORIGIN= lub nada
ć
warto
ść
wykorzystuj
ą
c globaln
ą
definicj
ę
zmiennej.
ORIGIN
1
=
ORIGIN
1
≡
ORIGIN
1
=
11.1. Definiowanie macierzy
Definicja bezpo
ś
rednia
•
Tablic
ę
wprowadzamy do dokumentu za pomoc
ą
polecenia Insert|Matrix skrótu
klawiszowego Ctrl+m lub za pomoc
ą
palety Martix. Nast
ę
pnie po ustaleniu liczby kolumn i
wierszy, nale
ż
y wprowadzi
ć
w "miejsca braku" warto
ś
ci poszczególnych elementów.
A
1.5
3
1
2
2.67
−
1
1
−
8
3.5
:=
B
1
2
3
:=
I
1
0
0
0
1
0
0
0
1
:=
Do elementu tablicy odwołujemy si
ę
poprzez indeks. Element tablicy uzyskamy pisz
ąć
nazw
ę
tablicy, nast
ę
pnie nawias kwadratowy otwieraj
ą
cy i warto
ś
ci indeksów.
A
1 1
,
1.5
=
Piszemy A[1,1=
Definicja po
ś
rednia
•
Przy definicji po
ś
redniej macierzy posługujemy si
ę
zmiennymi zakresowymi o warto
ś
ciach
całkowitych.
i
1 3
..
:=
j
1 5
..
:=
C
i j
,
i
j
+
:=
X
i
2 i
1
−
(
)
⋅
1
+
:=
Piszemy X[i:2*(i-1)+1
Piszemy C[i,j:i+j
C
2
3
4
3
4
5
4
5
6
5
6
7
6
7
8
=
X
1
3
5
=
MATHCAD-W2 strona 2
definicja macierzy na podstawie danych zamieszczonych w pliku tekstowym.
•
Jeli plik z danymi znajduje si
ę
w tym samym katalogu co arkusz Mathcada, to mo
ż
na go
pobra
ć
za pomoc
ą
polecenia READPRN. Utworzon
ą
tablice mo
ż
na wy
ś
wietli
ć
pisz
ą
c
nazwa_tablicy=
W
READPRN "macierz.txt"
(
)
:=
cols W
(
)
3
=
W
1
−
4
7
1
2
5
8
1
3
6
9
−
1
=
rows W
(
)
4
=
11.2. Operacje na tablicach
Operacje na macierzach wykonujemy posługuj
ą
c si
ę
palet
ą
macierzow
ą
Matrix.
A
1.5
3
1
2
2.67
−
1
1
−
8
3.5
=
A
36.687
−
=
A
T
1.5
2
1
−
3
2.67
−
8
1
1
3.5
=
A
1
−
0.473
0.068
0.155
−
0.218
0.17
−
0.014
−
0.363
−
0.409
0.273
=
A B
⋅
2.5
21.66
13.5
=
B
T
A
⋅
10.5
0.34
−
25.5
(
)
=
A A
1
−
⋅
1
0
0
0
1
0
0
0
1
=
sin A
( )
→
0.997
0.141
0.841
0.909
0.454
−
0.841
0.841
−
0.989
0.351
−
=
A
T
( )
1
〈 〉
1.5
2
1
−
=
A
1
〈 〉
1.5
3
1
=
A
T
( )
1
〈 〉
T
1.5 2
1
−
(
)
=
MATHCAD-W2 strona 3
11.3. Rozwi
ą
zywanie układów równa
ń
liniowych
Rozwi
ą
za
ć
układ równa
ń
A*x=B
A
1.5
3
1
2
2.67
−
1
1
−
8
3.5
=
B
1
2
3
=
A
36.687
−
=
x
A
1
−
B
⋅
:=
Sprawdzenie:
x
0.181
−
0.954
0.636
=
A x
⋅
1
2
3
=
12. Opracowanie wyników do
ś
wiadcze
ń
, histogram, regresja liniowa
Dane dotycz
ą
ce starych samochodów znajduj
ą
si
ę
w pliku samochody.txt. Pierwsza kolumna
danych to wiek samochodów, dtuga przebieg, trzecia to cena w $.
Wyznaczy
ć
histogram dla kategorii wiek oraz lini
ę
regresji dla kategorii wiek i przebieg.
Podaj przewidywany przebieg dla samochodu 15-letniego.
12.1. Przygotowanie danych
B
READPRN "samochody.txt"
(
)
:=
cols B
( )
3
=
rows B
( )
30
=
Macierz B ma 30 wierszy, dlatego wyswietlona zostala w stylu
tabela Table. Po kliknieciu wewnatrz tabeli pojawiaja sie paski
do przewijania.
Zmiana stylu Format|Result, lub po dwukrotnym kliknieciu na
tabele z danymi.
B
1
2
3
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
11.5
88000
1195
13.5
120000
495
7.5
41000
3495
13.5
103000
750
11.5
101000
895
13.5
124000
850
10.5
82000
1295
3.5
39000
4995
10.5
77000
1595
10.5
65000
1495
10.5
78000
1295
6.5
56000
3495
12.5
97000
800
6.5
52000
2695
12.5
83000
895
10.5
70000
1495
=
Wiek
B
1
〈 〉
:=
Przebieg
B
2
〈 〉
1000
:=
Cena
B
3
〈 〉
:=
corr Wiek Cena
,
(
)
0.969
−
=
corr Cena Przebieg
,
(
)
0.895
−
=
corr Wiek Przebieg
,
(
)
0.906
=
MATHCAD-W2 strona 4
12.2. HISTOGRAM
k
1 max Wiek
(
)
1
+
..
:=
p
k
k
:=
A
histogram p Wiek
,
(
)
:=
A
1
2
1
2
3
4
5
6
7
8
9
10
11
12
13
1.5
0
2.5
0
3.5
1
4.5
3
5.5
0
6.5
4
7.5
1
8.5
1
9.5
3
10.5
6
11.5
4
12.5
3
13.5
4
=
p
1
1
2
3
4
5
6
7
8
9
10
11
12
13
14
1
2
3
4
5
6
7
8
9
10
11
12
13
14
=
WRITEPRN "hist.txt"
(
)
A
:=
histogram(n, data)
Pierwszy parametr (n), to ci
ą
g definiuj
ą
ccy przedziały klasowe:
p
1
pocz
ą
tek pierwszego przedziału
<p
1
,p
2
)
p
2
pocz
ą
tek drugiego przedziału itd.
p
ost
ostatni element ci
ą
gu definiuje prawy kraniec ostatniego przedziału
Drugi parametr (data) to warto
ś
ci cechy, dla której wyznaczony b
ę
dzie histogram.
Funkcja zwraca macierz dwukolumnow
ą
:
-pierwsza kolumna zawiera
ś
rodki przedziałów kladowych,
-druga kolumna liczebno
ś
ci w poszczególnych przedziałach
2
3
4
5
6
7
8
9
10
11
12
13
14
0
1
2
3
4
5
6
7
HISTOGRAM
Wiek
L
ic
zb
a
sa
m
o
ch
o
d
ó
w
MATHCAD-W2 strona 5
12.2. REGRESJA LINIOWA
b
a
line Wiek Przebieg
,
(
)
:=
a
7.348
=
b
3.793
=
x
0 0.1
,
16
..
:=
T x
( )
a x
⋅
b
+
:=
line(vx, vy)
Parametry vx oraz vy to wektory zawierajace wartosci dwóch cech.
Funkcja zwraca wektor dwuelementowy, zawieraj
ą
cy współczynniki funkcji regresji liniowej y=ax+b.
Pierwszy element wektora to warto
ść
b, drugi to warto
ść
a.
0
2
4
6
8
10
12
14
16
15
30
45
60
75
90
105
120
135
150
Samochody
Trend liniowy
Samochody
Trend liniowy
Wiek
P
rz
eb
ie
g
(
1
0
0
0
k
m
)
Inny sposób wyznaczenia współczynników regresji liniowej
a
slope Wiek Przebieg
,
(
)
:=
b
intercept Wiek Przebieg
,
(
)
:=
a
7.348
=
b
3.793
=
MATHCAD-W2 strona 6