Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

МЕТОДИЧКА ПО MAPLE и MATHCAD

.pdf
Скачиваний:
342
Добавлен:
10.05.2015
Размер:
8.75 Mб
Скачать

151

График Contour Plot

Что бы получить данный результат были активизированы позиции:

На вкладке Appearance позиции Fill Cotours, Contour Lines, Solid Color.

На вкладке Special позиции Fill, Draw Lines, Auto Contour, Numbered

График Data Points

Что бы получить данный результат были активизированы позиции:

На вкладке Appearance позиции No Lines, Draw Points, Symbol dots, Size 1, Colormap

152

Что бы получить данный результат были активизированы позиции на вкладке Appearance: Fill Arrows, Solid Color, Wire Arrows, Solid

Color

Что бы получить данный результат были активизированы позиции:

На вкладке Appearance позиции Fill Bars, Colormap, No Lines

153

На вкладке Special позиция Matrix

Что бы получить данный результат были активизированы позиции: На вкладке Appearance были активизированы следующие пози-

ции Fill Patches, Colormap, Wire Patches, Colormap

Построение графика функции двух переменных заданной дискретными значениями функции и аргументов.

Построение графика в этом случае отличается от выше рассмотренного только тем, что вместо функции f(x,y) используются ее дискретные значения, заданные в узлах координатной сетки Ui,j:=f(i h,j h) Пример построения графика функции двух дискретных аргументов Создаем дискретный массив значений функции в узлах координатной сетки

a:=0, b:=60

n:=60, i:=1..n, j:=1..n hx:=1,hy:=1

 

 

 

b a

2

 

2

 

f (x, y): exp 0.1

 

b a

 

x

 

 

y

 

 

2

2

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

cos 0.1

 

 

b a

2

 

2

 

 

 

b a

 

 

x

 

 

y

 

 

2

2

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Ui, j : f (i hx, j hy )

154

В заготовке графика в точке маркера вводим имя массива в данном случае это U

Запись и считывание данных в MathCad

Структурированный файл данных можно создать в Mathcad с использованием функции WRITEPRM("file"):=A, где A - сохраняемые в файле матрица или вектор.

Для считывания структурированного файла данных (данных записанных в файл в виде таблицы или столбца) применяется функция

READPRN("file"),

Пример

Запись матрицы А на диск D: в файл my_Matr.dat WRITEPRN("D:\my_Matr.dat"):=A

Считывание с диска матрицы D: матрицы и присваивание ее значений матрице С

C:=READPRN("D:\my_Matr.dat")

155

Приложение 1 Примеры программ на языке Mathcad

Разложение симметричной положительно определенной матрицы метод Холецкого (метод корня квадратного)

 

 

 

 

 

 

 

 

 

 

 

 

 

Cholesky(C)

l1 1 C1 1

 

 

 

 

 

 

n cols(C)

 

 

 

 

 

 

i 1

 

 

 

 

 

 

 

 

 

 

while i n

 

 

 

 

 

 

 

i i 1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

for j 1 n

 

 

 

 

 

 

 

lj 1

 

Cj 1

 

 

 

 

 

 

 

l

 

 

 

 

 

 

 

 

 

 

 

 

1 1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1

 

 

 

 

 

 

 

i 1

2

 

 

li i

 

 

li k

2

 

 

Ci i

 

 

 

 

 

 

 

k 1

 

 

 

for j i n

 

 

 

 

 

 

 

 

 

 

 

 

 

 

i 1

 

 

 

 

 

 

 

 

Cj i

li k lj k

 

 

lj i

 

 

 

 

k 1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

li i

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

s 1

 

 

 

 

 

 

 

 

 

 

L l

 

 

 

 

 

 

 

 

 

156

Разложение квадратной невырожденной матрицы на две треугольных (экономичный метод Гаусса, LU - разложение)

Gauss(A)

L1 1

1

 

 

 

n rows(A)

 

 

 

U1 1 A1 1

 

 

 

for

j 2 n

 

 

 

 

 

 

U1 j A1 j

 

 

 

 

 

 

 

 

 

 

 

Lj 1

Aj 1

 

 

 

 

 

 

 

U1 1

 

 

 

for

i 2 n

 

 

 

 

 

 

 

 

 

 

 

 

i 1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Ui i Ai i

Li k Uk i

 

 

 

 

 

 

 

 

 

 

k 1

 

 

 

 

for j i n

 

 

 

 

 

 

 

 

 

 

 

 

 

i 1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Ui j Ai j

Li k Uk j

 

 

 

 

 

 

 

 

 

 

 

k 1

 

 

 

 

 

 

 

 

 

 

 

i 1

 

 

 

 

 

 

 

 

Aj i

Uk i Lj k

 

 

 

 

 

 

Lj i

 

 

 

k 1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Ui i

 

S augment(U L)

 

 

M S

 

 

157

Разложение прямоугольной матрицы An,m,n m в произведение ор-

тонормированной и треугольной (QR - разложение)

Qr(A)

R 1

