background image

6.05.2008

T

WORZENIE

 

ORAZ

 

OPERACJE

 

NA

 

MACIERZACH

O

 

ELEMENTACH

 

BĘDĄCYMI

 

LICZBAMI

 

ZESPOLONYMI

 

W

 

PROGRAMIE

 M

ATH

C

AD

 ®

Autor:
Radosław Krowiak

Spis treści

 1.Macierze liczb zespolonych w programie MathCad........................................................................2

 1.1.Tworzenie macierzy liczb zespolonych krok po kroku [1,2]....................................................2
 1.2.Zapis moduł-faza liczb zespolonych w programie MathCad...................................................3

 2.Operacje na macierzach....................................................................................................................4
 3.Przykłady zastosowań oraz interakcji z systemem operacyjnym [1]...............................................5

Bibliografia:................................................................................................................................7

1

background image

 1. Macierze liczb zespolonych w programie MathCad.

 1.1. Tworzenie macierzy liczb zespolonych krok po kroku [1,2].

1. Wcisnąć kombinację klawiszy [CTR M] lub kliknąć lewym 

klawiszem myszki na ikonkę Matrix or Vector  na pasku 
Macierzy, jak pokazuje zrzut ekranu obok:

2. Wpisać pożądane wymiary macierzy w okienku, 

które ukaże się po przejściu kroku pierwszego, jak 
na zrzucie obok:

3. Wypełnić macierz pożądanymi elementami macierz używając klawisza [TAB] do 

przesuwania się między pozycjami, jak na załączonym zrzucie:

Uwaga!

Należy pamiętać o symbolicznym zapisie liczb zespolonych w programie MathCad, otóż 
jednostkę urojoną i zapisujemy:

DOBRZE

BŁĄD

1i 

1*i

Jest tak ponieważ w drugim przypadku MathCad odczyta i jako zupełnie nową zmienną.

2

background image

 1.2. Zapis moduł-faza liczb zespolonych w programie MathCad.

Dla przypomnienia podaję równanie Euler'a opisujące przejście między dwoma zapisami:

