MathCad_7
.pdfМіністерство транспорту та зв’язку України Дніпропетровський національний університет залізничного транспорту імені акад. В.Лазаряна
Львівська філія
ІНТЕГРОВАНА МАТЕМАТИЧНА СИСТЕМА
MathCAD 2000
ч. 7
“РОЗВ'ЯЗУВАННЯ СИСТЕМ РІВНЯНЬ.”
Інструкція до лабораторної роботи з курсу “Обчислювальна техніка та програмування”
Львів 2002
Тема: Розв'язування систем рівнянь.
1. Розв'язування систем лінійних рівнянь.
Роз'язувати в пакеті MathCAD систему лінійних алгебраїчних рівнянь M*X = V можна двома способами - за допомогою функції lsolve(M,V) і матричних операцій X M−1 V ( ЛР №6).
Функція lsolve(M,V) повертає вектор Х дійсних або комплексних коренів системи.
Приклад 1.
Система рівнянь: 3 x + 6 y 9
|
|
|
|
|
|
|
2 x + 0.5 y |
|
4 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||
M := |
|
2 |
6 |
V := |
|
9 |
|
lsolve(M ,V) = |
|
1.773 |
або |
X := M |
−1 |
V |
X = |
|
1.773 |
||
|
2 |
0.5 |
|
4 |
|
|
0.909 |
|
|
0.909 |
|||||||||
|
|
|
|
|
|
|
|
|
|
2. Розв'язування систем нелінійних рівнянь за допомогою функції Find.
Функція Find повертає чисельний результат у вигляді скаляра або вектора, в залежності від того чи роз'язується рівняння чи система рівнянь.
Приклад 2. Розв'язати систему лінійних рівнянь з чотирма невідомими , використавши початкові наближення u1=u2=u3=u4=0
|
u1 := 0 |
u2 := 0 |
|
|
u3 := 0 |
u4 := 0 |
||||||||
|
Given |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
3 u1 − 2 u2 |
|
|
|
−10 |
|
|
|
|
|
|
|||
|
|
|
|
|
|
|
|
|
||||||
|
|
|
|
|
|
|
|
|
||||||
|
−2 u1 + 5 u2 − 3 u3 |
|
|
25 |
|
|
|
|||||||
|
|
|
|
|
|
|||||||||
|
|
|
|
|
|
|||||||||
|
−3 u2 + 13 u3 − u4 |
|
|
1 |
|
|
|
|||||||
|
|
|
|
|
|
|||||||||
|
|
|
|
|
|
|||||||||
|
−4 u3 + 9 u4 |
|
|
9 |
|
|
|
|
|
0.918 |
||||
|
|
|
|
|
|
|
||||||||
|
|
|
|
|
|
|||||||||
|
|
|
|
|
|
|
|
|
|
|
||||
Корені: |
Find(u1,u2,u3,u4) = |
|
6.377 |
|||||||||||
|
1.683 |
|
||||||||||||
|
|
|
|
|
|
|
|
|
|
|
||||
|
|
|
|
|
|
|
|
|
|
|
|
|
||
|
|
|
|
|
|
|
|
|
|
|
|
1.748 |
Приклад 3. Розв'язати систему нелінійних рівнянь
2 sin(x − 0.5) − y 0
x − y2 0
Щоб визначити кількість коренів та їхні початкові наближення ,треба побудувати графіки функцій
y |
|
|
2 sin(x − 0.5) , |
y |
|
|
|
|
x, y |
|
|
− x |
|
на проміжку [a,b]. |
||||||
|
|
|
|
|
||||||||||||||||
|
|
|
|
|
||||||||||||||||
a := −1 |
b := 3 |
|
h := 0.01 |
|
|
x := a,a + h ..b |
||||||||||||||
|
|
|
|
|
|
|
2 |
|
|
|
|
|
|
|
|
|
|
Виділіть з допомогою покажчика миші бланк |
||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
графіка рамкою і виконайте команду |
||
|
2 sin(x−0.5) |
|
|
|
|
|
|
|
|
|
|
|
Формат/График/След. |
|||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Помістіть покажчик миші в ті точки вибраної |
|
|
|
x |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
кривої, координати яких хочете отримати. З'явиться |
||
|
|
|
2 |
|
|
|
|
0 |
2 |
4 |
||||||||||
|
|
|
|
|
|
штрихове перехрестя, координати абсциси і |
||||||||||||||
|
− |
x |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ординати якого з'являться у вікні X-Y Ttace.Ці |
|||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
значення використайте як початкові наближення |
||
Наприклад: |
2 |
|
|
x |
|
|
|
|
|
коренів x та y. |
||||||||||
|
|
|
|
|
|
|
||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||||
x := 0.27 |
y := −0.41692 |
Given |
|
|
|
|
|
|||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
2 sin(x − 0.5) − y |
|
0 |
|||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
x − y2 0
0.248 Find(x,y) =
−0.498
Два інші корені знайти самостійно Приклад 4. Розв'язати систему нелінійних рівнянь (самостійно)
x2 + y2 6 x + y 2
3. Розв'язування систем нелінійних рівнянь за допомогою функції Minerr.
Функція Minerr повертає значення однієї змінної або вектора змінних для наближеного розв'язку , стараючись знайти максимальне наближення навіть до неіснуючого розв'язку шляхом мінімізації середньоквадратичної похибки. Обов'язково проводити перевірку отриманого розв'язку .
Приклад 4. Розв'язати систему нелінійних рівнянь
|
|
|
|
|
|
|
|
( 2 |
|
)2 |
|
( |
|
2 |
)2 |
|
|
|
|||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||||||
|
|
|
|
|
|
|
|
x |
|
+ |
1 |
|
|
+ |
|
y |
|
+ 1 |
|
|
5.5 |
||
Результат: |
|
x + y |
|
|
|
0.95 |
|
|
|
|
|
|
|||||||||||
|
|
|
|
|
|
|
|
|
|
||||||||||||||
|
|
|
|
|
|
|
|
|
|
||||||||||||||
|
|
|
|
|
|
|
|
|
Початкові значення змінних |
||||||||||||||
x := 0 |
|
|
|
|
|
y := 1 |
|
|
|
|
|
|
|||||||||||
Given |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||
( 2 |
)2 |
|
( |
|
2 |
|
|
)2 |
|
|
|
|
|
|
|
|
|
|
|
|
|
||
x + |
1 |
|
+ |
|
y |
|
+ |
1 |
|
|
|
|
5.5 |
|
|
|
|
|
|
|
|||
x + y |
|
|
0.95 |
|
|
|
|
|
|
|
|
|
|
z = |
|
−0.106 |
|
||||||
|
|
|
|
|
|
|
|
|
|
|
|
||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
||||||||||||
z := Minerr(x,y) |
|
|
|
|
|
|
|
||||||||||||||||
|
|
|
|
|
|
|
|
1.056 |
|
|
|||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||
(z0)2 |
|
+ 1 2 |
+ |
(z1)2 |
+ 1 2 |
= 5.5 |
|
|
Перевірка розв'язку |
||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||
z0 + z1 = 0.95 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
4.Символьне розв'язування рівнянь відносно однієї змінної.
Пакет MathCAD дозволяє командою Символы\Переменные\Вычислить символьно розв'язувати рівняння відносно виділеної змінної і виражати його корені через інші змінні.
Приклад 6. Розв'язати відносно змінної x рівняння
B + 2 C − A 0 x2
|
|
|
|
|
|
|
1 |
|
|
1 |
|
|
|
|
|
|
|
|
|
[(A − 2 C) B] |
2 |
|
|||
Результат: A |
|
|
B |
|
Корені x1,x2 |
|
(A − 2 C) |
|
|
|
|
|
|
|
+ 2 C |
|
|
|
|
|
|
||||
|
|
|
|
1 |
||||||||
|
|
|
|
|
||||||||
|
|
|
|
|||||||||
2 |
|
|
|
|
|
|
||||||
|
|
|
x |
|
−1 |
|
|
|
|
|||
|
|
|
|
[(A − 2 C) B] 2 |
||||||||
|
|
|
|
|
|
|
|
|||||
|
|
|
|
|
|
(A − 2 C) |
||||||
|
|
|
|
|
|
|
|
|
|
|
|
Приклад 6. Розв'язати відносно змінної x рівняння A x2 + B x + C 0 (самостійно)
5.Символьне розв'язування систем нелінійних рівнянь.
Приклад 8. Символьно розв'язати відносно змінних x, y систему нелінійних рівнянь
|
|
|
|
|
|
x2 − 2 x y |
|
c |
|
|
|
|
|
|
|
|
|
||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||||||
Результат: |
|
4 x + y |
|
d |
|
|
|
|
|
|
|
|
|
||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||
Given |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||
x2 − 2 x y |
|
c |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||
4 x + y |
|
|
d |
|
|
|
|
|
|
|
|
|
1 |
|
|
|
|
|
1 |
|
|||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||
|
|
|
|
|
1 |
d + |
1 |
(d2 |
+ 9 c) |
2 |
|
1 |
d − |
1 |
|
(d2 |
+ 9 c) |
2 |
|
|
|||||
|
|
|
|
|
9 |
9 |
9 |
9 |
|
|
|||||||||||||||
Find(x,y) → |
|
|
|
|
|
|
|
|
|
1 |
|
|
|
|
|
1 |
|
||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||
|
|
|
|
5 |
|
|
4 |
|
(d2 |
+ 9 c) 2 |
5 |
|
4 |
(d2 |
+ 9 c) 2 |
||||||||||
|
|
|
|
|
d − |
|
|
d + |
|
||||||||||||||||
|
|
|
|
9 |
|
9 |
|
9 |
9 |
||||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Якщо змінним c, d перед блоком Given...Find присвоїти числові значення то функція Find поверне результат у вигляді вектора дійсних чисел.