A 1

 

 

 

 

 

 

m cols(A)

 

 

 

 

 

 

n rows(A)

 

 

 

 

 

 

for i 1 m

 

 

 

 

 

 

ti i 1

 

 

 

 

 

 

j 2

 

 

 

 

 

 

 

 

 

 

 

while j m

 

 

 

 

 

 

 

for

i 1 j 1

 

 

 

 

 

 

 

 

 

 

 

 

ti j

 

A j

R i

 

 

 

R i

 

R i

 

 

 

 

 

 

 

 

 

c 0

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

j 1

 

 

R j

 

A j

 

ti j R i

 

 

 

 

 

 

 

 

 

 

i 1

 

 

j j 1

 

 

 

 

 

 

for i 1 m

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

C

 

R i

R i

 

 

 

i

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

R i

 

 

 

 

 

 

R

i

 

 

 

 

 

 

 

 

 

 

 

 

Ci

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

t i

 

t i

 

Ci

 

S stack(R t)

 

 

 

 

 

 

U S

 

 

 

 

 

 

 

 

 

 

158

Обращение невырожденной квадратной матрицы методом Гаусса Подпрограмма для решения треугольной системы

TRS(Y T n)

 

j 1

 

 

 

 

 

 

 

bn

Yn

 

 

 

 

 

 

 

Tn n

 

 

 

 

 

 

 

 

 

while

 

j n

 

 

 

 

 

 

 

 

 

 

 

 

 

j 1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Yn j Tn j n i bn i

 

 

 

 

 

bn j

 

i 0

 

 

 

 

 

 

 

 

 

 

 

 

 

Tn j n j

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

j j 1

 

 

 

 

 

 

 

a b

 

 

 

Программа обращения матрицы

 

 

InvG(A)

 

j 1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

n cols(A)

 

 

 

 

 

N qr(A)

 

 

 

 

 

B submatrix(N 1 n 1 n)

 

 

T submatrix(N 1 n n

1 2 n)

 

 

I identity(n)

 

 

 

 

 

W BT I

 

 

 

 

 

while j n

 

 

 

 

 

 

 

j

 

 

 

 

j

 

 

 

 

 

 

 

 

 

 

 

o

 

TRS

W

T n

 

 

 

j j 1

 

 

 

 

 

 

 

 

 

n

 

 

 

 

 

detA Tk k

 

 

 

 

 

 

 

 

k 1

 

 

 

 

 

I1 1 detA

 

 

 

 

 

o n 1

I 1

 

 

 

 

 

I o

 

 

 

 

 

 

 

159

Обращение квадратной не вырожденной матрицы методом оконтуривания

InvO(A)

j 2

 

n cols(A)

 

iA submatrix(A j 1 j 1 j 1 j 1)( 1)

 

while j n

 

I identity(j 1)

 

u submatrix(A 1 j 1 j j)

 

v submatrix(A j j 1 j 1)

 

bet submatrix(A j j j j) v iA u

 

a iA

iA u v iA

 

 

 

 

 

 

 

bet

 

 

 

 

 

 

 

iA u

b I

bet

v iA

c

 

 

 

 

 

I

 

 

bet

 

 

 

 

 

 

d

1

 

identity(1)

 

 

 

 

 

bet

 

 

 

 

 

R stack(a c)

U stack(b d)

iA augment(R U) j j 1

S iA

160

Вычисление собственных чисел и собственных векторов симметричной матрицы

Eig(A)

n cols(A)

 

 

 

 

1 10 16

 

 

 

 

for i 1 n

 

 

 

 

yi if(i

 

 

 

1 1 0)

 

 

 

 

 

 

 

 

 

 

 

j 1

 

 

 

 

 

 

 

 

 

U A

 

 

 

 

 

 

 

 

 

s 1

 

 

 

 

 

 

 

 

 

while j n

 

 

 

 

 

Y 1

 

y

 

 

 

 

 

 

 

 

 

 

 

1

 

 

 

 

 

1 0

 

 

 

 

 

k 1

 

 

 

 

 

 

 

 

 

 

while

 

 

 

 

 

 

 

 

 

Y k 1

U Y k

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

k 1 if

k 1

Y

 

 

 

 

 

Y

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Y

k 1

 

 

k 1

 

 

 

 

 

if Y

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

k 1 k

 

 

 

 

 

 

 

 

 

 

 

k k 1

 

 

 

 

 

j k

 

 

 

 

 

V j

 

Y k

 

 

 

 

U U j V j

V j

 

 

j j 1

 

 

 

 

 

s 1

 

 

 

 

 

 

 

 

 

w augment V

 

 

 

W w

 

 

 

 

 

 

 

 

k

 

Y

k 1

k 1

 

 

Y

 

 

 

0

 

 

 

0

 

Y

k 1

k

 

 

Y

 

 

 

 

 

 

k 1

 

 

 

 

Y k 1

0

 

 

Y

 

 

0

 

 

 

 

 

 

Y

k 1

k 1

 

 

 

 

Y

 

 

 

 

T