{

=aib

z=re

=

r⋅cosisin 

{

r=

a

2

b

2

=

arctg 

b
a

W MathCadzie nie istnieje domyślny operator zapisu liczb zespolonych moduł-faza, jednak 
bardzo łatwo takowy utworzyć:

1. Zgodnie z przyjętymi powyżej oznaczeniami tworzymy nową funkcję operującą 

znakiem  (sam znak  kopiujemy z Extra Math Symbols w dziale quicksheets):

∢

r , :=r⋅cos i⋅sin

2. Wywołanie funkcji odbywać będzie się poprzez pasek Evaluation:

Na przykład:

 

3

π

3





1.5

2.598i

+

=

,

lub:

1

π

4





0.707

0.707i

+

=

Adnotacja:

Niekoniecznie musimy używać operatora  - równie dobrze możemy jawnie nazwać 
definiowaną funkcję, np. „phasor” czy też inną pasująca nam nazwę a funkcjonalność jej 
się nie zmieni, co ukazuje poniższy przykład:

1

( ) phasor

π

3





0.5

0.866i

+

=

3

Kliknięcie na zaznaczony na czerwono przycisk spowoduje 
pojawienie się wypełniacza, który należy wypełnić zgodnie z przyjętą 
notacją funkcji:

background image

 2. Operacje na macierzach [1].

W niniejszym rozdziale przedstawię sposoby operacji na macierzach w programie 
MathCad 13. Operacje przedstawiam w przejrzystej formie tabelki:

# Wywołanie Wygląd

Komentarz odnośnie wyniku lub działania

1

|

|M|

Zwraca wartość wyznacznika macierzy (dla wektora 
zwraca normę, wartość bezwzględną dla skalara)

2

^−1

M^−1

Zwraca macierz będącą odwrotnością M, jeśli macierz 
taka nie istnieje wysłany zostaje odpowiedni komunikat o 
błędzie

3

[Ctrl 1]

M^T

Zwraca macierz transponowaną do M

NxM

 (zamienia 

kolumny z wierszami) o wymiarze MxN

4

+

x + y

Wynik jest:
– skalarem – sumą x oraz y, jeśli x i y to skalary
– macierzą – jeśli X to macierz a y – skalar, każdy element
   wynikowej macierzy jest sumą y oraz odpowiedniego el. 
X
– macierzą – sumą X oraz Y, jeśli x i y to macierze o tych
   samych wymiarach

5

x – y

Patrz komentarz wyżej

6

[Ctrl 8]

x × y

Wynikiem jest iloczyn wektorowy macierzy X oraz Y

7

*

x * y

Wynikiem jest iloczyn skalarny macierzy X oraz Y

8

[Ctrl /]

x / y

Wynikiem jest iloczyn skalarny macierzy: x * y^-1

9

^

y ^ x

Dla macierzy wynik zależy od x:
– x = 0, zwraca macierz jednostkowa o wymiarach takich
   samych co Y
– x = –1, zwraca odwrotność macierzy Y
– x>0, wynikiem jest macierz Y pomnożona przez siebie x
   razy
– x<0 (bez –1), wynikiem jest odwrotność macierzy Y
   pomnożona przez siebie x razy

10

eigenvals

eigenvals(M)

Zwraca wektor, którego elementami są posortowane 
wartości własne macierzy M

11

eigenvec

eigenvec(M, 

z)

Zwraca pojedynczy, znormalizowany wektor, skojarzony z 
wartością własną z macierzy M

12

[

M[m,n

Zwraca element macierzy będący przecięciem m-tego 
wiersza oraz n-tej kolumny

Na następnej stronie zamieszczam przykłady operowania na macierzach o 

współczynnikach symbolicznych. Dla uproszczenia ilustracji zakładam iż wymiary 
macierzy wynoszą 2x2. Operacje nie obsługiwane przez MathCada symbolicznie są 
zilustrowane przykładami numerycznymi.

4

background image

#

Wygląd

Przykład operacji:

0

Założenia:

M

2

1i

+

100

54

1i

2

7

2

3

1

:=

eigenvals M

( )

16.732

3.589i

+

8.038

7.458i

3.694

4.869i

+

=

1

|M|

a

1

a

3

a

2

a

4









a

1

a

4

a

2

a

3

2

M^−1

a

1

a

3

a

2

a

4









1

1

a

1

a

4

a

2

a

3

a

4

a

3

a

2

a

1









3

M^T

a

1

a

3

a

2

a

4









T

a

1

a

2

a

3

a

4









4

x + y

a

1

a

3

a

2

a

4









b

1

b

3

b

2

b

4









+

a

1

b

1

+

a

3

b

3

+

a

2

b

2

+

a

4

b

4

+









5

x – y

a

1

a

3

a

2

a

4









b

1

b

3

b

2

b

4









a

1

b

1

a

3

b

3

a

2

b

2

a

4

b

4









6

x × y

13

3

50

33

6

2i

+

82

×

54

100 1i

584

21

26 1i

+

7

x * y

a

1

a

3

a

2

a

4









b

1

b

3

b

2

b

4









a

1

b

1

a

2

b

3

+

a

3

b

1

a

4

b

3

+

a

1

b

2

a

2

b

4

+

a

3

b

2

a

4

b

4

+









8

x / y

a

1

a

3

a

2

a

4









b

1

b

3

b

2

b

4









a

1

( )

b

4

b

1

( )

b

4

b

2

b

3

+

a

2

b

3

b

1

( )

b

4

b

2

b

3

+

+

a

3

( )

b

4

b

1

( )

b

4

b

2

b

3

+

a

4

b

3

b

1

( )

b

4

b

2

b

3

+

+

a

1

b

2

b

1

( )

b

4

b

2

b

3

+

a

2

b

1

b

1

( )

b

4

b

2

b

3

+

a

3

b

2

b

1

( )

b

4

b

2

b

3

+

a

4

b

1

b

1

( )

b

4

b

2

b

3

+

9

y ^ x

10

eigenvals(M)

eigenvals

b

1

b

3

b

2

b

4

















1
2

b

1

1
2

b

4

+

1
2

b

1

( )

2

2 b

1

b

4

b

4

( )

2

+

4 b

2

b

3

+

1

2

+

1
2

b

1

1
2

b

4

1
2

b

1

( )

2

2 b

1

b

4

b

4

( )

2

+

4 b

2

b

3

+

1

2

+









11

eigenvec(M, z)

eigenvec M 3.694

4.869i

+

,

(

)

0.044

0.056i

0.771

4.794i

10

4

×

0.018

0.632i

+









=

12

M[m,n

M

1 2

,

3

=

5

background image

 3. Przykłady zastosowań oraz interakcji z systemem 
operacyjnym [1].

Na przykładzie interakcji z programem MC Excel ukazać można ogrom użyteczności 
programu MathCad w pracy z macierzami i seriami danych:

1. Otworzyć pożądany plik *.xls i skopiować interesujące nas kolumny danych, jak 

pokazuje zrzut ekranu:

2. W programie MathCad wybrać opcję Paste Special z menu Edit:

6

background image

3. Wybrać Unformatted Text As Number i nacisnąć OK

4. Z wybranego pliku przykładowego otrzymać można macierz:

Komentarz:

Jest to bardzo przydatne rozwiązanie jeśli zauważymy iż kolumn i wierszy może być 
bardzo wiele – tutaj w jednym kroku otrzymujemy interesujące dane, na których już można 
operować dzięki adnotacji zawartej w przekopiowanej treści.

7

background image

Bibliografia:

[1] MathCad 12 quicksheets -> Vectors and Matrices

[2] MathCad 12 quicksheets -> Extra Math Symbols

8


Document Outline