mathcad2000 obl iteracyjne macierze wektory


MATHCAD 2000 - Obliczenia iteracyjne, macierze i wektory
Zmienne zakresowe 1. Tablicowanie funkcji
Wzór Opis
Ä„
: przecinek ;średnik
a := 0 , .. 2Å"Ä„ a, , 0, , Ctrl+Shift+P, /, 10, ,
10
Ctrl+Shift+P
a = sin(a) = a, = sin, (, a, ), =
0 0
tablicami
0.314 0.309 Wyniki prezentowane po lewej sÄ… , a nie - jak
dotychczas - skalarem. Aby wyświetlić kolejne elementy
0.628 0.588
tablicy należy ją uaktywnić (poprzez kliknięcie) i
0.942 0.809
przewinąć do szukanego elementu. Można również
1.257 0.951
zwiększyć liczbę wyświetlanych elementów tablicy
1.571 1
rozciągając jej dolną krawędz!!!
1.885 0.951
2.199 0.809
Poniżej przedstawiamy wykres stablicowanej funkcji
2.513 0.588
2.827 0.309
1
3.142 0
3.456 -0.309
3.77 -0.588
4.084 -0.809
0 2 4 6 8
4.398 -0.951
4.712 -1
1
Inny sposób (wektorowy)
Tu dla oszczędności miejsca rozrzedzono podział na n=10
n := 10
odcinków.
i := 0.. n
i
definicja wektora poprzez zmiennÄ… iterowanÄ…
ai := 2Å"Ä„
[
a, , i, :, 2, Ctrl+Shift+P, i, /, n
n
0 0
ëÅ‚ öÅ‚ ëÅ‚ öÅ‚
ìÅ‚0.628 ÷Å‚ ìÅ‚ ÷Å‚
0.588
wektorami
Teraz wyniki sÄ… nie tablicami a !!!
ìÅ‚ ÷Å‚ ìÅ‚ ÷Å‚
1.257 0.951
ìÅ‚ ÷Å‚ ìÅ‚ ÷Å‚
I tak przy okazji doszliśmy do naturalnej
ìÅ‚1.885 ÷Å‚ ìÅ‚ ÷Å‚
0.951
definicji wektora poprzez iterowanÄ… definicje
ìÅ‚ ÷Å‚ ìÅ‚ ÷Å‚
kolejnych jego elementów.
2.513 0.588
ìÅ‚ ÷Å‚ ìÅ‚ ÷Å‚
ìÅ‚3.142 ÷Å‚ ìÅ‚ ÷Å‚
a = sin(a) = 0
Dostęp do kolejnych elementów wektora
ìÅ‚ ÷Å‚ ìÅ‚ ÷Å‚
uzyskujemy stosujÄ…c operator indeksu "[".
3.77
ìÅ‚ ÷Å‚ ìÅ‚-0.588 ÷Å‚
ìÅ‚4 398 ÷Å‚ ìÅ‚ ÷Å‚
0 951
ìÅ‚4.398 ÷Å‚ ìÅ‚-0.951 ÷Å‚
ìÅ‚ ÷Å‚ ìÅ‚ ÷Å‚
ìÅ‚5.027 ÷Å‚ ìÅ‚-0.951 ÷Å‚
ìÅ‚5.655 ÷Å‚ ìÅ‚-0.588 ÷Å‚
ìÅ‚ ÷Å‚ ìÅ‚ ÷Å‚
0
íÅ‚6.283 Å‚Å‚ íÅ‚ Å‚Å‚
Zmienne zakresowe 2. Sumowanie szeregów
n := 10
1
ëÅ‚ öÅ‚
ìÅ‚ ÷Å‚
i := 0.. n 0.5
Uwaga
: do obliczenia powyższej sumy nie warto
ìÅ‚ ÷Å‚
a
definiować wektora , tylko od razu wpisać wzór
0.25
ìÅ‚ ÷Å‚
1
n
ai := ìÅ‚ ÷Å‚
1
0.125
i
= 1.999023
2 ìÅ‚ ÷Å‚
" i
2
0.0625
ìÅ‚ ÷Å‚
i 0
=
s := ai
ìÅ‚0.03125 ÷Å‚
co zaoszczędza zużycie pamięci i zwiększa szybkość
a =
"
ìÅ‚ ÷Å‚
obliczeń. (przedstawiony po lewej sposób obliczeń jest
i
ìÅ‚0.01563 ÷Å‚
nieefektywny - pokazano go jedynie dla celów
s = 1.999023
ìÅ‚0.00781 ÷Å‚
dydaktycznych).
ìÅ‚ ÷Å‚
ìÅ‚0.00391 ÷Å‚
ìÅ‚0.00195 ÷Å‚
ìÅ‚ ÷Å‚
íÅ‚0.00098 Å‚Å‚
Ćwiczenie 1
:
1. Stablicuj funkcję cos(x) w przedziale od 0 do 2Ą z podziałem na 20 odcinków.
2. Stablicuj dowolną funkcję f(x) w przedziale od x1 do x2 z krokiem "x, tak aby końce
zakresu jak i krok można było dynamicznie zmieniać.
n
1
3. Oblicz sumÄ™ szeregu dla n = 10, 100, 1000 i 10000. Wyniki przedstaw z
" 2
i
i 1
=
dokładnością 10 cyfr po przecinku. Zwróć uwagę na wolną zbieżność szeregu!!!
Wektory i macierze
UWAGA
: początkowy indeks wektorów i macierzy
0 1.
to a nie To domyślne zachowanie Mathcada
ORIGIN
możemy zmienić definiująć zmienną
ORIGIN := 1
Różne sposoby definiowania wektorów i macierzy
.
1 wystarczy określić kilka wyrazów wektora lub macierzy (pozostałe elementy przyjmą domyślne
wartości zerowe). Wymiary wektora-macierzy określają maksymalne indeksy użyte do tej pory
[
V, , :, 1.23
V1 := 1.23 V3 := 3.5
ëÅ‚1.23 öÅ‚
ìÅ‚ ÷Å‚
V = 0
ìÅ‚ ÷Å‚
ìÅ‚ ÷Å‚
3.5
íÅ‚ Å‚Å‚
Dla macierzy drugi indeks oddzielamy przecinkiem
[ przecinek :
A, , 0, , 0, , 1
A1, 1 := 1
analogicznie
A2, 3 := 5 A2, 2 := 3
ëÅ‚1 0 0 öÅ‚
A =
ìÅ‚ ÷Å‚
íÅ‚0 3 5 Å‚Å‚
2. można zastosować zmienne zakresowe i definicję wektora (macierzy) za pomocą wzoru
iteracyjnego (jak przedstawiono przy omawianiu zmiennych zakresowych) lub podajÄ…c
przecinkami
bezpośrednio kolejne elementy wektora oddzielone .
i := 1.. 3
ëÅ‚2 öÅ‚
ìÅ‚ ÷Å‚
zi :=
lub
wi := 2Å"i w = 4
ìÅ‚ ÷Å‚
ëÅ‚1 öÅ‚
ìÅ‚6 ÷Å‚
ìÅ‚ ÷Å‚
1
íÅ‚ Å‚Å‚
z = 3
ìÅ‚ ÷Å‚
3
j := 1.. 2
ìÅ‚7 ÷Å‚
7
íÅ‚ Å‚Å‚
Bi, j :=
1
ëÅ‚1 2 öÅ‚
ìÅ‚ ÷Å‚
2
dla macierzy dane czytane sÄ… wierszami!!!
B = 3 4
ìÅ‚ ÷Å‚
3
ìÅ‚5 6 ÷Å‚
íÅ‚ Å‚Å‚
4
5
6
3. Ctrl+M lub przycisk Insert Matrix na pasku narzędziowym Matrix.lub w menu Insert
ëÅ‚1 2 0 öÅ‚
Ctrl+M
A := A, :, , podać wymiary i wpisać kolejne elementy
ìÅ‚ ÷Å‚
íÅ‚0 3 4 Å‚Å‚
4. Poprzez generowanie
ëÅ‚1 0 0 öÅ‚ ëÅ‚1 0 0 öÅ‚
ìÅ‚ ÷Å‚ ìÅ‚ ÷Å‚
I := diag(z) I = 0 3 0 H := identity(3) H = 0 1 0
ìÅ‚ ÷Å‚ ìÅ‚ ÷Å‚
ìÅ‚0 0 7 ÷Å‚ ìÅ‚0 0 1 ÷Å‚
íÅ‚ Å‚Å‚ íÅ‚ Å‚Å‚
Operacje algebraiczne na wektorach i macierzach
ëÅ‚1 2 öÅ‚
ìÅ‚ ÷Å‚
ëÅ‚1 2 0 öÅ‚
A = B = 3 4
ìÅ‚ ÷Å‚ ìÅ‚ ÷Å‚
íÅ‚0 3 4 Å‚Å‚
ìÅ‚5 6 ÷Å‚
íÅ‚ Å‚Å‚
T ëÅ‚1 3 5 öÅ‚
Ctrl+1
transpozycja macierzy ( )
C := B C =
ìÅ‚ ÷Å‚
íÅ‚2 4 6 Å‚Å‚
BAD!
niezgodne wymiary macierzy
A + B
A + B =
ëÅ‚2 5 5 öÅ‚ ëÅ‚0 1 5 öÅ‚
suma i różnica macierzy
A + C = C - A =
ìÅ‚ ÷Å‚ ìÅ‚ ÷Å‚
íÅ‚2 7 10 Å‚Å‚ íÅ‚2 1 2 Å‚Å‚
7 10
ëÅ‚ öÅ‚
iloczyn macierzowy
Å"
AB =
ìÅ‚ ÷Å‚
íÅ‚29 36 Å‚Å‚
ëÅ‚1 8 8 öÅ‚
ìÅ‚ ÷Å‚
D := BÅ"A D = 3 18 16
ìÅ‚ ÷Å‚
ìÅ‚5 28 24 ÷Å‚
íÅ‚ Å‚Å‚
wyznacznik macierzy (tylko dla mac. kwadratowych)
D = 0
ëÅ‚43.866 öÅ‚
ìÅ‚ ÷Å‚
wartości własne macierzy
eigenvals(D) = -0.866
ìÅ‚ ÷Å‚
ìÅ‚ ÷Å‚
0
íÅ‚ Å‚Å‚
Inne rzadziej używane funkcje
Ile kolumn i wierszy
cols(A) = 3 rows(A) = 2
ëÅ‚2 öÅ‚
Ctrl+6
wyciągnięcie n-tej kolumny ( )
A)#2*# =
ìÅ‚ ÷Å‚
íÅ‚3 Å‚Å‚
ëÅ‚10 öÅ‚
ìÅ‚ ÷Å‚
iloczyn wektorowy (Ctrl+8)
w × z = -8
ìÅ‚ ÷Å‚
ìÅ‚ ÷Å‚
2
íÅ‚ Å‚Å‚
szukanie elementów o największej lub najmniejszej
max(B) = 6 min(B) = 1
wartości
Operacje na blokach
Służą do tego specjalne funkcje blokowe:
" submatrix() - wyciągnięcie bloku z macierzy
" augment() - sklejenie dwóch macierzy w poziomie
" stack() - sklejenie macierzy w pionie
Opis poszukaj samodzielnie w "Helpie" lub "Recource Center"
Ćwiczenie 2
1. Zdefiniuj na różne sposoby następujące macierze:
ëÅ‚1 0 0 0 1 öÅ‚ ëÅ‚2 0 0 0 0 öÅ‚
ìÅ‚0 2 0 0 2 ÷Å‚ ìÅ‚0 1 0 0 0 ÷Å‚
ìÅ‚ ÷Å‚ ìÅ‚ ÷Å‚
A := 0 0 3 0 3 B := 0 0 1 0 0
ìÅ‚ ÷Å‚ ìÅ‚ ÷Å‚
ìÅ‚0 0 0 4 4 ÷Å‚ ìÅ‚0 0 0 1 0 ÷Å‚
ìÅ‚ ÷Å‚ ìÅ‚ ÷Å‚
íÅ‚1 2 3 4 5 Å‚Å‚ íÅ‚0 0 0 0 1 Å‚Å‚
2
2. Oblicz , - B AB BA
, ,
A + B A Å" Å"
2
3. Oblicz macierz , znajdz max i min, oblicz wyznacznik i mac.
C := (A - B)
transponowanÄ… z C
4. Zdefiniuj funkcje row(A,i) i col(A,j) do wyciÄ…gania pojedynczego wiersza i kolumny, a
następnie oblicz za ich pomocą wektory v1 = row(C,2) i v2 = col(C,3)
5. Wyciągnij środkowy blok 3x3 z macierzy C (znajdz opis i użyj funkcji submatrix(...)).
6. Doklej wektor v1 do macierzy A jako jej ostatni wiersz. Podobnie doklej wektor v2 do
macierzy B jako jej pierwsza (lewa) kolumna. Użyj funkcji stack() i augment()
7. Wykonaj zadania z punktów 5 i 6 iteracyjnie - bez korzystania z funkcji blokowych
Rozwiązywanie układów równań liniowych AX=B
ORIGIN := 1
i := 1.. 3 j := 1.. 3
UWAGA: zniszczenie poprzednich definicji macierzy
A := 0 B := 0
definicja macierzy A i wektora B
ëÅ‚1 1 1 öÅ‚ ëÅ‚4 öÅ‚
ìÅ‚ ÷Å‚ ìÅ‚ ÷Å‚
j
Ai, j := i A = 2 4 8 Bi := i + j B = 5
ìÅ‚ ÷Å‚ ìÅ‚ ÷Å‚
ìÅ‚3 9 27 ÷Å‚ ìÅ‚6 ÷Å‚
íÅ‚ Å‚Å‚ íÅ‚ Å‚Å‚
1. RozwiÄ…zanie poprzez macierz odwrotnÄ…
(dla małych układów)
sprawdzenie czy macierz nieosobliwa det A <> 0
A = 12
obliczenie macierzy odwrotnej
3 -1.5 0.333
ëÅ‚ öÅ‚
ìÅ‚ ÷Å‚
1
A1 := A- A1 = 2.5 2 -0.5
ìÅ‚- ÷Å‚
ìÅ‚ ÷Å‚
0.5 -0.5 0.167
íÅ‚ Å‚Å‚
rozwiÄ…zanie
UWAGA
: wyniki można również obliczyć symboliczn
ëÅ‚6.5 öÅ‚
ìÅ‚ ÷Å‚
-3 1
ëÅ‚ öÅ‚
X := A1Å"B X = -3
ìÅ‚ ÷Å‚
3
13
ëÅ‚ öÅ‚
ìÅ‚ ÷Å‚
2 3
ìÅ‚ ÷Å‚
ìÅ‚0.5 ÷Å‚
2
ìÅ‚ ÷Å‚
íÅ‚ Å‚Å‚
ìÅ‚ ÷Å‚
-5 -1
ìÅ‚ ÷Å‚
2
A1 X -3
ìÅ‚ ÷Å‚
ìÅ‚ 2 2 ÷Å‚
ìÅ‚ ÷Å‚
1
ìÅ‚ ÷Å‚
1 -1 1 ìÅ‚ ÷Å‚
ìÅ‚ ÷Å‚
2
íÅ‚ Å‚Å‚
2 2 6
íÅ‚ Å‚Å‚
2. RozwiÄ…zanie przez zastosowanie funkcji ()
lsolve (zalecane dla dużych układów)
13
ëÅ‚ öÅ‚
ìÅ‚ ÷Å‚
2
ëÅ‚6.5 öÅ‚
ìÅ‚ ÷Å‚ ìÅ‚ ÷Å‚
X := lsolve(A , B) X = -3 X -3
ìÅ‚ ÷Å‚ ìÅ‚ ÷Å‚
ìÅ‚0.5 ÷Å‚ ìÅ‚ ÷Å‚
1
íÅ‚ Å‚Å‚
ìÅ‚ ÷Å‚
2
íÅ‚ Å‚Å‚
Wektory i macierze funkcyjne przykład
2
ëÅ‚ öÅ‚
sin(x) x - 2
Mx) :=
(
ìÅ‚ ÷Å‚
íÅ‚cos(x) x Å‚Å‚
1 1 2
ëÅ‚ öÅ‚
Å"Ä„ - 2
ìÅ‚ ÷Å‚
2 36
ëÅ‚0.841 -1 öÅ‚ Ä„
ëÅ‚ öÅ‚
ìÅ‚ ÷Å‚
M1) = M
(
ìÅ‚ ÷Å‚
ìÅ‚ ÷Å‚
ìÅ‚ ÷Å‚
6
0.54 1 1 1
íÅ‚ Å‚Å‚
íÅ‚ Å‚Å‚
Å" 3 Å"Ä„
ìÅ‚ ÷Å‚
2 6
íÅ‚ Å‚Å‚
Ćwiczenie 3
1. Rozwiąż układ równań AX=B:
1
ëÅ‚1 2 3 öÅ‚ ëÅ‚ öÅ‚
ìÅ‚ ÷Å‚ ìÅ‚ ÷Å‚
dla p = 1, 5 i 9
A := 4 5 6 B := 7
ìÅ‚ ÷Å‚ ìÅ‚ ÷Å‚
ìÅ‚7 8 p ÷Å‚ ìÅ‚13 ÷Å‚
p
íÅ‚ Å‚Å‚ íÅ‚ Å‚Å‚
2. Czy istnieje rozwiązanie dla p = 9 i jeśli tak to jak je otrzymać ???
3. Wygeneruj losowo (funkcja rnd()) układ równań dla n = 10, 100 i 1000 niewiadomych i
porównaj dokładność rozwiązania.


Wyszukiwarka

Podobne podstrony:
3 Mathcad Obl symboliczne
lab10 macierze wektory
mathcad wprowadzenie funkcje macierze
Część II MatLab (Środowisko, Praca Konsolowa, Wektory i Macierze)
3 Normy wektorów i macierzy
[MathCAD] Macierze
Matlab Struktury Danych Wektory i Macierze
Matlab Struktury Danych Wektory i Macierze
3 Wartości i wektory własne macierzy
zachowania macierzynskie klaczy i ich nieprawidlowosci
Mathcad Laborki K1 MG

więcej podobnych podstron