10.01.2015 Views

Київський національний університет - Геологічний факультет

Київський національний університет - Геологічний факультет

Київський національний університет - Геологічний факультет

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

Київський національний університет імені Тараса Шевченка<br />

Геологічний факультет<br />

М.Н.Жуков<br />

МЕТОДИЧНІ РЕКОМЕНДАЦІЇ<br />

до навчального курсу<br />

ІНФОРМАТИКА<br />

для студентів першого та другого курсів<br />

спеціальностей 0702, 0703, 0704<br />

геологічного факультету<br />

Київ - 2009


Зміст<br />

1. Вступ............................................................................................................................... 3<br />

2. Текстові та математичні області. Перенесення фрагментів. Курсори...................... 3<br />

3. Форматування формул і тексту..................................................................................... 6<br />

4. Панелі інструментів....................................................................................................... 7<br />

5. Панель АРИФМЕТИКА................................................................................................ 7<br />

5.1. Введення формул........................................................................................................ 9<br />

5.2. Стандартні і користувачеві функції.......................................................................... 12<br />

5.3. Розрахунки з фізичними величинами....................................................................... 14<br />

6. Панель інструментів Матрицы……………………………………………………… 15<br />

7. Панель інструментів Матаналіз.................................................................................... 17<br />

8. Панель інструментів Вычисления…………………………………………………… 18<br />

9. Панель інструментів Булево......................................................................................... 21<br />

10. Панель інструментів Графики.................................................................................... 23<br />

11. Панель інструментів Греческий алфавит………………………………………….. 38<br />

12. Анімаційні ефекти відображень................................................................................. 39<br />

13. Розв‘язання рівнянь та систем рівнянь...................................................................... 44<br />

14. Аналітичні обчислення................................................................................................ 46<br />

15. Статистичний аналіз.................................................................................................... 53<br />

16. Програмування у Mathcad…………………………………………………………... 58<br />

16.1. Панель інструментів Програмування...................................................................... 58<br />

16.2. Приклад розв’язання задачі оцінки корисного сигналу засобами<br />

програмування................................................................................................................... 63<br />

16. Зчитування даних з файлу та запис у файл………………………………………… 68<br />

17. Завдання на лабораторну роботу .............................................................................. 71<br />

17.1. Завдання з володіння інструментами Mathcad...................................................... 71<br />

17.2. Завдання з створення процедур-функцій у середовищі Mathcad………………. 72<br />

17.2.1. Обробка масивів ………………………………………………………………… 72<br />

17.2.2. Накопичення. Табуляція………………………………………………………… 73<br />

17.2.3. Розв‘язання рівнянь. Знаходження точок екстремуму функції, найбільшого<br />

та найменшого значень. Сортування…………………………………………………… 74<br />

17.2.4. Розв‘язання диференційних рівнянь. Метод випадкових випробувань<br />

Монте-Карло....................................................................................................................... 75


Тема_14_MathCad_1.doc 3<br />

1. Вступ<br />

MathCad – найбільш популярна програма математичного аналізу. Під час сучасного навчання<br />

з природничих спеціальностей без неї обійтися неможливо. Вона дозволяє виконувати такі<br />

операції:<br />

- готувати науково-технічні документів, що містять текст і формули, записані в звичній у<br />

математиці формі;<br />

- обчислювати вирази з числовими константами, змінними та функціями;<br />

- виконувати операції з векторами та матрицями;<br />

- розв‘язувати алгебраїчні рівняння, системи рівнянь та нерівностей з параметрами та без<br />

них;<br />

- проводити статистичний аналіз даних;<br />

- будувати графіки та відображення поверхонь;<br />

- перетворювати вирази, спрощувати, розкладати на множники;<br />

- диференціювати та інтегрувати функції – чисельно і аналітично;<br />

- розв‘язувати диференційні рівняння;<br />

- створювати програми для автоматизації обчислень у середовищі MathCad.<br />

2. Текстові та математичні області. Перенесення фрагментів. Курсори<br />

У програмі MathCad два види об'єктів: формули і текстові блоки, які називаються<br />

математичними і текстовими областями. Формули обчислюються з використанням числових<br />

констант, змінних, функцій (стандартних і визначених користувачем), а також<br />

загальноприйнятих позначень математичних операцій. Введені в документ MathCad формули<br />

автоматично приводяться до стандартної форми запису. Результати обчислень автоматично<br />

змінюються, як тільки змінити значення величин, що використовуються у відповідних<br />

формулах. Такий же зв‘язок з вхідними даними підтримують графіки. В текстових блоках і<br />

розміщуються коментарі, які не обчислюються, а служать для пояснень. Аби фрагмент<br />

сприймався як текстовий блок, треба виконати ВСТАВКА > ТЕКСТОВАЯ ОБЛАСТЬ, потім<br />

набирати текст. Можна зробити й в іншій послідовності: набрати текст, виділити і потім дати<br />

ВСТАВКА > ТЕКСТОВАЯ ОБЛАСТЬ. Для набору тексту кирилицею слід поставити<br />

відповідний шрифт, наприклад, Arial Cyr. Перехід у ФОРМАТ формульного блоку можна<br />

виконати командою ВСТАВКА > МАТЕМАТИЧЕСКАЯ ОБЛАСТЬ. Усі розрахунки робляться<br />

в математичних областях (формулах).


Тема_14_MathCad_1.doc 4<br />

Математичні області інтерпретуються програмою MathCad як послідовні указівки виконати<br />

ті обчислення, які записані в цих областях. Послідовність, якої додержується MathCad<br />

виконанні обчислень, записаних у математичних областях: зліва направо та зверху вниз. Навіть<br />

мінімальне зміщення донизу однієї математичної області по відношенню до іншої приводить<br />

до того, що друга буде обчислюватися раніше першої.<br />

Написані фрагменти можна переносити в інше місце документа. Для цього його потрібно<br />

обвести курсором миші - тоді всі записи, які попали усередину виділяться пунктирними<br />

Кнлпка ВСТАВИТЬ<br />

ЕДИНИЦЫ<br />

ИЗМЕРЕНИЯ<br />

Кнопка<br />

ВСТАВИТЬ<br />

ФУНКЦИЮ<br />

Панель<br />

Математика<br />

Панель<br />

Вычисления<br />

Панель<br />

Графики<br />

Панель<br />

Булево<br />

Подсказка о<br />

назначении<br />

кнопки<br />

Панель<br />

Матрицы<br />

Панель<br />

Символы<br />

Панель<br />

Греческий<br />

алфавит<br />

Рис 1. Панелі інструментів програми MathCad


Тема_14_MathCad_1.doc 5<br />

лініями. Потім схопити за виділену область курсором миші – при цьому він перетвориться в<br />

чорну рукавичку - і тягти, куди потрібно. Після переміщення математичної області в інше місце<br />

документу вона автоматично перераховується у відповіності з положенням інших областей<br />

стосовно її нового положення.<br />

Фрагмент можна скопіювати або вирізати в буфер стандартними засобами Windows і<br />

вставити в документ іншого додатку – наприклад, у WORD. При вставці в WORD<br />

рекомендується команда ПРАВКА > СПЕЦИАЛЬНАЯ ВСТАВКА > РИСУНОК або ПРАВКА ><br />

СПЕЦИАЛЬНАЯ ВСТАВКА > MATHCAD ДОКУМЕНТ. Другий спосіб: обвести математичну<br />

область курсором, тоді вона виділиться пунктирною рамкою, забрати в буфер, вставити з<br />

буфера у документ Word, клікунути по вставленому об’єктові контекстною клавішею миши,<br />

ФОРМАТ ОБЪЕКТА – ПОЛОЖЕНИЕ – ВОКРУГ РАМКИ. Подвійний клік по об’єкту для<br />

відновлення значень з MathCad у ньому.<br />

Поле вікна MathCad, в якому записують математичні та текстові області називається<br />

робочим листом. Математичні області обробляються програмою MathCad послідовно, зліва<br />

направо і зверху вниз. Якщо у виразі допущено помилку, то MathCad, якщо може, її<br />

автоматично виправить, а якщо не може – виділить червоним кольором і припинить<br />

обчислення.<br />

Курсор указує місце, з якого буде вводитися інформація. Використовується три види<br />

курсорів. Якщо жоден об'єкт не вибрано, використовується хрестоподібний курсор, який і<br />

визначає місце створення чергового об'єкту. На робочому листі не розмічаються рядки для<br />

тексту, як це робиться, наприклад, у тексовому кедеакторі Word. Тому установити курсор<br />

можна практично в будь-яке місце, оскільки дискретність переміщення мала. З початком запису<br />

математичної області курсор перетворюється у форму прямого кута, який вказує місце<br />

введення поточного елементу виразу. Горизонтальна риска кутового курсору указує на ту<br />

частину виразу, якої буде стосуватися подальший запис – наприклад, знак множення чи<br />

ділення. Кутовий курсор регулюється клавішами-стрілками. Коли дані вводяться у текстовий<br />

блок, то курсор перетворюється у вертикальної риску.<br />

Слідкування за формою курсору запобігає помилкам, серед яких помилкове введення у<br />

область не того типу, яку має на увазі користувач.<br />

Помилка в записові математичної області приводить до пофарбування формули у червоний<br />

колір. Це служить указівкою для користувача про необхідість виправлення помилки та вказує її<br />

місце в документі. Про серйозну помилку свідчить зависання MathCad, яке супроводжується<br />

появою зображення лампочки і нереагуванням на дій користувача. Втім, таке ж зображення<br />

може з’явитися і тоді, коли помилки немає, але обчислення затягуються через надто великий


Тема_14_MathCad_1.doc 6<br />

обсяг обчислень.<br />

Для набору у текстовому блоці кирилицею рекомендується встановити шрифт Arial Cyr.<br />

3. Форматування формул і тексту<br />

Для форматування формул і тексту в програмі MathCad використовується панель<br />

інструментів Форматування. З її допомогою можна індивідуально відформатувати будь-яку<br />

формулу чи текстовий блок, задавши гарнітуру і розмір шрифту, а також напівжирне, курсивне<br />

чи підкреслене накреслення символів. У текстових блоках можна також задавати тип<br />

вирівнювання і застосовувати маркіровані і нумеровані списки. Для набору тексту українською<br />

чи російською мовами використовувати шрифт Arial Cyr.<br />

Текст, поміщений у робочий лист, містить коментарі та описи і призначений для пояснень,<br />

але не для використання в розрахунках. Програма визначає призначення поточного блоку<br />

автоматично при першому натисканні клавіші проміжку. Якщо введений текст не може бути<br />

інтерпретований як формула, то блок перетвориться в текстовий формат. Наступні дані<br />

розглядаються як текст. Зокрема, якщо почати набір кирилицею, то MathCad автоматично<br />

утворить текстовий блок. Без використання автоматичних засобів текстовий блок відкриває<br />

команда ВСТАВКА > ТЕКСТОВАЯ ОБЛАСТЬ.<br />

Іноді потрібно умонтувати формулу у середину текстової області. Для цього служить<br />

команда Ctrl/V вставки з буферу . Незважаючи на те, що формула у текстовій області, вона<br />

зберігає всі властивості математичної області, зберігаючи зв‘язок з вхідними даними. Для<br />

вставки формули, яка має властивості текстової області, можна її набрати у MS Word, узяти у<br />

буфер по Ctrl/C і вставити у документ Mathcad по Ctrl/V.<br />

Як засоби автоматизації використовуються стилі оформлення. Вибрати стиль оформлення<br />

текстового блоку чи елемента формули можна зі списку ФОРМАТ > СТИЛЬ (Style). Для<br />

формул і текстових блоків застосовуються різні набори стилів.<br />

Щоб змінити стиль оформлення формули чи створити новий стиль, використовується<br />

команда ФОРМАТ > УРАВНЕНИЕ. Можна, наприклад, змінити колір шрифту, яким набрані<br />

формули, розмір шрифту, зробити, скажемо, змінні курсивом, а константи напівжирними і при<br />

тім різного розміру. Зміна стандартних стилів Variables (Змінні) і Constants (Константи)<br />

впливає на відображення формул по всьому документі. Стиль оформлення імені змінної<br />

враховується при її визначенні. Так, змінні X і X розглядаються як різні і не взаємозамінні. Для<br />

зміни стилю змінної треба виконати команду ФОРМАТ > УРАВНЕНИЕ >VARIABLES і<br />

вказати потрібні параметри.<br />

Для завдання формату виведення результату виконують команду: ФОРМАТ РЕЗУЛЬТАТ і у


Тема_14_MathCad_1.doc 7<br />

вікні ФОРМАТ РЕЗУЛЬТАТА виставити потрібні параметри, наприклад, КОЛИЧЕСТВО<br />

ДЕСЯТИЧНЫХ МЕСТ.<br />

При оформленні текстових блоків можна використовувати більш великий набір стилів.<br />

Настроювання стилів текстових блоків виробляється за допомогою команди ФОРМАТ ><br />

СТИЛЬ (Format > Style).<br />

4. Панелі інструментів<br />

Інструменти згуртовані по групах, які відображаються у вигляді панелей. Кнопки виклику<br />

панелей розташовані на головній панелі МАТЕМАТИКА (рис. 1), яка встановлюється<br />

командою меню ВИД > ПАНЕЛИ ИНСТРУМЕНТОВ > МАТЕМАТИКА .<br />

Кнопки панелей (рис. 1):<br />

- АРИФМЕТИКА (тобто арифметичні інструменти);<br />

- ВЫЧИСЛЕНИЯ (символи знаків обчислення, присвоєння, перетворення й ін.);<br />

ГРАФИКИ (інструменти графіки);<br />

- МАТРИЦЫ (шаблони для запису матриць, векторів, знаки векторно-матричних<br />

операцій);<br />

- БУЛЕВО (знаки логічних відносин і знака рівності для запису рівнянь);<br />

- СИМВОЛЫ (символи деяких операцій);<br />

- МАТАНАЛИЗ (інструменти інтегрування, диференціювання, знаки підсумовування,<br />

добутку, межі);<br />

- ГРЕЧЕСКИЙ АЛФАВИТ;<br />

- МОДИФИКАТОРЫ.<br />

Крім панелі МАТЕМАТИКА, кожну з цих панелей можна<br />

установити через п. Меню ВИД > ПАНЕЛИ<br />

ИНСТУМЕНТОВ. Кожен інструмент можна також<br />

активізувати комбінаціями клавіш. Комбінацію можна<br />

довідатися, затримавши курсор миші на кнопці інструмента.<br />

5. Панель АРИФМЕТИКА<br />

На панелі АРИФМЕТИКА розташовані кнопки таких<br />

інсрументів (рис. 2).<br />

Рис. 2. Панель інструментів<br />

АРИФМЕТИКА<br />

:=-<br />

- „Присвоить значение”. Формат запису операції<br />

присвоєння такий:


Тема_14_MathCad_1.doc 8<br />

змінна:= вираз.<br />

Після завершення запису такого вигляду (натисканням клавіші Enter) MathCad відразу<br />

обчислює вираз при поточних значеннях змінних, які у нього входять. Результат присвоюється<br />

змінній, записаній ліворуч від знаку „:=”. Змінні, записані у виразі, на момент запису цієї<br />

формули мають бути визначені, тобто мати певні значення. Ці значення вони можуть одержати<br />

після виконання попередніх операцій присвоєння, в тому числі і ззовні – наприклад, з<br />

документу Excel.<br />

=<br />

- знак рівності, інтерпретується програмою MathCad як указівка обчислити той вираз,<br />

який записаний перед цим знаком. Наприклад, якщо записати:<br />

„sin(π/6)=”<br />

продовження: sin(π/6)=0.5.<br />

то, як тільки буде набрано знак „=”, цей запис автоматично одержить<br />

Зазвичай документ MathCad складається з послідовних присвоєнь, в результаті змінні<br />

одержують початкові значення, після чого записують формули для обчислення проміжних<br />

змінних, завершується такий цикл формулами присвоєння, якими обчислюється остаточний<br />

результат. Після чого обчислені змінні записують зі знаком рівності, завдяки чому одержані<br />

результати виводяться в документ. При цьому, варто в раніше записаних формулах щось<br />

змінити, як всі нижче записані математичні області будуть автоматично перераховані.<br />

Решта кнопок панелі Арифметика служать для введення цифр, знаків арифметичних<br />

операцій, елементарних функцій та інших часто вживаних символів.<br />

n!<br />

- n! (факторіал). Наприклад, якщо у робочому листі записати: 4!= і натиснути<br />

клавішу Enter, то MathCad сприйме такий запис як указівку обчислити записаний<br />

вираз. В результаті цей запис програма перетворить на такий: 4!=24.<br />

m..n<br />

- запис шаблону діапазону. Діапазон вигляду m..n – це перелік цілих чисел від m<br />

до n з кроком 1. Наприклад, запис 1..4 = розкривається програмою так: 1..4 =1 2 3 4. Є<br />

можливість задати перелік із заданим кроком. Формат запису такий:<br />

початковий елемент переліку, m<br />

2 - другий його елемент,<br />

m ..<br />

1<br />

, m2<br />

mk<br />

, де 1<br />

m -<br />

m<br />

k - останній елемент. Наприклад,<br />

запис вигляду 1, 1.1 .. 1.5= розкривається так: 1, 1.1 .. 1.5= 1 1.1 1.2 1.3 1.4 1.5.<br />

x<br />

n<br />

- нижній індекс - інструмент для запису шаблону змінної з одним або кількома<br />

індексами. Така змінна розглядається як елемент масиву – одновимірного, якщо індекс один,<br />

двовимірного, якщо індексів два і т.д. За умовчанням мінімальне значення кожного індекса – 0,<br />

тобто змінні нумеруються починаючи від нуля. Втім, таку нумерацію можна змінити.<br />

Одновимірний масив – це скінченна послідовність, двовимірний – матриця.


Тема_14_MathCad_1.doc 9<br />

ln<br />

- модуль (абсолютна величина) x.<br />

x<br />

e<br />

−1<br />

x<br />

γ<br />

x n<br />

2<br />

x sin cos<br />

- кнопки для запису шаблонів<br />

відповідних функцій.<br />

Для відокремлення цілої частини від дробової в документах MathCad використовується<br />

точка, а не кома.<br />

log tan π .<br />

- десятичний логарифм, тангенс, число π та десятична точка.<br />

× / + - ( )<br />

- кнопки для запису знаків арифметичних операцій та<br />

дужок.<br />

Для введення функцій, яких немає на панелі арифметика, виконують виклик шаблону<br />

функції кнопкою ВСТАВИТЬ ФУНКЦИЮ (рис. №№). На ній значок f(x). У діалоговому вікні<br />

вказати КАТЕГОРИЮ ФУНКЦИЙ і НАЗВАНИЕ ФУНКЦИИ.<br />

5.1.Введення формул<br />

Формули - основні об'єкти робочого листа. Новостворюваний об'єкт за умовчанням є<br />

формулою. Щоб почати введення формули, треба установити хрестоподібний курсор у потрібне<br />

місце і почати введення букв, цифр, знаків операцій. При цьому створюється область формули,<br />

у якій з'являється кутовий курсор, що охоплює поточний елемент формули, наприклад ім'я<br />

змінної, функції чи число. Змінна може мати своїм значенням число, числову послідовність,<br />

матрицю та вектор.<br />

При введенні бінарного оператора по інший бік від знаку операції автоматично з'являється<br />

маркер у вигляді малого чорного прямокутника. У це місце вводять черговий операнд. Для<br />

управління порядком операцій використовують дужки, які можна вводити вручну. Кутовий<br />

курсор дозволяє автоматизувати такі дії. Щоб виділити елементи формули, що у рамках<br />

операції повинні розглядатися як єдине ціле, використовують клавішу “проміжок”. При<br />

кожному її натисканні кутовий курсор розширюється, охоплюючи елементи формули, що<br />

примикають до даного. Після введення знака операції елементи в межах кутового курсору<br />

автоматично замикаються у дужки.<br />

Введений вираз зазвичай присвоюють змінній або обчислюють. Для виводу значення виразу<br />

використовують знак обчислення, що виглядає як знак рівності на панелі інструментів<br />

ВЫЧИСЛЕНИЯ.<br />

Як тільки знак “=” буде набрано, праворуч від нього з‘явиться значення виразу. Якщо для


Тема_14_MathCad_1.doc 10<br />

виведення значень виразів потрібен інший формат, ніж заданий за умовчанням, його можна<br />

змінити у вікні ФОРМАТ РЕЗУЛЬТАТА, яке встановлюється командою ФОРМАТ ><br />

РЕЗУЛЬТАТ.<br />

Загальний вигляд формули:<br />

змінна або укажчик функції:=вираз<br />

Знак присвоювання зображується як “:=” і вводиться за допомогою кнопки ПРИСВОИТЬ<br />

ЗНАЧЕНИЕ на панелі інструментів ВЫЧИСЛЕНИЯ (Evaluation) або клавішею “:” клавіатури.<br />

Ім'я змінної може містити латинські і грецькі букви, цифри, символи “'” – апостроф,, «_» і “∞”,<br />

а також описовий індекс. Описовий індекс вводиться після натискання клавіші “.” (крапка)<br />

клавіатури і зображується як нижній індекс, що є частиною імені змінної, наприклад V init .<br />

Індекси, що визначають окремий елемент вектора чи матриці, задаються інструментом Нижній<br />

індекс панелі Арифметика або засобами панелі інструментів МАТРИЦЫ. Змінну, якій<br />

присвоєне значення, можна використовувати далі в документі у інших виразах, що<br />

Рис. 3. Вікно, що відображає<br />

статус елемента формули<br />

обчислюються. Щоб довідатися про значення змінної, слід<br />

використовувати операцію обчислення. В лівому верхньому<br />

куті вікна є невелике вікно, у якому відображається статус<br />

того елемента, на який указує курсор (рис. 3).<br />

У ході обчислення використовуються значення змінних і<br />

визначення функцій, заданих в документі раніше. Зазвичай<br />

діють у такій послідовності: задають значення відомих<br />

параметрів, записують формули, у яких результат присвоюють деякій змінний, а потім<br />

використовують оператор обчислення для виводу значення цієї змінної. Наприклад, так, як<br />

показано на рис. 4:<br />

x:= 10 y := 20 s := x + y s 30<br />

Зміна значення будь-якої змінної, корекція будь-якої формули означає, що всі розрахунки,<br />

які залежать від цієї величини, Mathcad мусить виконати заново. При зміні якої-небудь<br />

формули програма автоматично робить необхідні обчислення, обновляючи значення, що<br />

змінилися. Це ж саме стосується побудованих графіків. Наприклад, якщо документ містить<br />

формули x : = 4 x = 2 , то, змінивши значення змінної х, ми відразу ж побачимо, що змінився і<br />

результат розрахунку: x : = 9 x = 3 .<br />

Рис. 4. Приклад обчислення по<br />

=<br />

формулі<br />

Якщо ліворуч від знаку присвоєння записана не змінна, а укажчик функції, то у виразі<br />

праворуч мають брати участь ті змінні, які зазначені в укажчику функції. Таким чином<br />

визначається користувачева функція, тобто така, якої немає в преліку функцій Mathcad. Таким


Тема_14_MathCad_1.doc 11<br />

чином, формат визначення функції користувача мапє вигляд:<br />

укажчик функції:=вираз,<br />

де укажчик функції має вигляд: ім’я функції(список параметрів). Список – це перелік<br />

елеменітв, які відділяються один від одного комою. Наприклад, функція двох змінних, яка являє<br />

собою суму їх квадратів, описується у вигляді:<br />

або<br />

SumKv +<br />

2 2<br />

( x,<br />

y)<br />

: = x y<br />

SumKv +<br />

2<br />

( u1,<br />

u2)<br />

: = u1<br />

u<br />

При інтерпретації імен функцій і змінних MathCad розрізняє прописні і звичайні букви.<br />

Наприклад, запис функції синус у вигляді SIN(x) не буде сприйнято як запис цієї функції.<br />

Треба писати sin(x).<br />

На рис. 5 показано приклад обчислення площі круга з радіусом 2. Використано змінні r і s.<br />

Значення сталої π програмі MathCad відоме.<br />

2<br />

2<br />

r := 2<br />

s := πr 2<br />

s = 12.566 s = 12.566371<br />

Рис. 5. Приклад обчислення площі круга радіусом 2. У другому обчисленні s командою ФОРМАТ ><br />

РЕЗУЛЬТАТ встановлено 6 знаків після десятинної точки.<br />

Діапазон, який вводиться кнопкою m..n, фактично являє собою вектор, що містить<br />

арифметичну прогресію, визначену першим, другим і останнім елементами. Щоб задати<br />

діапазон, слід поставити шаблон діапазону і заповнити його маркери. Можна зробити інакше:<br />

записати значення першого елемента, через кому значення другого і через крапку з комою<br />

значення останнього елемента. Крапка з комою при завданні діапазону відображається як дві<br />

крапки: «..». Значення діапазону можна присвоювати змінній. Наприклад, х := 0,0.1..1. Різниця<br />

прогресії за умовчанням дорівнює 1. Загальний формат завдання діапазону:<br />

x:=m 1 , m 2 ..n або x:=m 1 , m 1 + ..n,<br />

е x – змінна, якій присвоюється значення з діапазону, m 1 , m 2 - перший і другий члени прогресії,<br />

n – кінцевий її член, d – різниця прогресії. Результат присвоєння можна подивитися операцією<br />

обчислення «=». Приклади показано на рис. 6.<br />

Може статися так, що після операції «=» не всі значення будуть видно – наприклад, коли їх<br />

надто багато. Тоді слід кликнути лівою клавішею по виведеній таблиці і скористатися<br />

повзунком. Формулу можна виділити кольором, як показано на прикладі. Для цього її потрібно<br />

кликнути правою клавішею і виконати СВОЙСТВА > ПОДСВЕТКА ОБЛАСТИ > ВЫБОР<br />

ЦВЕТА.


Тема_14_MathCad_1.doc 12<br />

r := 2, 2.2..<br />

3 s( r) := πr 2<br />

r<br />

= s( r)<br />

2<br />

2.2<br />

2.4<br />

2.6<br />

2.8<br />

3<br />

=<br />

12.566<br />

15.205<br />

18.096<br />

21.237<br />

24.63<br />

28.274<br />

p := 1..<br />

4<br />

t := −4, −2..<br />

4<br />

p =<br />

1<br />

2<br />

3<br />

4<br />

s( p)<br />

3.142<br />

12.566<br />

28.274<br />

50.265<br />

= t<br />

=<br />

-4<br />

-2<br />

0<br />

2<br />

4<br />

Рис. 6. Приклади завдання діапазонів та обчислень х їх використанням<br />

5.2. Стандартні і користувачеві функції<br />

Довільні залежності між вхідними і вихідними параметрами задаються за допомогою<br />

функцій. Функції приймають набір параметрів і повертають значення, скалярне чи матричне. У<br />

формулах можна використовувати стандартні вбудовані функції, а також функції, визначені<br />

користувачем.<br />

Щоб використовувати функцію у виразі, треба вказати вхідні параметри в дужках після<br />

імені функції. У Mathcad великий вибір функцій, які згруповані по категоріях.<br />

Імена<br />

x 2 n n<br />

стандартних математичних функцій (ln, log, e , x , x , x , x ,n! , x ,sin,cos, tan)<br />

можна ввести з панелі інструментів АРИФМЕТИКА. Інформацію про інші функції можна<br />

знайти в довідковій системі. Вставити у вираз стандартну функцію можна за допомогою<br />

команди ВСТАВКА ><br />

Вікно для вибору<br />

категорії функцій<br />

Кнопка для одержання<br />

довідки про функцію<br />

ФУНКЦИЯ. У діалоговому вікні, що з'явилося, ВСТАВИТЬ<br />

Вікно для вибору<br />

функції<br />

Рис. 7. Діалогове вікно ВСТАВИТЬ ФУНКЦИЮ.<br />

ФУНКЦИЮ (рис. 7) ліворуч<br />

вибирається категорія, до якої<br />

відноситься функція, а праворуч —<br />

конкретна функція. У нижній частині<br />

вікна видається інформація про<br />

обрану функцію.У вікні також є<br />

кнопка для одержання довідки про<br />

обрану функцію (рис. 7). При<br />

введенні функції через це діалогове<br />

вікно автоматично додаються дужки<br />

і маркери для заповнення<br />

значеннями параметрів.


Тема_14_MathCad_1.doc 13<br />

Перелік функцій MathCad великий. Відзначимо серед часто вживаних acos (arccos), asin<br />

(arcsin), sinh (синус гіперболічний), if (якщо), max, min.<br />

Аргументи тригонометричних функцій мають бути виражені у радіанах, значення обернених<br />

тригонометричної функцій даються теж у радіанах. Функція if має формат:<br />

if(логічний вираз, вираз_1, вираз_2)<br />

Дія: якщо логічний вираз має значення „істинно” (у MathCad це значення позначається 1) то<br />

значенням функції if буде вираз_1, якщо значення „хибно” (у MathCad це значення 0) – то<br />

вираз_2. Для запису логічних (булівських) виразів використовують інструменти панелі Булево<br />

(див. розділ 9).<br />

Приклад. Записати у MathCad функцію, яка обчислюється за таким правилом:<br />

⎧<br />

⎪arcsin<br />

x,<br />

якщо −1<br />

≤ x ≤ 1,<br />

⎪<br />

π<br />

G(<br />

x)<br />

= ⎨−<br />

, якщо x < −1,<br />

⎪ 2<br />

⎪π<br />

⎪ , якщо x > 1.<br />

⎩ 2<br />

Запис у MathCad:<br />

⎛<br />

⎝<br />

−π π<br />

G( x) := if⎜<br />

x < −1, , if⎜<br />

x > 1, , asin( x)<br />

2 2<br />

⎛<br />

⎝<br />

Функція max має формат: max(список). Елементи списку відділяються один від одного<br />

комою. Вона повертаоє значення найбільшого елемента списку. Функція min має формат:<br />

min(список)<br />

⎞⎞<br />

⎟⎟<br />

⎠⎠<br />

Приклад. Записати у<br />

елементи матриці А.<br />

MathCad дві функції, значеннями якої є найбільший та найменший<br />

Запис у MathCad:<br />

A :=<br />

⎛<br />

⎜<br />

⎜<br />

⎝<br />

1<br />

0<br />

2<br />

2<br />

1<br />

0.5<br />

−1<br />

5<br />

−3<br />

⎞<br />

⎟<br />

⎟<br />

⎠<br />

max( A) = 5 min( A) = −3<br />

Приклад. Записати у MathCad функцію двох змінних, яка визначається за правилом:<br />

⎪⎧<br />

2<br />

9 − x − y<br />

Z ( x,<br />

y)<br />

= ⎨<br />

⎪⎩ 0, якщо<br />

2<br />

, якщо 9 − x<br />

9 − x<br />

2<br />

− y<br />

2<br />

2<br />

< 0.<br />

− y<br />

2<br />

≥ 0,<br />

Запис у MathCad:


Тема_14_MathCad_1.doc 14<br />

Користувач може визначити власні - користувачеві функції. Визначення задається за<br />

допомогою оператора присвоювання, який має формат:<br />

ім'я користувачевої функції(список формальних параметрів):=вираз<br />

У його лівій частині записується укажчиком функції з формальними параметрами.<br />

Формальні параметри – це змінні, від яких функція залежить. Ці змінні беруть участь у виразі,<br />

що записаний праворуч від знаку присвоювання. Формальність параметру означає, що вони<br />

можуть бути невизначеними на момент опису функції. Проте при обчислення цієї функції на<br />

місцях формальних параметрів мають стояти вирази визначені. Крім них там можуть бути й<br />

інші змінні. Вони мають бути визначені до обчислення функції. При використанні<br />

користувачевої функції в подальших формулах її ім'я вводять вручну, оскільки у діалоговому<br />

вікні ВСТАВИТЬ ФУНКЦИЮ вона не відображується.<br />

5.3. Розрахунки з фізичними величинами<br />

При проведенні розрахунків з використанням реальних фізичних величин враховують їхню<br />

розмірність. Для супроводу даного розмірністю використовують кнопку ВСТАВИТЬ<br />

ЕДИНИЦЫ ИЗМЕРЕНИЯ на панелі інструментів (рис. 1) або командою меню ВСТАВКА ><br />

ЕДИНИЦЫ ИЗМЕРЕНИЯ. З‘явиться вікно ВСТАВИТЬ ЕДИНИЦЫ (рис. 8), у якому можна<br />

Рис. 8. Вікно ВСТАВИТЬ ЕДИНИЦЫ ИЗМЕРЕНИЯ<br />

( )<br />

Z( x,<br />

y) := max 0,<br />

9 − x 2 − y 2<br />

вибрати потрібні одиниці<br />

вимірювання. Щоб<br />

розрахунок був коректний, усі<br />

дані повинні бути приведені в одну<br />

систему одиниць — у цьому<br />

випадку результат розрахунків<br />

вийде в цій же системі. Тут<br />

ховається характерне джерело<br />

помилок при розрахунках вручну. У<br />

програмі MathCad одиниці виміру<br />

приєднуються до значення величини<br />

за допомогою знаку множення. Дані<br />

автоматично перетворяться в ту<br />

саму систему одиниць (за умовчанням СІ) і обробляються в цьому виді. Розмірний результат<br />

видається разом з отриманою одиницею виміру. Приклад показано на рис. 9.


Тема_14_MathCad_1.doc 15<br />

a :=<br />

10 ⋅ km<br />

V := 100⋅<br />

kph t := 10 ⋅ hr<br />

b := 5 ⋅ m Sp := a ⋅ b<br />

y := 40% t := 150 s := y ⋅ t s = 60<br />

Sp = 5 × 10 4 m 2<br />

SS := V ⋅ t SS = 1 × 10 6 m<br />

Рис. 9. Приклад обчислень з використанням одиниць вимірювання: kph –<br />

км/год, hr – роки, m – метри, km - кілометри.<br />

Фізичні константи у<br />

їх стандартному<br />

позначенні MathCad теж<br />

знає. Наприклад, якщо<br />

не визначати величину<br />

g, то її значенням буде<br />

прискорення вільного<br />

падіння (рис. 10):<br />

g = 9.807ms -2<br />

Рис. 10. якщо не визначати величину g, то її значенням буде прискорення вільного<br />

падіння<br />

6. Панель інструментів Матрицы<br />

Панель інструментів Матрицы (рис. 11) служить для вводу шаблонів матриць та векторів.<br />

Вектори розглядаються в програмі MathCad як матриці, що складається з одного стовпчика.<br />

Кількість рядків і стовпчиків матриці можна задати у діалоговому вікні ВСТАВИТЬ<br />

МАТРИЦУ, яке відкривають командою ВСТАВКА > МАТРИЦА або кнопкою СОЗДАТЬ<br />

МАТРИЦУ ИЛИ ВЕКТОР (Ctrl+M) на панелі інструментів МАТРИЦЫ. В результаті у<br />

Кнопка Создать<br />

матрицу или вектор<br />

(Ctrl+M)<br />

Кнопка Нижний<br />

индекс [<br />

Кнопка Инверсия<br />

(обернення матриці)<br />

Кнопка<br />

Вычисление<br />

определителя<br />

Кнопка Задать вектор<br />

(Ctrl+-)<br />

Кнопка Транспонирование<br />

матрицы (Ctrl+1)<br />

Кнопка создать диапазон<br />

дискретной величины (;)<br />

Кнопка Столбец<br />

матрицы (Ctrl+6)<br />

Кнопка Скалярное<br />

произведение (*)<br />

Кнопка Векторное<br />

произведение<br />

(Ctrl+8)<br />

Кнопка<br />

Суммирование<br />

элементов вектора<br />

(Ctrl+4)<br />

Кнопка Изображение<br />

(Ctrl+T)<br />

Рис. 11. Панель інструментів Матрицы


Тема_14_MathCad_1.doc 16<br />

документі з‘являється шаблон матриці, який містить замість елементів маркери. Замість<br />

кожного маркера слід можна вставити число, змінну чи вираз. Над матрицями можливі операції<br />

додавання, множення або додавання числа, множення матриці на матрицю та інші. В разі<br />

виконання арифметичної операції між матрицею та виразом зазначена дія застосовується до<br />

кожного елементу матриці, і результат також буде матрицею. Наприклад, вираз М + 3, де М —<br />

матриця, означає, що до кожного елементу матриці додається число 3. Якщо потрібно явно<br />

вказати необхідність поелементного застосування операції з матрицями, встановлюють знак<br />

векторизації, для введення якого служить кнопка «ЗАДАТЬ ВЕКТОР» на панелі інструментів<br />

МАТРИЦЫ. Наприклад, традиційне множення матриці A розміром n на m на матрицю B<br />

розміром m на k виконується за правилом: C=AB, де C – матриця розміром n на k, елементи<br />

якої обчислюються за формулою:<br />

c<br />

ij<br />

∑<br />

= m<br />

k = 1<br />

a<br />

it<br />

b<br />

tj<br />

. Поелементне множення матриць можливе<br />

тільки для матриць однакового розміру: c = a b . Для векторизації, показаної в у<br />

ij ij<br />

+<br />

наведеному на рис. 12 прикладі, треба записати добуток матриць, поставити курсор формули в<br />

кінець (так, щоб він охоплював увесь вираз), кнопкою «()» узяти його в дужки, потім знову<br />

поставити курсор формули в її кінець і натиснути кнопку ЗАДАТЬ ВЕКТОР (Ctrl+-).<br />

ij<br />

⎛<br />

⎜<br />

⎝<br />

1<br />

−1<br />

3<br />

1<br />

⎞ ⎛ 1<br />

⎟⎠ ⋅ ⎜<br />

⎝ 2<br />

−1<br />

1<br />

⎞ ⎟⎠<br />

=<br />

⎛<br />

⎜<br />

⎝<br />

7<br />

1<br />

2<br />

2<br />

⎞ ⎟⎠<br />

⎯→<br />

⎛ 1 3 ⎞ ⎛ 1 −1 ⎞⎤<br />

⎜ ⎟⎠ ⋅ ⎟⎠<br />

−1 1 2 1<br />

⎡<br />

⎢<br />

⎣⎝<br />

⎜<br />

⎝<br />

⎥<br />

⎦<br />

=<br />

⎛<br />

⎜<br />

⎝<br />

1<br />

−2<br />

−3<br />

1<br />

⎞<br />

⎟<br />

⎠<br />

Рис. 12. Приклад множення матриць. Ліворуч - добуток матриць, праворуч — поелементний добуток<br />

матриць з використанням векторизації.<br />

Для роботи з елементами матриці використовують індекси елементів. У елементів вектору<br />

тільки один - нижній індекс, який являє собою номер рядка. У елементів матриці - два нижніх<br />

індекси. Перший індекс – номер рядка, другий – номер стовпчика, у яких розташований<br />

елемент з цими індексами. Нумерація рядків і стовпчиків матриці починається з нуля. Індекс<br />

елементу задається числом, змінною чи виразом. Він вводиться після кліку по кнопці «X n » -<br />

НИЖНИЙ ИНДЕКС на панелі інструментів МАТРИЦЫ.<br />

Пара індексів, що визначає елемент матриці, розділяється комою. Індекси нумеруються від 0.<br />

Іноді потрібно виділити вектор, що представляє собою стовпчик матриці. Номер стовпчика ця<br />

матриці відображається як верхній індекс, замкнений у кутові дужки, наприклад R , R (рис.<br />

13). Для його введення використовується кнопка M - СТОЛБЕЦ МАТРИЦЫ на панелі<br />

інструментів МАТРИЦЫ. Щоб задати загальну формулу елементів матриці, наприклад,<br />

R i,j :=i+j 2 , слід раніше задати діапазони для індексів (рис. 13).


i := 0..<br />

2 j := 0..<br />

2 R i, j := i + j 2 R<br />

Тема_14_MathCad_1.doc 17<br />

Рис. 13. Приклад визначення матриці за допомогою обчислювальної формули. Елемент R визначає<br />

перший вектор-стовпчик матриці, якому відповідає другий індекс 0, а елемент R - останній<br />

стовпчик, якому відповідає другий індекс 2.<br />

При формуванні матриці шляхом присвоєння значень її елементам, розміри матриці можна<br />

не задавати заздалегідь. Усім невизначеним елементам автоматично присвоюються нульові<br />

значення. Наприклад, формула М 5,5 := 1 створює матрицю М розміром 6 x 6, у якої всі елементи,<br />

крім елементу, розташованого в правому нижньому куті, дорівнюють 0.<br />

Обернена матриця до матриці – це матриця, яка має властивість: А -1 А= А А -1 =Е, де Е –<br />

одинична матриця, тобто матриця, по головній діагоналі якої стоять одиниці, а решта – нулі.<br />

Така матриця має властивість: АЕ=ЕА=А.<br />

Одне з найбільш поширених застосувань операції обернення матриці – розв’язання системи<br />

лінійних алгебраїчних рівнянь.<br />

Приклад розв'язання системи лінійних алгебраїчних рівнянь векторно-матричним методом.<br />

Система має вигляд:<br />

Розв’язок у MathCad та перевірка показані на рис. 14:<br />

⎛<br />

0 1 4<br />

0<br />

4<br />

=<br />

⎜<br />

1 2 5<br />

⎟<br />

R 〈 0〉<br />

=<br />

⎜<br />

1<br />

⎟<br />

R 〈 2〉<br />

=<br />

⎜<br />

5<br />

⎜<br />

⎝<br />

2<br />

3<br />

6<br />

⎞<br />

⎟<br />

⎠<br />

⎧x<br />

+ 2 y − z = 4<br />

⎪<br />

⎨y<br />

+ 5z<br />

= −2<br />

⎪<br />

⎩2x<br />

+ 0.5y<br />

− 3z<br />

= 0<br />

⎛<br />

⎜<br />

⎝<br />

2<br />

⎞<br />

⎟<br />

⎠<br />

⎛<br />

⎜<br />

⎝<br />

6<br />

⎞<br />

⎟<br />

⎟<br />

⎠<br />

⎛<br />

⎜<br />

⎜<br />

⎝<br />

1<br />

A := 0 1 5 b :=<br />

2<br />

2<br />

0.5<br />

−1<br />

−3<br />

⎞<br />

⎟⎟⎠<br />

⎛<br />

⎜<br />

⎜<br />

⎝<br />

Рис. 14. Приклад розв’язаня системи лінійних рівнянь у MathCad<br />

4<br />

−2<br />

0<br />

⎞<br />

⎟⎟⎠<br />

−2<br />

x:= A − 1 ⋅ b x =<br />

⎜<br />

2.545<br />

⎟<br />

A ⋅ x =<br />

⎛<br />

⎜<br />

⎝<br />

−0.909<br />

⎞<br />

⎟<br />

⎠<br />

⎛<br />

⎜<br />

⎜<br />

⎝<br />

4<br />

−2<br />

0<br />

⎞<br />

⎟<br />

⎟<br />

⎠<br />

7. Панель інструментів Матаналіз<br />

Рис. 15.Панель<br />

інструментів<br />

Матаналіз<br />

Містить інтрументи для диференціювання, інтегруваня, обчислення<br />

сум із скінченної та нескінченної кількості доданків, таких же добутків<br />

та границь послідовностей та функцій (рис. 15). Кожну кнопок (рис. 15)<br />

можна замінити комбінацією клавіш, яка повідомдяється спливаючою<br />

підказкою. Натискання кнопки цієї панелі викликає встановлення<br />

шаблону для запису потрібного перетворення у тому місці, де стоїть<br />

курсор.


Тема_14_MathCad_1.doc 18<br />

Результат виконання тих операцій, яка зазначені на кнопках з панелі Матанализ, не завжди<br />

можна одержати шляхом запису знака рівності після виразу, як це було при використанні<br />

інструментів Арифметика. Це через те, що результат не обов’язково є числом. Наприклад,<br />

d<br />

d<br />

sin ( x)<br />

=<br />

x<br />

невірними будуть записи<br />

на рис. 16,<br />

оскільки<br />

відносяться до так званих<br />

аналітичних<br />

обчислень.<br />

Для одержання результату<br />

аналітичних обчислень замість знаку „=” слід вживати знак символічної рівності „→”з панелі<br />

Вычисления.<br />

⌠<br />

⎮<br />

⌡<br />

cos ( x)<br />

d x =<br />

Рис. 16. Неправильне вживання знаку = при користування інструментами<br />

панелі Матанализ<br />

k<br />

∞<br />

∑<br />

=<br />

Про них йде мова у розділі 8 - Панель Вычисления.<br />

Правильні записи з використанням панелі Матанализ показані на рис. 17.<br />

1<br />

1<br />

k 2<br />

=<br />

lim<br />

n→∞<br />

1<br />

n<br />

=<br />

⌠<br />

⎮<br />

⌡<br />

0<br />

π<br />

sin( x) 2 dx<br />

= 1.571<br />

x:=<br />

0<br />

d<br />

dx sin( x)<br />

= 1<br />

k<br />

100<br />

∑<br />

=<br />

1<br />

1<br />

k 2<br />

= 1.635<br />

d<br />

dx sin( x)<br />

→<br />

cos( x)<br />

⌠<br />

⎮<br />

⌡<br />

sin( x) 2 dx<br />

→<br />

−1<br />

2<br />

⋅<br />

cos ( x)<br />

⋅<br />

sin( x)<br />

+<br />

1<br />

2 ⋅ x<br />

lim<br />

n→∞<br />

1 + n<br />

n<br />

→ 1<br />

Рис. 17. Приклади правильних записів з використанням панелі Матанализ<br />

8. Панель інструментів Вычисления<br />

Призначена для запису шаблонів присвоєння, рівності та символічної рівності, а також<br />

операторів, які були описані раніше у тому ж документі. Загальний вигляд панелі показаний на<br />

рис. 18. В дужках вказані клавіши або комбінації клавіш, які заміняють кнопки.<br />

Знак рівності ( =) Знак присвоєння (:) Знак глбального<br />

присвоєння (~)<br />

Символічний знак<br />

рівності (Ctrl+.)<br />

Префіксний<br />

оператор<br />

Символічна оцінка<br />

(Ctrl+Shift+.)<br />

Символічна оцінка<br />

Постфіксний<br />

оператор<br />

Рис. 18. Панель інструментів Вычисления<br />

Інфікстний оператор


Тема_14_MathCad_1.doc 19<br />

Кнопки знаку рвіності та знаку присвоєння – ті ж самі, що і на панелі арифметика (див.<br />

розділ 5 – Панель інструментів Арифметика.<br />

Символічний знак рівності виглядає як горизонтальна стрілка: →. Вона заміняє знак рівності<br />

при виконанні так званих аналітичних обчислень, тобто таких, у яких беруть участь параметри<br />

– змінні, які не визначені числовими значеннями на момент обчислення. За допомогою<br />

інструментів аналітичних обчислень знаходять аналітичні розв'язки рівнянь і систем, в яких<br />

беруть участь параметри. Також знаходять всі розв'язки рівнянь та систем рівнянь, ( на відміну<br />

від чисового розв’язку, коли за допомогою функцій Find та шаблону root, коли знаходять один<br />

розв'язок, найближчий до заданого числа. Також За допомогою інструментів аналітичних<br />

обчислень виконують перетворення виразів - наприклад, спрощення. В разі рівнянь з<br />

параметрами можна одержати нечисловий результат. Значення, присвоєні невідомим перед<br />

аналітичними обчисленнями, ігноруються, тому що змінні розглядаються як невизначені<br />

параметри. Команди для виконання аналітичних обчислень виконують з меню СИМВОЛЫ<br />

(Symbolics) або універсальним інструментом СИМВОЛИЧЕКИЙ ЗНАК РАВЕНСТВА ( → ) на<br />

панелі інструментів ВЫЧИСЛЕНИЯ. Формат аналітичного обчислення з символічним знаком<br />

рівності має вигляд:<br />

Вираз →<br />

Як тільки знак → буде записано, Mathcad виконає аналітичні обчислення і запише праворуч<br />

від цього знаку результат. Таким чином можна спрощувати арифметичні вирази, обчислювати<br />

похідні, невизначені інтеграли, суми скінченних та нескінченних рядів, границі<br />

послідовностей, розв‘язання алгебраїчних рівнянь та систем рівнянь з параметрами тощо.<br />

Приклади наведені вище у розділі 7 - Панель інструментів Матаналіз на рис. 17.<br />

Копка Глобальное присвоение (значення за умовчанням) розповсюджує значення змінної на<br />

весь документ, в тому числі на область, розташовану вище запису з таким присвоєнням – до<br />

моменту, коли значення цієї змінної буде змінене явно (рис. 19).<br />

y := x + 10 z := x 2 y = 16 z = 36<br />

x ≡ 6<br />

Рис. 19. Приклад глобального присвоєння. Змінні y<br />

та z визначені за рахунок глобального присвоєння,<br />

незважаючи на те, що змінній x не було присвоєне<br />

значення перед обчисленням y та z.<br />

Чотири останніх кнопки панелі служать для запису шаблонів операторів (рис. 18).<br />

Кнопка з позначкою f x служить для запису шаблону „префіксного” оператора, тобто<br />

такого, у якому аргумент записується після імені оператора. Дужки навколо аргумента при


Тема_14_MathCad_1.doc 20<br />

цьому, на відміну від функцій, не вживаються. Дії, які мають бути виконані, описуються так<br />

само, як і користувачева функція.<br />

Приклад. Описати та застосувати префіксний оператор з іменем Sig, який приймає значення:<br />

1, якщо аргумент більший нуля; 0, якщо він дорівнює нулю і -1 – якщо він менший нуля.<br />

Розв’язання показане на рис. 20.<br />

Sig( a) := if( a > 0, 1,<br />

if( a < 0, −1,<br />

0)<br />

) x := 0 Sig x = 0<br />

Рис. 20. Приклад опису та застосування префіксного оператора<br />

Кнопка з позначкою x f служить для запису шаблону „постфіксного” оператора, тобто<br />

такого, у якому аргумент записується перед іменем оператора.<br />

Приклад. Описати та застосувати постфіксний оператор з іменем Grad, який переводить<br />

радіани у градуси.<br />

Розв’язання показане на рис. 21.<br />

Grad( x) := x⋅<br />

180<br />

π<br />

π<br />

x:= xGrad = 30<br />

6<br />

Копка з позначкою x f y служить для запису шаблону бінарного („інфіксного”) оператора,<br />

який вживається з двома аргументами, причому його символ якого запсисується між<br />

аргументами.<br />

Приклад. Описати та застосувати бінарний „інфіксний” оператор з іменем Ө, який обчислює<br />

різницю між x та y, якщо абсолютна величина x - y більша або рівна 10 -4 , а якщо вона менша<br />

10 -4 , то результат має дорівнювати нулю. Розв’язання - на рис. 22.<br />

Копка з позначкою x f y служить для запису шаблону бінарного „древовидного” („treefix”)<br />

оператора (рис. 23).<br />

Рис. 21. Приклад опису та застосування постфіксного<br />

оператора<br />

( )<br />

Θ( x,<br />

y) := if x − y < 10 − 4 , 0,<br />

x − y x:= 2 y := 2.00001 x Θ y = 0<br />

x1:= 2 y := 2.00011 x Θ y = −0.00011<br />

Рис. 22. Приклад опису та застосування інфіксного оператора<br />

( )<br />

Θ( x,<br />

y) := if x > y, x y , y x x:= 2 y := 3<br />

Θ<br />

= 9<br />

Рис. 23. Пиклад застосування бінарного древовидного оперптора<br />

x<br />

y


Тема_14_MathCad_1.doc 21<br />

9. Панель інструментів Булево<br />

Інсрументи цієї панелі призначені для запису знаків логічних операцій (порівнянь) та<br />

логічних операцій (рис. 24). Їх вживають у логічних виразах, наприклад, у функції if, а також<br />

при розв’язані алгебраїчних рівнянь та нерівностей.<br />

Знак логічної<br />

рівності<br />

(порівняння)<br />

Знаки логічних<br />

відношень<br />

Знаки логічних<br />

відношень<br />

Знак логічного<br />

відношення „не<br />

рівно”<br />

Знак логічної<br />

операції<br />

„виключаюче або”<br />

Знак логічної<br />

операції<br />

заперечення<br />

Знак логічної<br />

операції „та” (and)<br />

Знак логічної<br />

операції „або” (or)<br />

Рис. 24. Панель інструментів Булево<br />

Логічний вираз – це вираз, який може приймати лише значення двох логічних констант –<br />

„істинно” (true) та „хибно” (false). У MathCad ці значення позначаються, відповідно, 1 та 0. Він<br />

являє собою послідовність логічних операндів, з’єднаних знаками логічних операцій.<br />

Логічними операндами можуть бути: логічні константи; логічні змінні, тобто змінні, які<br />

можуть приймати значення логічних констант; логічні відношення, які явлюять собою записи<br />

порявнянь; логічні вирази. Можуть вживатися дужки для визначення пріоритету під час<br />

обчислення логічного виразу. Правило пріоритету визначає послідовність, у якій обчислюється<br />

вираз від найстаршого:<br />

1) вираз у найвнутрішніх дужках;<br />

2) логічні функції , тобто функції, які можуть приймати значення логічних констант;<br />

3) логічні відношення у такій послідовності:<br />

- операція заперечення;<br />

- операція „та” (and);<br />

- операція „або” (or);<br />

- операція „ ⊕ ” (xor).<br />

Логічні відношення мають формат:


Тема_14_MathCad_1.doc 22<br />

Арифметичний_вираз_1 знак_логічного_відношення Арифметичний_вираз_2.<br />

Результати логічних операцій обчислються за такими правилами:<br />

1) ¬ А=1, якщо А=0 і ¬ А = 0, якщо А=1.<br />

2) А ∧ В = 1 , якщо А=1 та В=1, в решті випадків А ∧ В = 0;<br />

3) А ∨ В = 1 , якщо А=1 або В=1, в решті випадків А ∨ В = 0;<br />

4) А ⊕ В = 1 , якщо А та В мають протилежні значення, в решті випадків А ⊕ В = 0.<br />

Приклад. Записати функцію, яка визначається за таким правилом:<br />

⎧0,<br />

якщо x < a,<br />

⎪<br />

x − a<br />

f ( x)<br />

= ⎨ , якщо a ≤ x ≤ b,<br />

⎪b<br />

− a<br />

⎪⎩<br />

1 якщо x > b,<br />

Запис у MathCad та графік цієї функції показані на рис. 25.<br />

a := −0.2<br />

b := 1.5<br />

⎛<br />

⎝<br />

⎛<br />

⎝<br />

x − a<br />

f( x) := if⎜<br />

x < a, 0,<br />

if⎜<br />

x ≤ b ∧ x ≥ a, , 1 ⎟ x:=<br />

−1, −0.9..<br />

2<br />

b − a<br />

⎞⎞<br />

⎟⎠<br />

⎠<br />

f( x)<br />

1.2<br />

1<br />

0.8<br />

0.6<br />

0.4<br />

0.2<br />

0<br />

0.2<br />

1 0.5 0 0.5 1 1.5 2<br />

Графік функції f(x)<br />

x<br />

Рис. 25. Приклад використання логічних виразів при визначенні функції.


Тема_14_MathCad_1.doc 23<br />

10. Панель інструментів Графики<br />

Панель інструментів Графіки використовується для побудови графіків. На панелі<br />

розташовано 9 кнопок (рис. 26).<br />

Декартов графік (Shift+2)<br />

Приближение. Кнопка<br />

стає активною, коли<br />

виділено шрафік<br />

Слежение. Кнопка стає<br />

активною, коли виділено<br />

шрафік<br />

Полярный график (Ctrl+7)<br />

Поверхность (Ctrl+2)<br />

3D – столбчатая діагарама<br />

Карта линий уровня<br />

(Ctrl+5)<br />

3D – точковый график<br />

Векторное поле (Ctrl+5)<br />

Рис. 26. Панель інтрументів Графики<br />

Кнопка Декартов график (рис. 26) служить для виклику у документ шаблону графіка<br />

функції однієї змінної в декартових координатах ХОY.<br />

Для побудови такого графіка слід виконати такі дії.<br />

1) Записати формули, які визначають ті функції, графіки яких мають бути побудовані. Ці<br />

формули мають формат:<br />

укажчик функції := вираз,<br />

де укажчик функції має формат: ім’я_функції(список_формальних параметрів.)<br />

2) Вказати діапазон для тієї змінної, що служить аргументом функції - як правило, із<br />

вказівкою кроку. Наприклад: x:=-5,-4.9..5. Межами стануть границі, задані на шаблоні графіка.<br />

Якщо цього не зробити, то крок і межі установляться за умовчанням.<br />

3) Клікнути кнопку Декартов график або виконати команду Вставка > График > X-Y<br />

Зависисмость.<br />

4) З'явиться шаблон графіка, у якому будуть маркери:<br />

- для запису укажчика відображуваної функції (ліворуч біля вертикальної осі);<br />

- для змінної, від якої залежить функція (під горизонтальною віссю). Навіть якщо ця змінна<br />

очевидна – наприклад, вона у виразі функції єдина, її в цій позиції все рівно потрібно<br />

вказувати.


Тема_14_MathCad_1.doc 24<br />

- Після заповнення зазначених маркерів з'являться маркери верхньої і нижньої меж для<br />

функції і для змінної, які також слід заповнити. Якщо цього не зробити, межі установляться<br />

за умовчанням після натискання клавіші Enter або кліку лівою клавішею миші за межами<br />

шаблона.<br />

5) Натиснути Enter або клікнути поза шаблоном графіка. Графік буде побудовано.<br />

Значення аргументу можна задати не у вигляді діапазону, а у вигляді послідовності<br />

дискретних значень. Для цього аргумент визначають у вигляді вектора.<br />

На одному шаблоні можна побудувати кілька графіків. Для побудови кількох графіків на<br />

одній і тій самій системі координат треба у шаблоні біля вертикальної осі записати через кому<br />

укажчики тих функцій, графіки яких потрібно побудувати, або вирази цих функцій. Якщо у них<br />

різні аргументи, то ці аргументи також через кому записують у позиції маркера, розташованого<br />

під горизонтальною віссю.<br />

Різні графіки відображуються різними кольорами і типами ліній. Зміни вносяться засобами<br />

форматування графіка. Для виклику панелі форматування слід двічі клікнути по області<br />

графіка. Відкриється діалогове вікно під назвою Formatting Currently Selected X-Y Plot. В ньому<br />

4 вкладки: ОСИ X-Y, СЛЕД, МЕТКИ, УМОЛЧАНИЕ.<br />

Для корекції кольору та типу побудованих ліній використовується вкладка СЛЕД яка<br />

служить для управління форматом ліній графіків. Поле ИМЯ В ЛЕГЕНДЕ задає опис лінії, що<br />

відображається у випадку скидання прапорця СКРЫТЬ ЛЕГЕНДУ. Список СИМВОЛ дозволяє<br />

вибрати маркери для точок, обумовлених заданим діапазоном і кроком аргументу; список<br />

ЛИНИЯ задає тип лінії, список ЦВЕТ — колір. Список ТИП визначає спосіб зв'язку окремих<br />

крапок (діаграма, умовні позначки і т.д.), а список ТОЛЩИНА - товщину лінії.<br />

Вкладка ОСИ X-Y призначена для зміни типу шкали (логарифмічна чи лінійна), виведення<br />

допоміжних ліній, призначення їхньої кількості, виведення міток на осях, стилю границь.<br />

Фон графіка можна пофарбувати у заданий колір. Для цього треба кликнути по області<br />

графіка контекстною (правою) клавішею миші, у діалоговому вікні СВОЙСТВА ><br />

ПОДСВЕТКА ОБЛАСТИ > ВЫБОР ЦВЕТА вибрати колір, при необхідності - ПОКАЗАТЬ<br />

ГРАНИЦЫ.<br />

Приклади показані на рис. 27, 28.<br />

Кнопкою Полярный график (рис. 26) викликається шаблон графіків функцій, заданих у<br />

полярній системі координат. Такі функції описують залежності радіуса від кута повороту:<br />

ρ = f (ϕ) . Цей шаблон можна також викликати командою ВСТАВКА - ГРАФИК - ПОЛЯРНЫЕ<br />

КООРДИНАТЫ. В шаблоні для відліку кутових координат використовується градусна міра, а<br />

для завдання діапазону кутів - радіанна. Приклад – на рис. 29.


Тема_14_MathCad_1.doc 25<br />

Функцію, графік якої потрібно побудувати, можна задавати у параметричній формі: x=x(t),<br />

y=y(t). Приклади показано на рис. 28. Там же продемонстровано пересічну помилку при<br />

побудові графіків: невірно заданий формат діапазону для аргументу.<br />

Приклад побудови графіків у декартовій системі координат<br />

Діапазон для х задано за умовчанням. Натиснути кнопку ДЕКАРТОВ ГРАФИК,<br />

розтягнути шаблон за кутовий маркер. Біля вертикальної вісі записати<br />

"f(x),g(t),r(u)", під горизотальною віссю "x,t,u". Дії по форматуванню графіка:<br />

- правою клавішею миши клікнути по області графіка, ФОРМАТ, ОСИ<br />

X-Y,ВСПОМ.ЛИНИИ, в розділах ОСЬ-Х и ОСЬ-Y АВТОСЕТКА - выключить,<br />

РАЗМЕР СЕТКИ - 10 и 4 відповідно;<br />

- ФОРМАТ,СЛЕД, Trace 3, СИМВОЛ - box;<br />

- ФОРМАТ, МЕТКИ, НАЗВАНИЕ - "Графіки", ПОКАЗАТЬ НАЗВАНИЕ;<br />

- ФОРМАТ, МЕТКИ, МЕТКИ ОСЕЙ, ОСЬ Х - "Довжина", ОСЬ Х - включити;<br />

- СВОЙСТВА, вкладка ОТОБРАЖЕНИЕ, ПОДСВЕТКА ОБЛАСТИ - включити,<br />

ПОКАЗАТЬ ГРАНИЦЫ, ВЫБОР ЦВЕТА;<br />

- ФОРМАТ, ТИП - stem;<br />

- ФОРМАТ, СКРЫТЬ ЛЕГЕНДУ - виключити, СКРЫТЬ АРГУМЕНТЫ - виключити.<br />

Якщо графіки зникнуть - СВОЙСТВА, ВЫЧИСЛЕНИЕ, ЗАПРЕТИТЬ<br />

ВЫЧИСЛЕНИЯ - виключити.<br />

f( x) := sin ( x)<br />

g( x) := cos ( x)<br />

u :=<br />

⎛<br />

⎜<br />

⎜<br />

⎜<br />

⎜<br />

⎝<br />

−4<br />

0<br />

2<br />

4<br />

⎞<br />

⎟<br />

⎟<br />

⎟<br />

⎟<br />

⎠<br />

t := −3<br />

, −2<br />

.. 3<br />

r( u) := 0.2 ⋅ u<br />

2<br />

Графіки<br />

2<br />

1<br />

f( x)<br />

g( t)<br />

r( u)<br />

1<br />

0<br />

1<br />

2<br />

5 4 3 2 1 0 1 2 3 4 5<br />

Функция f(x)<br />

trace 2<br />

trace 3<br />

x , t , u<br />

Довжина<br />

Рис. 27. Приклад побудови графіків у декартовій системі координат.


Тема_14_MathCad_1.doc 26<br />

c := 2<br />

2<br />

− x<br />

2<br />

x:=<br />

0, 0.1..<br />

5<br />

( )<br />

F( x) := c ⋅ e ⋅ cos π ⋅ x<br />

Графік функціїї, заданої<br />

параметрично з використанням<br />

шаблону декартових координат<br />

w := 0, 0.1..<br />

2 ⋅ π<br />

y( w) := b ⋅ sin( w)<br />

a := 1.5<br />

b := 0.5<br />

x( w) := a ⋅ cos ( w)<br />

1<br />

2<br />

F( x)<br />

0<br />

1<br />

1<br />

y( w)<br />

0<br />

2<br />

1 0 1 2 3 4 5 6<br />

1<br />

x<br />

2<br />

2 1 0 1 2<br />

x( w)<br />

x:=<br />

0..<br />

5<br />

F( x) := c ⋅ e ⋅ cos π ⋅ x<br />

2<br />

− x<br />

2<br />

( )<br />

Графік функціїї, заданої<br />

параметрично з використанням<br />

шаблону декартових координат<br />

1<br />

w :=<br />

0..<br />

2 ⋅ π<br />

a := 1.5<br />

b := 0.5<br />

F( x)<br />

0<br />

y( w) := b ⋅ sin( w)<br />

x( w) := a ⋅ cos ( w)<br />

1<br />

2<br />

1 0 1 2 3 4 5 6<br />

x<br />

2<br />

1<br />

Помилка: задано невірно діапазон для x.<br />

y( w)<br />

0<br />

1<br />

2<br />

2 1 0 1 2<br />

x( w)<br />

Помилка: задано невірно діапазон для w.<br />

Рис. 28. Приклади побудови графіків з форматуванням і демонстрацією характерної помилки – невірного<br />

завдання діапазону для аргументу.


Тема_14_MathCad_1.doc 27<br />

Приклад побудови графіків у полярній системі координат<br />

f( t) := 0.9t<br />

g( u) := 0.5sin ( u) 2 ⋅ u<br />

u := 0 , 0.1..<br />

2 ⋅ 6.28 t := 0 , 0.1..<br />

6.28<br />

x := 0 .. 6.28<br />

Натискаємо кнопку "Полярний график" на панели инструментов "Графики". Біля<br />

лівої вертикальної границі записуємо вирази функцій: "f(t),g(u),f(x)", а внизу "t,u,x".<br />

Біля правої вертикальної границі - границі для радіусу 0 та 6. Розтягнути за лівий<br />

нижній кут. Натиснути клавішу "Enter" або клікнути мишею зовні шаблону графіка.<br />

Дії по форматуванню графіка:<br />

- правою клавішею мимши клікнути по області побудови графіка;<br />

- ФОРМАТ, вкладка СЛЕД, ИМЯ В ЛЕГЕНДЕ "trace 3" замінити на "Функція f(x)",<br />

ЦВЕТ для цієї функції "brn", а ЛИНИЯ - "solid", для trace 3 ТОЛЩИНА - 2, СКРЫТЬ<br />

ЛЕГЕНДУ - виключити, СКРЫТЬ АРГУМЕНТЫ - виключити;<br />

- ФОРМАТ, вкладка ПОЛЯРНЫЕ ОСИ, РАДИАЛЬНЫЕ, АВТОСЕТКА - виключити,<br />

РАЗМЕР СЕТКИ - 6, ВСПОМОГАТЕЛЬНЫЕ ЛИНИИ - включити;<br />

- ФОРМАТ, вкладка ПОЛЯРНЫЕ ОСИ, УГЛОВЫЕ , АВТОСЕТКА - виключити,<br />

РАЗМЕР СЕТКИ - 8, ВСПОМОГАТЕЛЬНЫЕ ЛИНИИ - включити;<br />

- ФОРМАТ, вкладка ПОЛЯРНЫЕ ОСИ, СТИЛЬ ОСЕЙ ГРАФИКА - "пересечение";<br />

- ФОРМАТ, вкладка МЕТКИ, НАЗВАНИЕ "Демонстрація графіків у полярній<br />

системі", ВЫШЕ - включити; ПОКАЗАТЬ НАЗВАНИЕ - включити;<br />

СВОЙСТВА, ПОДСВЕТКА ОБЛАСТИ - включити, ВЫБОР ЦВЕТА.<br />

Демонстрація графіків у полярні системі<br />

90<br />

135<br />

45<br />

f( t)<br />

g( u)<br />

f( x)<br />

180<br />

0<br />

1<br />

2<br />

3<br />

4<br />

5<br />

6<br />

0<br />

225<br />

315<br />

trace 1<br />

trace 2<br />

Функція f(x)<br />

270<br />

t , u , x<br />

Рис. 29. Приклад<br />

побудови графіків у<br />

полярній системі<br />

координат.


Тема_14_MathCad_2.doc 28<br />

Кнопка Приближение (рис. 26) стає активною, коли виділено область побудови графіка.<br />

Вона служить для зміни масштабу перегляду графіка по осях Ox та Oy. Після її натискання<br />

з’являєтья вікно під назвою X-Y Zoom (рис. 30). Кліком біля осі активізують кнопки Маштаб+<br />

та Маштаб-, якими змінюють масштаб.<br />

Кнопка Слежение (рис. 26) служить для автоматичного визначення положення точки на<br />

графіку, яку вказує курсор (рис. 31). Якщо прапорець След точек данных встановлений, то<br />

курсор переміщується тільки вздовж графіка (рис. 32).<br />

Рис. 30. Панель X-Y Zoom, яку встановлює кнопка<br />

Приближение. Кнопки Маштаб+ та Маштаб- стають<br />

активними після кліку біля осей Ox та OY.<br />

Рис. 31. Панель X-Y Trace, яку встановлює кнопка<br />

Слежение. У поля X-Value та Y-Value<br />

автоматично виводяться координати точки на<br />

області побудови графіка, яку вказує курсор.<br />

Якщо прапорець След точек данных<br />

встановлений, то курсор переміщується тільки<br />

вздовж графіка.<br />

Рис. 32. Приклад користування інструментом Слежение. При піднятому прапорці След точек данных<br />

курсор може рухатися тілки по графіку, а координати точки, яку вказує курсор, відображаються у<br />

полях X-Value та Y-Value


Тема_14_MathCad_2.doc 29<br />

Кнопкою Поверхность (рис. 26) викликають шаблон для побудови відображення функції<br />

двох змінних у вигляді поверхні. Це відображення виконуються інакше, ніж будується графік<br />

функції однієї змінної. Певна незручність полягає в тому, що в шаблоні поверхні не<br />

передбачений вираз функції, як це було в шаблоні графіка функції однієї змінної. Замість цього<br />

є тільки один маркер - для імені матриці. Ця матриця - штучна допоміжна конструкція, що несе<br />

інформацію про відображувану функцію. Номери елементів відображають в опосередкованій<br />

формі координати точок в області визначення функції на площині, а самі елементи служать<br />

значеннями функції в цих точках. На побудованому відображенні значення вздовж осей Ox та<br />

Oy будуть являти собою не значення аргументів функції, а номери відповідних елементів<br />

матриці. Втім, є спосіб позбутися цього недоліку, який буде показано нижче. Ця незручність<br />

компенсуються зручністю наочного вивчення отриманої моделі, яка полягає у можливості<br />

повертання її під будь-яким кутом зору за допомогою миші. Досить притиснути ліву клавішу<br />

миші в обраній точці відображення і не відпускаючи переміщувати в потрібному напрямку.<br />

Модель повернеться. Таким способом без усяких проблем її можна взагалі перевернути,<br />

подивившись на поверхню знизу. Вона легко трансформується звичним у Windows прийомом:<br />

кликнути по відображенню і тягти мишею за маркери на його рамці. Крім того, інструментами<br />

форматування можна домогтися різноманітних ефектів: освітлення із заданням розміщення<br />

джерел освітлення; прозорості поверхні; зафарбовування поверхні; ефекту «туману»; зміни<br />

стилю ліній; використання кольорової палітри та іншого.<br />

Перед побудовою поверхні необхідно задати прямокутну область Ω у площині XOY, у якій<br />

потрібно побудувати поверхню. Це роблять шляхом присвоєння значень границям x0, xk; y0, yk,<br />

які обмежують проекції Ω на вісі Оx та Oy відповідно. Далі, задають кроки delx та dely X-ліній<br />

та Y-ліній. Х- та Y-лінії – це лінії, що утворюються перетином поверхні та вертикальної<br />

площини, перпендикулярної до осей ОХ та OY відповідно. Визначають кількість X- та Y-кроків<br />

і задають діапазони зміни індексів елементів матриці:<br />

xk − x0<br />

yk − y0<br />

nx : = , ny : = , i : = 1..nx,<br />

j : = 1..ny.<br />

delx<br />

dely<br />

І, нарешті, задають матрицю значень функції:<br />

M i , j<br />

: = F( x0<br />

+ i ⋅ delx, y0<br />

+<br />

j ⋅ dely ).<br />

Потім слід скористатися інструментом Поверхность. З'явиться шаблон, у якому треба<br />

заповнити той єдиний один маркер, що у ньому є. Він розташований у лівому нижньому куті<br />

шаблону поверхні. Його заповнюють іменем одержаної матриці.<br />

Приклад показано на рис. 33.


Тема_14_MathCad_2.doc 30<br />

На рис. 34 показано, як досягти ефекту більшої гладкості поверхні за рахунок зменшення<br />

кроків X- та Y-ліній (порівняйте з рис. 33). Застосовано кольорову палітру та освітлення.<br />

Приклад побудови відображення функції двох змінних.<br />

Опис функції:<br />

F( x,<br />

y) := e 0.2<br />

⋅( )<br />

− x2 + y 2<br />

Визначення допоміжних параметрів:<br />

⋅<br />

cos ( x 2 + y 2 )<br />

delx:=<br />

0.5<br />

dely := 0.5<br />

x0:= −5<br />

xk:=<br />

5<br />

y0 := −5<br />

yk := 5<br />

nx :=<br />

xk − x0<br />

delx<br />

ny :=<br />

yk − y0<br />

dely<br />

i :=<br />

0..<br />

nx<br />

j :=<br />

0..<br />

ny<br />

Визначення допоміжної матриці:<br />

M i j<br />

, := F( x0 + i ⋅ delx,<br />

y0 + j ⋅ dely)<br />

Клікаємо кнопку ГРАФИК ПОВЕРХНОСТИ на панели інструментів ГРАФИКИ. У маркер<br />

шаблону поверхні (в його лівому нижньому куті) записуємо ім'я допоміжної матриці.<br />

Одержимо:<br />

M<br />

Для, щоб не було видно тих ліній поверхні, як містяться позаду видимої поверхні, слід<br />

клікнути правою клавішею по відображенню і у контектному меню виконати команду:<br />

ФОРМАТ > ЗАЛИТЬ ПОВЕРХНОСТЬ > СПЛОШНОЙ ЦВЕТ > вказати колір > ОК.<br />

Одержимо:<br />

M<br />

Рис. 33. Приклад відображення поверхні. У нижньому лівому куті – заповнений літерою “M”<br />

шаблон для імені допоміжної матриці. Її визначення показано над відображенням поверхні.<br />

Характерний недолік – «кутуватість» поверхні пояснюється тим, що крок між лініями надто<br />

великий. Вісь ОХ позначено блакитним кольором.


Тема_14_MathCad_2.doc 31<br />

Для форматування готового відображення його слід двічі кликнути й установити потрібні<br />

параметри в діалоговому вікні ФОРМАТ 3D-ГРАФІКИ. На рис. 34 - 40 показані приклади<br />

форматування відображення поверхні.<br />

delx := 0.2 dely := 0.2 nx<br />

i := 0 .. nx j := 0 .. ny<br />

M i j<br />

, := F ( x0 + i ⋅ delx , y0 + j ⋅ dely )<br />

( xk − x0 )<br />

:= ny<br />

delx<br />

:=<br />

( yk − y0 )<br />

dely<br />

M<br />

Збільшено кількість ліній, сховано невидимі лінії, включено колір: ФОРМАТ ><br />

ВНЕШНИЙ ВИД> ЗАЛИТЬ ПОВЕРХНОСТЬ > ПАЛИТРА > ОСВЕЩЕНИЕ<br />

>ВЛЮЧИТЬ ОСВЕЩЕНИЕ. Джерела світла: Light1 - ОТРАЖЁННЫЙ -<br />

червоний, вкл; Light2 - жовтий, вкл; Light3 - синій, вкл; ПОГЛОЩЁННЫЙ - у<br />

всіх чорний.<br />

Рис. 34. Ілюстрація ефектів застосування кольорової палітри та освітлення<br />

ї<br />

M<br />

Рис. 35. Ілюстрація трансформації відображення. Вісь OZ позначено блакитним кольором, вісь OY – білим,<br />

вісь OX – червоним. Переміщенням курсору миши зовні поверхні, показаної на рис. 22 її перевернуто.


Тема_14_MathCad_2.doc 32<br />

M<br />

Збільшено кількість ліній, сховано невидимі лінії, включено колір: ФОРМАТ ><br />

ВНЕШНИЙ ВИД> СКРЫТЬ ЛИНИИ> ПАЛИТРА > ОСВЕЩЕНИЕ >ВЛЮЧИТЬ<br />

ОСВЕЩЕНИЕ. Джерела світла: Light1 - ОТРАЖЁННЫЙ - червоний, вкл;<br />

- жовтий, вкл; Light3 - синій, вкл; ПОГЛОЩЁННЫЙ - у всіх чорний.<br />

Light2<br />

ФОРМАТ >ВНЕШНИЙ ВИД >СКРЫТЬ ЛИНИИ, КОНТУРНЫЕ ЛИНИИ,<br />

ЗАЛИТЬ ПОВЕРХНОСТЬ, ПАРАМЕТРЫ ЗАЛИВКИ > ПАЛИТРА<br />

ФОРМАТ >ВНЕШНИЙ ВИД >ОСНОВАНИЕ > ЗАКРАСИТЬ ОСНОВАНИЕ<br />

Рис. 36. Приклад форматування відображення поверхні. Вихідне відображення показане на рис. 33.<br />

ФОРМАТ > ВНЕШНИЙ ВИД > ДОПОЛНИТЕЛЬНО > ТУМАН<br />

ФОРМАТ > ОСВЕЩЕНИЕ> встановити жовтий колір для Light1 та включити його,<br />

Формат Вкладка Освещение (включить освещение, цвет источника желтый, Light 2..<br />

Light6 виключити, БЕСКОНЕЧНЫЙ ИСТОЧНИК СВЕТА, ВКЛЮЧИТЬ ОСВЕЩЕНИЕ.<br />

Рис. 37. Ілюстрація ефектів “ТУМАН” та “ОСВЕЩЕНИЕ”. Вихідне відображення на рис. 34


Тема_14_MathCad_2.doc 33<br />

M<br />

ФОРМАТ > ВНЕШНИЙ ВИД > ЗАЛИТЬ ПОВЕРХНОСТЬ, СПЛОШНОЙ ЦВЕТ -<br />

включити і ризначити сірий; ПАРАМЕТРЫ ЛИНИЙ - БЕЗ ЛИНИЙ; ПЛАВНЫЕ<br />

ТЕНИ, ПАРАМЕТРЫ ЗАЛИВКИ - ПАЛИТРА, СЕТКА - виключити; ПАРАМЕТРЫ<br />

ЛИНИЙ - БЕЗ ЛИНИЙ.<br />

ФОРМАТ > ОСВЕЩЕНИЕ > ВКЛЮЧИТЬ ОСВЕЩЕНИЕ > установити<br />

координати джерел Light1.. Light6 та їх кольори ОТРАЖЁННЫЙ і<br />

ПОГЛОЩЁННЫЙ ;<br />

ФОРМАТ > ОСИ > Z-ОСЬ > АВТОШКАЛА - виключити, МИНИМУМ - -2,<br />

МАКСИМУМ - 2;<br />

ФОРМАТ > ОСНОВАНИЕ > X-Y-ОСНОВАНИЕ - ЗАКРАСИТЬ ОСНОВАНИЕ,<br />

встановити колір, аналогічно форматується X-Y-ОСНОВАНИЕ X-Y-ОСНОВАНИЕ.<br />

Рис. 38. Ілюстрація користування інструментами форматування. Вихідне відображення на рис. 34.<br />

K( x, y , r, xc,<br />

yc ) :=<br />

⎡<br />

⎢<br />

⎣<br />

0<br />

r 2 − ( x − xc) 2 − ( y − yc ) 2<br />

⎤<br />

⎥<br />

⎦<br />

xc1 := 0<br />

xc2 := 3.5<br />

yc1 := 0<br />

yc2 := 3.5<br />

r1 := 3<br />

r2 := 1<br />

x0 := −5<br />

xk := 5<br />

y0 := −5<br />

yk := 5<br />

delx := 0.1<br />

dely := 0.1<br />

nx :=<br />

xk − x0<br />

delx<br />

ny<br />

:=<br />

yk<br />

− y0<br />

dely<br />

i := 0..<br />

nx<br />

j := 0..<br />

ny<br />

A1 := 1<br />

A2 := 3<br />

T( x,<br />

y) := max( K( x, y , r1, xc1,<br />

yc1 ))<br />

G( x,<br />

y) := A1 T( x,<br />

y) + A2 U( x,<br />

y)<br />

U( x,<br />

y) := max( K( x, y , r2, xc2,<br />

yc2 ))<br />

W i j<br />

, := G( x0 + i ⋅ delx , y0 + j ⋅ dely )<br />

W<br />

Рис. 39. Приклад моделювання з використанням рівнянь верхніх напівсфер. Функція max(A) має своїм<br />

аргументом матрицю і повертає своїм значенням найбільший елемент цієї матриці.


Тема_14_MathCad_2.doc 34<br />

M<br />

Приклад моделювання.<br />

ФОРМАТ>ВНЕШНИЙ ВИД> ЗАЛИТЬ ПОВЕРХНОСТЬ, ПЛАВНЫЕ ТЕНИ, СПЛОШНОЙ<br />

ЦВЕТ - коричневий , БЕЗ ЛИНИЙ> ОСВЕЩЕНИЕ - жовтий Light1 та Light2,<br />

Light3..Light6 - виключити.<br />

ФОРМАТ>ДОПОЛНИТЕЛЬНО > ПРОЗРАЧНОСТЬ - 30%.<br />

ФОРМАТ>ОСНОВАНИЕ>X-Y- ОСНОВАНИЕ, X-Z- ОСНОВАНИЕ, Y-Z- ОСНОВАНИЕ<br />

-зафарбувати у білий колір.<br />

ФОРМАТ > ОБЩИЙ > ГРАНИЦЫ ГРАФИКА виключити, КАРКАС включити, колір<br />

каркасу - синій.<br />

Рис. 40. Приклад користування засобами форматування відображення: ЗАЛИТЬ ПОВЕРХНОСТЬ,<br />

ПЛАВНЫЕ ТЕНИ, ПРОЗРАЧНОСТЬ, ОСНОВАНИЕ.<br />

Інструмент Карта линий уровня служить для встановлення шаблону, у якому будується<br />

відображення функції двох змінних у вигляді ліній рівня (ізоліній). В цьому шаблоні також<br />

єдиний маркер, у якому записують ім’я допоміжної матриці. Отже, процес побудови<br />

відображення такий самий, як і при користуванні інструментом Поверхность.<br />

На рис. 40 наведено приклад побудови поверхні у лініях рівня, до якого застосовано засоби<br />

форматування.<br />

Інструмент 3D-cтолбчатая диаграмма (“3D СТОЛБИКОВАЯ ДИАГРАММА”) є<br />

додатковим засобом відображення функції двох змінних. Приклад показано на рис. 43.<br />

Інструмент Векторное поле. Значення матриці повинні бути комплексними. У цьому<br />

випадку в кожній точці графіка відображається вектор з координатами, рівними дійсній і<br />

мнимій частинам. Зокрема, цим інструментом можна відобразити поле градієнтів заданої<br />

функції двох змінних. Для цього обчислюють частинні похідні від цієї функції і сформувати<br />

допоміжну матрицю, елементами якої є комплексні числа. Дійсною частиною кожного такого<br />

числа служить частинна похідна по x, а уявною - потрібно виконати такі частинна похідна по y.<br />

Приклад показано на рис. 44.


K( x, y , r, xc,<br />

yc ) :=<br />

⎡<br />

⎢<br />

⎣<br />

0<br />

r 2 − ( x − xc) 2 − ( y − yc ) 2<br />

Тема_14_MathCad_2.doc 35<br />

⎤<br />

⎥<br />

⎦<br />

xc1 := 0<br />

xc2 := 3.5<br />

yc1 := 0<br />

yc2 := 3.5<br />

r1 := 3<br />

r2 := 1<br />

x0 := −5<br />

xk := 5<br />

y0 := −5<br />

yk := 5<br />

delx := 0.1<br />

dely := 0.1<br />

nx :=<br />

xk − x0<br />

delx<br />

ny<br />

:=<br />

yk<br />

− y0<br />

dely<br />

i := 0..<br />

nx<br />

j := 0..<br />

ny<br />

A1 := 1<br />

A2 := 3<br />

T( x,<br />

y) := max( K( x, y , r1, xc1,<br />

yc1 ))<br />

G( x,<br />

y) := A1 T( x,<br />

y) + A2 U( x,<br />

y)<br />

U( x,<br />

y) := max( K( x, y , r2, xc2,<br />

yc2 ))<br />

W i j<br />

, := G( x0 + i ⋅ delx , y0 + j ⋅ dely )<br />

M<br />

Рис. 41. Приклад використання інструменту КАРТА ЛИНИЙ УРОВНЯ.<br />

Застосовано засоби форматування (команда Формат)<br />

Спосіб параметричного завдання відображення дозволяє ввести реальний відлік координат<br />

уздовж осей Ox і Oy. Для цього потрібно задати три матриці вектора з однаковим числом<br />

елементів, що відповідають х-, у- і z-координатам точок, відображуваних на графіку. В області<br />

графіка ці три вектори вказуються усередині дужок через кому.<br />

Аналогічним образом можна побудувати поверхню, задану параметрично. Для цього треба<br />

задати три матриці, що містять, відповідно, x-, у- і z-координати точок поверхні. У шаблоні<br />

відображення треба вказати ці три матриці в дужках і через кому. Діалогове вікно для


Тема_14_MathCad_2.doc 36<br />

форматування тривимірних графіків можна також відкрити подвійним кліком по зображенню.<br />

Приклади показані на рис. 34 – 40.<br />

Істотна незручність розглянутих інструментів побудови відображення поверхні полягає в<br />

тому, що відлік координат вздовж осей OX та OY<br />

відбувається не у реальній системі<br />

координат, а в умовній. На цих осях відкладаються номери X- та Y-ліній. Одночасно це індекси<br />

відповідних елементів допоміжної матриці. Для аналізу реальних моделей це незручно. Втім, є<br />

спосіб уникнути цієї незручності і ввести реальну систему відліку по кожній вісі. Суть цього<br />

способу полягає у тому, що маркер шаблону відображення заповнюється не ім‘ям однієї<br />

допоміжної матриці, а трьох (через кому). Перша вводиться для реального відліку вздовж вісі<br />

OX, а друга – вздовж вісі OY. Якщо позначити ці матриці , відповідно, XX та YY, то їхні<br />

елементи обчислюються за формулами:<br />

XX<br />

i, j<br />

: = x0<br />

+ i ⋅ delx,<br />

YYi<br />

, j<br />

: = y0<br />

+ j ⋅ dely,<br />

де delx та dely – кроки X- та Y-ліній. Третя допоміжна матриця та ж сама, що й раніше.<br />

Приклад показаний на рис. 42.<br />

⋅( )<br />

F( x,<br />

y) e 0.2 +<br />

:= ⋅ cos x 2 + y 2 delx := 0.2 dely := 0.2 x0:= −5<br />

xk:= 5 y0 := −5<br />

yk := 5<br />

− x2 y 2<br />

( )<br />

xk − x0 yk − y0<br />

nx := ny := i := 0..<br />

nx j := 0..<br />

ny Z i , j := F( x0 + i ⋅ delx,<br />

y0 + j ⋅ dely )<br />

delx<br />

dely<br />

XX i j<br />

, := x0 + i ⋅ delx YY i , j := y0 + j ⋅ dely<br />

Приклад ( XX , YYпобудови , Z ) поверхні з реальним відліком вздовж осей Ox та Oy.<br />

ФОРМАТ > ВНЕШНИЙ ВИД > ПАРАМЕТРЫ ЗАЛИВКИ: ЗАЛИТЬ ПОВЕРХНОСТЬ,<br />

ПЛАВНЫЕ ТЕНИ, ПАЛИТРА; КАРКАС: СПЛОШНОЙ ЦВЕТ - білий.<br />

ФОРМАТ > ОБЩИЙ > СТИЛЬ ОСЕЙ - ПЕРИМЕТР, ГРАНИЦЫ - виключити, КАРКАС -<br />

жовтий.<br />

ФОРМАТ > ОСЬ > Х-ОСЬ РИСОВАТЬ ЛИНИИ, АВТОСЕТКА виключити, ЦВЕТ ЛИНИИ<br />

жовтий, ЧИСЛО 10, ФОРМАТ ОСИ НУМЕРАЦИЯ, ЦВЕТ ОСИ червоний, АВТОШКАЛА<br />

включити; Y-ОСЬ РИСОВАТЬ ЛИНИИ, АВТОСЕТКА виключити, ЦВЕТ ЛИНИИ жовтий,<br />

ЧИСЛО 10, ФОРМАТ ОСИ НУМЕРАЦИЯ, ЦВЕТ ОСИ синій, АВТОШКАЛА включити;<br />

Z-ОСЬ РИСОВАТЬ ЛИНИИ, АВТОСЕТКА включити, ЦВЕТ ЛИНИИ жовтий, ФОРМАТ ОСИ<br />

НУМЕРАЦИЯ, ЦВЕТ ОСИ чорний, АВТОШКАЛА виключити, МИНИМУМ - -1, МАКСИМУМ<br />

2.<br />

ФОРМАТ>ОСВЕЩЕНИЕ - включити, СХЕМА ОСВЕЩЕНИЯ - Scheme 1.<br />

ФОРМАТ >X-Y ОСНОВАНИЕ > ЗАКРАСИТЬ ОСНОВАНИЕ > ЦВЕТ - чорний, X-Z<br />

ОСНОВАНИЕ та Y-Z ОСНОВАНИЕ - ті ж параметри.<br />

Рис. 42. Приклад побудови поверхні з реальним відліком вздовж осей OX та OY.


Тема_14_MathCad_2.doc 37<br />

M<br />

Інструмент СТОЛБЧАТАЯ ДИАГРАММА панелі ГРАФИКИ<br />

ФОРМАТ>ВНЕШНИЙ ВИД> ЗАЛИТЬ КАРКАС, СПЛОШНОЙ ЦВЕТ - синій<br />

ФОРМАТ > ОБЩИЙ > ГРАНИЦЫ - виключити.<br />

Рис. 43. Приклад побудови відображення інструментом СТОЛБЧАТАЯ ДИАГРАММА.<br />

( )<br />

⎡⎣ ⎤ ⎦ cos x 2 y 2<br />

F( x,<br />

y) := exp −0.2<br />

⋅ x 2 + y 2<br />

delx := 0.2 dely := 0.2 nx<br />

k := 0..<br />

nx j := 0..<br />

ny<br />

Dx( x,<br />

y)<br />

T k , j<br />

⋅<br />

( )<br />

+<br />

( xk − x0)<br />

:= ny :=<br />

delx<br />

d<br />

:=<br />

dx F( x,<br />

y)<br />

d<br />

Dy ( x,<br />

y)<br />

:=<br />

dy F( x,<br />

y)<br />

x0 := −5<br />

xk := 5 y0 := −5<br />

yk := 5<br />

( yk − y0 )<br />

dely<br />

( ) := Dx( x0 + k ⋅ delx , y0 + j ⋅ dely ) + Dy ( x0 + k ⋅ delx , y0 + j ⋅ dely ) i<br />

T<br />

ФОРМАТ>ВНЕШНИЙ ВИД >ПАРАМЕТРЫ ЛИНИИ - ПАЛИТРА<br />

Рис. 44. Приклад побудови відображення поля градієнтів інструментом ВЕКТОРНОЕ ПОЛЕ.


Тема_14_MathCad_2.doc 38<br />

Рис. 45. Панель інструментів Греческий<br />

алфавит<br />

Інструмент 3D ТОЧЕЧНЫЙ ГРАФИК надає<br />

шаблон для відображення множини точок із<br />

заданими координатами. Множина задається<br />

матрицею, значення її елементів сприймаються як<br />

координата z, які прив’язуються до координат x та<br />

y, якими служать номери рядка та стовпчика<br />

матриці.<br />

Приклад показаний на рис. 46.<br />

11. Панель інструментів Греческий алфавит<br />

Служить для введення грецьких літер –<br />

прописних та звичайних (рис. 45). Ці літери<br />

можуть вживатися у формулах так само вільно, як і<br />

латинські – для позначення змінних, функцій,<br />

операторів тощо.<br />

v :=<br />

⎛<br />

⎜<br />

⎜<br />

⎝<br />

10<br />

20<br />

60<br />

5<br />

33<br />

9<br />

111<br />

2<br />

1<br />

⎞<br />

⎟<br />

⎟<br />

⎠<br />

v<br />

v<br />

Рис. 46. Приклад побудови відображення інструментами 3D ТОЧЕЧНЫЙ ГРАФИК та 3D-СТОЛБЧАТАЯ<br />

ДИАГРАММА


Тема_14_MathCad_3.doc 39<br />

12. Анімаційні ефекти відображень<br />

Анімаційний ефект означає створення послідовної зміни відображення за рахунок зміни із<br />

заданою частотою послідовності зображень (кадрів). Ефект анімації можна надати графікам,<br />

відображенням поверхонь, діаграмам тощо.<br />

Для одержання анімаційного ефекту графіка слід:<br />

- записати вираз функції з участю параметра FRAME, наприклад:<br />

p : = FRAME /10<br />

F(<br />

x)<br />

: =<br />

p ⋅sin(<br />

x);<br />

- скористатися інструментом побудови графіка на панелі інструментів ГРАФИКИ<br />

кнопкою ДЕКАРТОВ ГРАФИК;<br />

- вписати укажчик функції або її вираз на місце маркера поле біля вісі ординат –<br />

наприклад, F( x)<br />

або p ⋅sin(<br />

x)<br />

;<br />

- виконати пункт меню ВИД > АНИМАЦИЯ;<br />

- встановити у діалоговому вікні, яке з‘явиться, три параметри анімації – початкове<br />

значення FRAME (номер поточного кадру) , кінцеве значення і швидкість. За умовчанням це<br />

0, 9 та 10. Непогана якість буде при параметрах 0, 90, 30, тоді створиться фільм тривалістю 3<br />

секунди. Пункт меню ПАРАМЕТРЫ слід виконувати обов’язково, навіть якщо параметри<br />

встановлюються за умовчанням. Завершується цей пункт натисканням “ОК”. У вікні<br />

ПАРАМЕТРЫ слід також встановити ПРОГРАММУ СЖАТИЯ - Microsoft video.<br />

- обвести курсором миші область графіка, вона виділиться пунктирною лінією і<br />

натиснути кнопку “Анімація”, в результаті чого піде процес створення анімаційних кадрів.<br />

Його можна спостерігати у вікні.<br />

- Після завершення цього процесу з’явиться вікно програми відтворення , у якому слід<br />

натиснути кнопку із стрілкою, завдяки чому послідовність кадрів буде відтворено.<br />

Окремі кадри можна подивитися, рухаючи повзунок вздовж нижньої границі вікна<br />

програми PLAYBACK. Якщо все гаразд, то у вікні АНИМАЦИЯ виконати пункт меню<br />

СОХРАНИТЬ КАК і задати ім’я файлу – наприклад, Grafik.avi. Після цього можна<br />

переглядати анімаційні файли у будь-який час.<br />

Відтворити фільм можна програмою PLAYBACK або ПРОИГРЫВАТЕЛЬ WINDOWS<br />

MEDIA. Для відтворення програмою ПРОИГРЫВАТЕЛЬ WINDOWS MEDIA досить двічі<br />

клікнути ім‘я анімаційного файлу та натиснути у її вікні кнопку відтворення. Для<br />

відтворення програмою PLAYBACK слід програмі Mathcad виконати пункт меню ВИД ><br />

ВОСПРОИЗВЕСТИ, у вікні програми натиснути кнопку виходу у папки, ОТКРЫТЬ і<br />

назвати ім’я анімаційного файлу (наприклад, Grafik.avi).


Тема_14_MathCad_3.doc 40<br />

Анімація поверхні виконується аналогічно. Особливості: після входу у пункт меню<br />

АНИМАЦИЯ область графіка, можливо не захоче виділятися. Пунктирна лінія буде<br />

обриватися, лишаючи уривки на екрані. Уривки убрати по ВИД > ОБНОВИТЬ і повторити<br />

спробу. Якщо не вийде, область графіка зменшити. Приклади наведені на рис. 47, 49, 50.<br />

FRAME<br />

p := f( x) := sin ( p ⋅ x)<br />

9<br />

1<br />

0.6<br />

f( x)<br />

0.2<br />

0.2<br />

0.6<br />

1<br />

4 2.4 0.8 0.8 2.4 4<br />

x<br />

Пункт меню ВИД > АНИМАЦИЯ >ДЛЯ КАДРА ОТ 0 ДО 20, СКОРОСТЬ 10 КАДРОВ/CЕК ><br />

ПАРАМЕТРЫ > ПРОГРАММА СЖАТИЯ MICROSOFT VIDEO 1, ОПОРНЫЙ КАДР КАЖДЫЕ 1<br />

КАДРОВ, КАЧЕСТВО СЖАТИЯ 50, OK.<br />

Обвести область графика мишею, натиснути кнопку АНИМАЦИЯ.<br />

У вікні PLAYBACK натиснути кнопку ВОСПРОИЗВЕСТИ (на ній трикутник вершиною<br />

праворуч).<br />

У вікні АНИМАЦИЯ натиснути кнопку СОХРАНИТЬ КАК, вказати ім'я файлу, у якому<br />

зберігатиметься фільм, наприклад, Grafik.avi, а також папку, де його слід розміститись.<br />

Вийти з Mathcad або згорнути його вікно, знайти файл фільму і клікнути його ім'я двічі.<br />

Відтворити фільм програвачем WINDOWS MEDIA повністю та покадрово.<br />

Приклад програвання анімаційної моделі. Показано три кадри анімаційного фільму.<br />

Для його запуску клікнути двічі по імені файлу фільму “Grafik.avi” у вікні програми<br />

ПРОВОДНИК або у Mathcad виконати пункт меню ВИД > ВОСПРОИЗВЕДЕНИЕ.<br />

Натиснути кнопку ► або потягнути за повзунок у вікні програми PLAYBACK.<br />

Рис. 47. Приклад надання анімаційного ефекту графікові функції у декартовій системі координат.


Тема_14_MathCad_3.doc 41<br />

Рис. 48. Вигляд вікна програми ПРОИГРЫВАТЕЛЬ<br />

WINDOWS MEDIA.<br />

У наведеному на рис. 47<br />

прикладі параметру FRAME призначено<br />

початкове значення 0, кінцеве значення<br />

40, швидкість 10 кадрів в секунду. Фільм<br />

записано у файл "Volny.avi".<br />

Відтворюється командою ВИД ><br />

ВОСПРОИЗВЕДЕНИЕ, файл "Volny.avi"<br />

(рис. 48).<br />

Якщо не вжити потрібних заходів,<br />

може створитися ефект зміни положення<br />

осей, що приводить до<br />

непрограмованого руху поверхні -<br />

p :=<br />

FRAME<br />

10<br />

( )<br />

( )<br />

⎡⎣ ⎤⎦ cos x 2 y 2<br />

F( x,<br />

y) := exp −0.2<br />

⋅ x 2 + y 2 ⋅ + + p x0 := −5<br />

xk := 5 y0 := −5<br />

yk := 5<br />

delx := 0.2 dely := 0.2 nx<br />

k := 0..<br />

nx j := 0..<br />

ny<br />

M k j<br />

, := F( x0 + k ⋅ delx , y0 + j ⋅ dely )<br />

( xk − x0)<br />

:= ny :=<br />

delx<br />

( yk − y0 )<br />

dely<br />

MФОРМАТ > ВНЕШНИЙ ВИД > ПАРАМЕТРЫ ЗАЛИВКИ - ЗАЛИТЬ ПОВЕРХНОСТЬ,<br />

ПАРАМЕТРЫ ЦВЕТА - СПЛОШНОЙ ЦВЕТ, встановити жовтий.<br />

ФОРМАТ > ОСЬ > Z-ОСЬ > АВТОШКАЛА виключити, МИНИМУМ - -1, МАКСИМУМ 1, X-ОСЬ<br />

> АВТОШКАЛА, Y-ОСЬ > АВТОШКАЛА включити.<br />

ВИД > АНИМАЦИЯ > ДЛЯ КАДАРА ОТ 0 ДО 40 СКОРОСТЬ 10, обвести область<br />

відображення поверхні курсором миши, натиснути кнопку АНИМАЦИЯ у вікні АНИМАЦИЯ,<br />

СОХРАНИТЬ КАК, вказати шлях до папки своїх документів, вказати ім'я Volny.avi, у вікні<br />

PLAYBACK натиснути кнопку відтворення.<br />

Для відтворення записаного фільму: завантажити Mathcad, ВИД > ВОСПРОИЗВЕДЕНИЕ > у<br />

вікні Playback натиснути кнопку ОТКРЫТЬ > зайти у потрібну папку, указати им'я файлу Volny,<br />

ОТКРЫТЬ, натиснути кнопку відтворення.<br />

Рис. 49. Приклад анімації поверхні із створенням файлу фільму.


Тема_14_MathCad_3.doc 42<br />

наприклад підйому разом із підстройкою вісі 0z. Для того, щоб не створювалося ефекту<br />

зміни положення осей, треба виконати команду: ФОРМАТ > ОСЬ > Z-ОСЬ > ГРАНИЦЫ<br />

ОСИ, зняти АВТОШКАЛА і поставити границі МИМНИМУМ ТА МАКСИМУМ (у<br />

Рис. 50. Кадри фільму, записані у файлі Volny.avi і відтворені у Mathcad командою ВИД ><br />

ВОСПРОИЗВЕДЕНИЕ.


Тема_14_MathCad_3.doc 43<br />

прикладі на рис. 50 - -1 та 1).<br />

Анімаційні ефекти так само легко відтворити і з поверхнями, рівняння яких задано у<br />

параметричному вигляді. На рис.51 - 52 наведено ілюстрацію.<br />

Анімація поверхні, рівняння якої задано у параметричному вигляді<br />

Анімація поверхні, рівняння якої задано у параметричному вигляд і<br />

N := 20 p := FRAME<br />

i := 0..<br />

N φ i := i ⋅ π N<br />

j := 0..<br />

N θ j := j⋅<br />

2⋅π<br />

N<br />

X i j<br />

, := sin φ i<br />

( ) ⋅cos ( θ j )<br />

Y i j<br />

p<br />

, := sin ( φ i ) ⋅sin ( θ j ) Z i , j := cos ⎜ φ i +<br />

5<br />

ФОРМАТ > ОБЩИЙ > СТИЛЬ ОСЕЙ - УГОЛ, ГРАНИЦЫ ГРАФИКА - ГРАНИЦЫ;<br />

ПОКАЗЫВАТЬ КАК ПОВЕРХНОСТНЫЙ ГРАФИК;<br />

ФОРМАТ > ОСЬ > Х-ОСЬ > АВТОСЕТКА, НУМЕРАЦИЯ, АВТОШКАЛА;<br />

ФОРМАТ > ОСЬ >Y-ОСЬ > АВТОСЕТКА, НУМЕРАЦИЯ, АВТОШКАЛА;<br />

ФОРМАТ > ОСЬ >Z-ОСЬ > АВТОСЕТКА, НУМЕРАЦИЯ, АВТОШКАЛА виключити;<br />

МИНИМУМ -1, МАСИМУМ 1;<br />

ФОРМАТ > ПАРАМЕТРЫ ЗАЛИВКИ > ЗАЛИТЬ ПОВЕРХНОСТЬ, ПЛАВНЫЕ ТЕНИ,<br />

СПЛОШНОЙ ЦВЕТ (синій); ПАРАМЕТЫ ЛИНИИ > КАРКАС, СПЛОШНОЙ ЦВЕТ<br />

(жовтий);<br />

ФОРМАТ > ОСВЕЩЕНИЕ > ВКЛЮЧИТЬ ОСВЕЩЕНИЕ (Sheme 1);<br />

ФОРМАТ > ОСНОВАНИЕ > ОСНОВАНИЕ X-Y > ЗАКРАСИТЬ ОСНОВАНИЕ, ЦВЕТ<br />

коричневий;<br />

ФОРМАТ > СПЕЦИАЛЬНЫЙ > СВОЙСТВА КОНТУРА > АВТОКОНТУР;<br />

ФОРМАТ > ДОПОЛНИТЕЛЬНО >ПАЛИТРА> ПОВЫШЕНИЕ Z > ВЫБОР ПАЛИТРЫ<br />

-Rainbow.<br />

ВИД > АНИМАЦИЯ >ДЛЯ КАДРА ОТ 0 ДО 20 СКОРОСТЬ 10; ПАРАМЕТРЫ ><br />

> ПРОГРАММА СЖАТИЯ MICROSOFT VIDEO 1, ОПОРНЫЙ КАДР - КАЖДЫЕ 1 КАДР;<br />

КАЧЕСТВО СЖАТИЯ 60. Обвести выдображення, натиснути кнопку АНИМАЦИЯ. Піде<br />

покадровий показ створення фільму. Після заверершення з'явиться вікно програми<br />

відтворення фільмів PlayBack. У вікні АНИМАЦИЯ натиснути кнопку СОХРАНИТЬ КАК<br />

і вказати ім'я файлу з розширенням .avi для збереження фільму.<br />

У вікні програми PlayBack натиснути кнопку відтворення фільму.<br />

⎛<br />

⎝<br />

⎞ ⎟⎠<br />

Рис. 51..Кадри з анімаційного фільму трансформації сфери, рівняння якої задано<br />

параметрично.


Тема_14_MathCad_3.doc 44<br />

Рис. 52 .Кадри з анімаційного фільму трансформації сфери, рівняння якої задано параметрично.<br />

13. Розв‘язання рівнянь та систем рівнянь<br />

Для чисельного пошуку коренів рівняння в програмі MathCad є функція root. Вона<br />

служить для розв‘язання рівнянь вигляду f(x) = 0, де f(x) - вираз, корені якого потрібно<br />

знайти, а х — невідома. Для пошуку коренів за допомогою функції root треба присвоїти<br />

шуканій змінний початкове наближення, а потім обчислити корінь за допомогою запису<br />

“root(f(x),x)=“. Функція root повертає те значення вказаної другим параметром функції root<br />

змінної, при якому f(x) дорівнює нулю. Якщо рівняння має кілька коренів, як у наведеному<br />

прикладі (рис. 53), то функція root видає той корінь, який є найближчим до обраного<br />

початкового наближення.<br />

( ) = −2<br />

x:= −10<br />

root x 2 − 4,<br />

x<br />

x:= 10 g( x) := x 2 − 4 root( g( x) , x) = 2<br />

Рис. 53. Приклад чисельного розв‘язання рівняння за допомогою функції root. При першому<br />

наближенні x=-10 одержано найближчий до цього значення корінь –2, а при першому наближенні<br />

x=10 – другий корінь x=2.<br />

Для розв'язання системи рівнянь та нерівностей можна також застосувати інший - більш<br />

універсальний засіб - блок розв‘язку, що починається з ключового слова given (“дано”) і<br />

закінчується записом укажчику функції find (“знайти”). Між ними розташовують логічні<br />

твердження, що задають обмеження на значення шуканих величин, іншими словами,<br />

рівняння і нерівності. Усім змінним, використовуваним для позначення невідомих величин,<br />

треба заздалегідь присвоїти початкові значення. У такий же спосіб можна розв‘язувати<br />

алгебраїчні рівняння, які можна також розв‘язувати за допомогою функції root.<br />

Між лівою та правою частиною рівняння записують знак логічної рівності - кнопкою<br />

БУЛЕВО РАВЕНСТВО (Boolean Equals) на панелі інструментів БУЛЕВО. Він виглядає як<br />

жирний знак рівності «=». Інші знаки логічних відношень ( і т.д.) також на на цій панелі.


Тема_14_MathCad_3.doc 45<br />

Укажчик функції find має формат: Find(список змінних). У списку перераховують через<br />

кому шукані величини. Ця функція повертає вектор, що містить обчислені значення<br />

невідомих. Приклади наведено на рис. 54.<br />

Приклад чисельного розв'язання алгебраїчного рівняння<br />

засобом "Блок даних" (Given - Find)<br />

Перше наближення<br />

z := 2<br />

Given<br />

z 2 9<br />

Блок розв'язання<br />

Find<br />

( z) = 3<br />

z := −20<br />

Given<br />

z 2 9 Find ( z) = −3<br />

Приклади чисельного розв'язання системи алгебраїчних рівнянь<br />

засобом "Блок даних" (Given - Find)<br />

Перше наближення<br />

Блок даних<br />

x := 1 y := 2<br />

Given<br />

x<br />

x<br />

+ y 2<br />

− y 0<br />

Блок розв'язання<br />

Find<br />

( x,<br />

y )<br />

=<br />

⎛<br />

⎜<br />

⎝<br />

1<br />

1<br />

⎞ ⎟⎠<br />

Перше наближення<br />

x := 2 y := 1<br />

Блок даних<br />

Given<br />

x 2 y 2 + 29<br />

x<br />

− y 3<br />

Блок розв'язання<br />

Find<br />

( x,<br />

y )<br />

=<br />

⎛<br />

⎜<br />

⎝<br />

5<br />

2<br />

⎞ ⎟⎠<br />

Приклад чисельного розв'язання системи рівнянь та нерівностей<br />

засобом "Блок даних" (Given - Find)<br />

Перше наближення<br />

x := −25<br />

Блок даних<br />

Given<br />

x 2 9<br />

Блок розв'язання<br />

x > 0<br />

Find ( x) = 3<br />

Рис. 54. Приклади розв‘язання алгебраїчних рівнянь, систем алгебраїчних рівнянь та нерівностей<br />

засобом “Блок даних” (Given – Find).


Тема_14_MathCad_4.doc 46<br />

14. Аналітичні обчислення<br />

За допомогою інструментів аналітичних обчислень знаходять аналітичні розв'язки рівнянь<br />

і систем, в яких беруть участь параметри, знаходять всі розв'язки рівнянь та систем рівнянь,<br />

а також проводять перетворення складних виразів - наприклад, спрощення. В разі рівнянь з<br />

параметрами можна таким чином одержати нечисловий результат. Значення, присвоєні<br />

невідомим перед аналітичними обчисленнями, ігноруються, тому що змінні розглядаються<br />

як невизначені параметри. Команди для виконання аналітичних обчислень виконують з<br />

меню СИМВОЛЫ або універсальним інструментом СИМВОЛИЧЕКИЙ ЗНАК<br />

РАВЕНСТВА ( → ) на панелі інструментів ВЫЧИСЛЕНИЯ. Формат аналітичного<br />

обчислення з символічним знаком рівності має вигляд:<br />

Вираз →<br />

Як тільки знак → буде записано, Mathcad виконає аналітичні обчислення і запише<br />

праворуч від цього знаку результат. Таким чином можна спрощувати арифметичні вирази,<br />

обчислювати похідні, невизначені інтеграли, суми скінченних та нескінченних рядів, границі<br />

послідовностей, розв‘язання алгебраїчних рівнянь та систем рівнянь з параметрами тощо.<br />

Приклади наведені на рис. 57 – 59.<br />

Команди меню СИМВОЛЫ дозволяють виконувати аналітичні (в термінології Mathcad –<br />

“символічні”) операції більш цілеспрямовано.<br />

Команда служить для розкладу виразу на множники. Для цього досить виділити<br />

формульним курсором весь вираз або вибрати ту його частину, які потрібно розкласти на<br />

множники і виконати команду СИМВОЛЫ > ФАКТОР.<br />

Для спрощення виразу чи його частини, треба виділити його кутовим курсором і дати<br />

команду СИМВОЛЫ > УПРОСТИТЬ.<br />

Приклади використання команд ФАКТОР та УПРОСТИТЬ подані на рис. 56 –58.<br />

При спрощенні скорочуються cпільні множники і приводяться подібні члени,<br />

застосовуються тригонометричні тотожності, спрощуються вирази з радикалами, а також<br />

вирази, що містять пряму і зворотну функції (типу x=e lnx ). Дії по розкриттю дужок і<br />

спрощенню складних виразів можна виконати командою СИМВОЛЫ > РАСШИРИТЬ. При<br />

цьому формульний курсор повинний охоплювати весь вираз.<br />

Команду СИМВОЛЫ > УПРОСТИТЬ застосовують і в більш складних випадках. З її<br />

допомогою можна:<br />

- обчислити границю числової послідовності, заданої загальним членом;


Тема_14_MathCad_4.doc 47<br />

- знайти загальну формулу для суми членів числової послідовності, заданої загальним<br />

членом;<br />

- обчислити похідну даної функції;<br />

- знайти первісну даної функції (невизначений інтеграл).<br />

Приклади наведено на рис. 56-58.<br />

sin( x) 2 + cos ( x) 2<br />

1 + 6 ⋅ x + 12 ⋅ x 2 + 8 ⋅ x 3<br />

a 2 − b 2<br />

( 1 + 2x) 3<br />

1<br />

( 2 ⋅ x + 1) 3<br />

( a − b) ⋅ ( a + b)<br />

1 2 3 4<br />

Рис. 55. Приклади символічних перетворень. 1 – СИМВОЛЫ – УПРОСТИТЬ;<br />

2, 3 - СИМВОЛЫ – ФАКТОР; 4 - - СИМВОЛЫ – РАСШИРИТЬ.<br />

1 + 6 ⋅ x + 12 ⋅ x 2 + 8 ⋅ x 3<br />

Командами меню СИМВОЛЫ можна виконувати аналітичні операції, орієнтовані на<br />

змінну, використану у виразі. Для цього слід виділити у виразі змінну і виконати команду з<br />

меню СИМВОЛЫ > ПЕРЕМЕННАЯ > ВЫЧИСЛИТЬ. Цією командою шукаються корені<br />

функції, заданої виразом. Наприклад, якщо виділити кутовим курсором змінну t у виразі t 2 -a ,<br />

то в результаті застосування цієї команди будуть знайдені всі корені рівняння t 2 -a=0. Так<br />

Приклад спрощення виразу з оберненими функціями за допомогою команди меню СИМВОЛЫ<br />

> УПРОСТИТЬ<br />

e ln x<br />

( ) − sin( asin( x)<br />

)<br />

Виділяємо ВИРАЗ і виконуємо команду ме ню СИМВОЛЫ > УПРОСТИТЬ. Одержимо:<br />

Рис. 56. Приклад спрощення виразу з оберненими функціями.<br />

0<br />

само можна розв'язати нерівність. Mathcad може розв'язувати квадратні та дрібнораціональні<br />

нерівності. Приклади наведено нижче на рис. 56-58. Інші можливості<br />

використання цього меню включають :аналітичне диференціювання: СИМВОЛЫ ><br />

ПЕРЕМЕННАЯ > ДИФФЕРЕНЦИАЛЫ і інтегрування СИМВОЛЫ > ПЕРЕМЕННАЯ ><br />

ИНТЕГРАЦИЯ.<br />

Заміна змінної виконується командою: СИМВОЛЫ > ПЕРЕМЕННАЯ > ЗАМЕНА. В<br />

результаті - замість змінної, на яку указує формульний курсор, в усі вирази підставляється<br />

вміст буфера обміну, яким може бути вираз.


Тема_14_MathCad_4.doc 48<br />

Приклад символьного обчислення границі за допомогою символічного знаку рівності (стрілка<br />

праворуч)<br />

sin( a ⋅ x)<br />

lim<br />

→ a<br />

x<br />

x→0<br />

Приклад символьного обчислення границі за допомогою команди СИМВОЛЫ > РАСШИРИТЬ<br />

lim<br />

x→0<br />

sin( a ⋅ x)<br />

x<br />

Виділяємо вираз символьним курсором і виконуємо команду СИМВОЛЫ > РАСШИРИТЬ.<br />

Одержимо границю:<br />

a<br />

Приклад спрощення виразу за допомогою команди СИМВОЛЫ > УПРОСТИТЬ<br />

A<br />

B<br />

+<br />

B<br />

A<br />

Виділяємо вираз символьним курсором і виконуємо команду СИМВОЛЫ > УПРОСТИТЬ.<br />

Одержимо:<br />

( A 2 + B 2 )<br />

( B ⋅ A)<br />

Приклад спрощення виразу за допомогою команди СИМВОЛЫ > РАСШИРИТЬ<br />

( X − A) ⋅ ( X + A)<br />

Виділяємо вираз символьним курсором і виконуємо команду СИМВОЛЫ > РАСШИРИТЬ.<br />

Одержимо:<br />

X 2 − A 2<br />

Приклад розкладання виразу на множники за допомогою команди СИМВОЛЫ > ФАКТОРЫ<br />

2 ⋅ x 3 − 3 ⋅ x 2 − 11 ⋅ x + 6<br />

Виділяємо вираз символьним курсором і виконуємо команду СИМВОЛЫ > ФАКТОРЫ.<br />

Одержимо:<br />

( 2 ⋅ x − 1) ⋅ ( x + 2)<br />

⋅ ( x − 3)<br />

Рис. 57. Приклади аналітичних обчислень за допомогою команд меню СИМВОЛЫ та символіного знаку<br />

рівності (обчислення границь, спрощення виразів, розкладання виразів на множники, обчислення сум<br />

нескінченних рядів)


Тема_14_MathCad_4.doc 49<br />

Приклади символьного обчислення суми нескінченного ряду за допомогою символічного знаку<br />

рівності (стрілка праворуч)<br />

∞<br />

∑<br />

x i<br />

1 + → 1 + exp( x) ⋅ ( 1 − exp( −x)<br />

)<br />

i!<br />

i = 1<br />

i<br />

∞<br />

∑<br />

=<br />

1<br />

p i<br />

→<br />

−p<br />

( p − 1)<br />

Приклад символьного обчислення за допомогою команди СИМВОЛЫ > УПРОСТИТЬ.<br />

1 +<br />

i<br />

∞<br />

∑<br />

=<br />

1<br />

x i<br />

i!<br />

Виділяємо вираз символьним курсором і виконуємо команду СИМВОЛЫ > УПРОСТИТЬ.<br />

Одержимо:<br />

exp( x)<br />

Приклад розв'язання квадратної нерівності за допомогою команди СИМВОЛЫ ><br />

ПЕРЕМЕННЫЕ > ВЫЧИСЛИТЬ .<br />

x 2 − 5 ⋅ x + 6 ≤ 0<br />

Виділяємо змінну x символьним курсором і виконуємо команду СИМВОЛЫ > ПЕРЕМЕННЫЕ<br />

> ВЫЧИСЛИТЬ . Одержимо розв'язок:<br />

( 2 ≤ x) ⋅ ( x ≤ 3)<br />

Приклад розв'язання дробово-раціональної нерівності за допомогою команди СИМВОЛЫ ><br />

ПЕРЕМЕННЫЕ > ВЫЧИСЛИТЬ .<br />

x − 1<br />

2 − 3 ⋅ x<br />

≥ 0<br />

Виділяємо змінну x символьним курсором і виконуємо команду СИМВОЛЫ > ПЕРЕМЕННЫЕ<br />

> ВЫЧИСЛИТЬ . Одержимо розв'язок:<br />

⎛<br />

⎜<br />

⎝<br />

2<br />

3<br />

< x<br />

⎞<br />

⎟<br />

⎠<br />

⋅ ( x ≤ 1)<br />

Рис. 58. Приклади аналітичних обчислень за допомогою команд меню СИМВОЛЫ та символьного знаку<br />

рівності. (аналітичне обчислення сум нескінченних рядів, розв‘язання нерівностей)


Тема_14_MathCad_4.doc 50<br />

Приклад знаходження всіх коренів алгебраїчного рівняння за допомогою команди<br />

СИМВОЛЫ > ПЕРЕМЕННЫЕ > ВЫЧИСЛИТЬ .<br />

2 ⋅ x 3 − 3 ⋅ x 2 − 11 ⋅ x + 6<br />

Виділяємо змінну x символьним курсором і виконуємо команду СИМВОЛЫ > ПЕРЕМЕННЫЕ<br />

> ВЫЧИСЛИТЬ . Одержимо всі три корені рівняння:<br />

⎛<br />

⎜<br />

⎜<br />

⎜<br />

⎜<br />

⎝<br />

3<br />

1<br />

2<br />

−2<br />

⎞<br />

⎟<br />

⎟<br />

⎟<br />

⎟<br />

⎠<br />

Приклад обчислень із заміною змінної у виразі за допомогою команди СИМВОЛЫ ><br />

ПЕРЕМЕННЫЕ > ЗАМЕНА.<br />

t + 4t 2 − t 3<br />

Забираємо у буфер вираз U+1.<br />

СИМВОЛЫ > ПЕРЕМЕННЫЕ<br />

результат:<br />

U + 1<br />

U + 1 + 4 ⋅ ( U + 1) 2 − ( U + 1) 3 = 12<br />

U := 2<br />

Виділяємо змінну t символьним курсором і виконуємо команду<br />

> ЗАМЕНА. Ставимо знак рівності після виразу і одержуємо<br />

Приклади аналітичного обчислення похідної та та невизначеного інтегралу за допомогою<br />

символічного знаку рівності<br />

d<br />

dx ln( x)<br />

1<br />

→ 2<br />

x<br />

2<br />

−1<br />

d<br />

ln( x)<br />

→<br />

dx<br />

x 2<br />

⌠<br />

⎮<br />

⎮<br />

⌡<br />

1<br />

x<br />

dx<br />

→<br />

ln( x)<br />

⌠<br />

⎮<br />

⌡<br />

sin ( x) ⋅ cos ( x)<br />

dx<br />

→<br />

−1<br />

2<br />

⋅ cos ( x) 2<br />

⌠<br />

⎮<br />

⌡<br />

a<br />

b<br />

sin ( x)<br />

dx<br />

→ −cos ( b)<br />

+ cos ( a)<br />

⌠<br />

⎮<br />

⎮<br />

⌡<br />

1<br />

∞<br />

1<br />

( x − a) 2<br />

dx<br />

→<br />

−1<br />

( −1<br />

+ a)<br />

F( t)<br />

:=<br />

0<br />

t<br />

⌠<br />

⎮<br />

⌡<br />

−<br />

e x2<br />

dx<br />

dF ( t)<br />

d<br />

:=<br />

dt F( t)<br />

( )<br />

dF ( t) → exp −t 2<br />

Приклади аналітичного обчислення похідної та<br />

допомогоюкоманд меню СИМВОЛЫ<br />

ln( t)<br />

Виділяємо змінну t символьним<br />

курсором і виконуємо команду<br />

СИМВОЛЫ > ПЕРЕМЕННЫЕ ><br />

ДИФФЕРЕНЦИАЛЫ . Одержимо :<br />

та невизначеного інтегралу за<br />

Виділяємо змінну u символьним<br />

курсором і виконуємо команду<br />

СИМВОЛЫ > ПЕРЕМЕННЫЕ ><br />

ИНТЕГРАЦИЯ . Одержимо :<br />

1<br />

u<br />

1<br />

t<br />

Рис. 59. Приклади аналітичних обчислень за допомогою команд меню СИМВОЛЫ та символьного знаку<br />

рівності. (знаходження всіх коренів алгебраїчного рівняння, зміна змінної, аналітичне обчислення похідних<br />

та невизначених інтегралів).<br />

ln( u)


Тема_14_MathCad_5.doc 51<br />

Для розкладу в ряд Тейлора: указати формульним курсором змінну і виконати<br />

команду СИМВОЛЫ > ПЕРЕМЕННАЯ > РАЗЛОЖИТЬ НА СОСТАВЛЯЮЩИЕ. Кількість<br />

членів ряду вказують у діалоговому вікні. Приклад на рис. 60.<br />

Для подання дробово-раціональної функції у виді суми простих дробів з лінійними і<br />

квадратичними знаменниками потрібно виділити символьним курсором змінну у виразі і<br />

виконати команду меню СИМВОЛЫ > ПЕРЕМЕННЫЕ > ПРЕОБРАЗОВАНИЕ В<br />

ЧАСТИЧНЫЕ ДОЛИ. Приклад на рис. 61.<br />

Приклади розкладу функції у ряд Тейлораза до помогою команди меню СИМВОЛЫ ><br />

ПЕРЕМЕННЫЕ > РАЗЛОЖИТЬ НА СОСТАВЛЯЮЩИЕ<br />

1<br />

1 − x<br />

Виділяємо змінну x символьним<br />

курсором і виконуємо команду СИМВОЛЫ<br />

> ПЕРЕМЕННЫЕ > РАЗЛОЖИТЬ НА<br />

СОСТАВЛЯЮЩИЕ. У вікні, що зявиться,<br />

біля назви ПОРЯДОК АППРОКСИМАЦИИ<br />

вказуємо кількість членів розкладу (4).<br />

Одержимо:<br />

e t<br />

Виділяємо змінну t символьним курсором<br />

і виконуємо команду СИМВОЛЫ ><br />

ПЕРЕМЕННЫЕ > РАЗЛОЖИТЬ НА<br />

СОСТАВЛЯЮЩИЕ. У вікні, що зявиться,<br />

біля назви ПОРЯДОК АППРОКСИМАЦИИ<br />

вказуємо кількість членів розкладу (4).<br />

Одержимо:<br />

( )<br />

1 + 1 ⋅ x + 1 ⋅ x 2 + 1 ⋅ x 3 + O x 4<br />

1 + 1 ⋅ t<br />

+<br />

1<br />

2<br />

⋅<br />

t 2<br />

+<br />

1<br />

6<br />

⋅<br />

t 3<br />

+<br />

1<br />

24<br />

⋅<br />

t 4<br />

( )<br />

1<br />

+ ⋅ t 5 + O t 6<br />

120<br />

Рис. 60. Приклади функції розкладу у ряд Тейлора<br />

Приклади розкладу дробово-раціональної функції на суму дробів з лінійними та квадратичними<br />

знаменниками за до помогою команди меню СИМВОЛЫ > ПЕРЕМЕННЫЕ ><br />

ПРЕОБРАЗОВАНИЕ В ЧАСТИЧНЫЕ ДОЛИ<br />

2<br />

x 2 − 1<br />

Виділяємо змінну x символьним курсором і виконуємо команду СИМВОЛЫ > ПЕРЕМЕННЫЕ<br />

> ПРЕОБРАЗОВАНИЕ В ЧАСТИЧНЫЕ ДОЛИ. Одержимо:<br />

1<br />

( x − 1)<br />

−<br />

1<br />

( x + 1)<br />

Рис. 61. Приклад розкладу дробово-раціонального виразу на прості дроби.<br />

Для аналітичного розв‘язання алгебраїчних рівнянь, систем рівнянь та нерівностей можна<br />

використовувати інструмент СИМВОЛИЧЕСКИЙ ЗНАК РАВЕНСТВА ( →) на панелі<br />

інструментів ВЫЧИСЛЕНИЯ. Блок рішення задається точно так само, як при чисельному<br />

рішенні (хоча початкові значення перемінних можна не задавати), а остання формула блоку<br />

повинна виглядати як find(x,y,...) → , де в дужках приведений список шуканих величин, а<br />

далі випливає знак аналітичного обчислення, відображуваний у виді стрілки, спрямованої


Тема_14_MathCad_5.doc 52<br />

вправо. Так можна вирішувати і рівняння без параметрів, причому в цьому випадку<br />

будуть знайдені всі корені. Приклади – на рис. 62.<br />

Будь-яке аналітичне обчислення можна застосувати за допомогою ключового слова. Для<br />

Приклади аналітичного розв'язання алгебраїчного рівняння та систем<br />

рівняннь.<br />

алгебраїчних<br />

h<br />

Given<br />

+ z 1<br />

Find ( h ) → −z<br />

+ 1<br />

h<br />

Given<br />

+ z 1<br />

Find ( z) → −h<br />

+ 1<br />

Given<br />

x<br />

Find<br />

+ y 5 ⋅ a<br />

x − y<br />

( x,<br />

y )<br />

a<br />

→<br />

⎛<br />

⎜<br />

⎝<br />

3 ⋅ a<br />

2 ⋅ a<br />

⎞ ⎟⎠<br />

Приклади знаходження всіх коренів алгебраїчного рівняння засобом використання<br />

інтрумкенту СИМВОЛИЧЕСКИЙ ЗНАК РАВЕНСТВА .<br />

Given<br />

x 2 − 4 0<br />

Find ( x) → ( 2 −2<br />

)<br />

Given<br />

x 2 + 4 0<br />

Find ( x) → ( 2 ⋅ i −2<br />

⋅ i )<br />

Given<br />

Find<br />

2 x 2 − 16 0<br />

( x)<br />

→<br />

⎡<br />

⎢<br />

⎣<br />

1<br />

ln ( 2)<br />

⎛<br />

⎜<br />

⋅ ( ln ( 2) ⋅ ln ( 16)<br />

)<br />

⎝<br />

Для спрощення обводимо кутовим курсором обидва одержані корені,<br />

буфер і виконуємо команду СИМВОЛЫ > УПРОСТИТЬ . Одержимо:<br />

1<br />

2<br />

⎞ ⎟⎠<br />

−1<br />

ln ( 2)<br />

⎛<br />

⎜<br />

⋅ ( ln ( 2) ⋅ ln ( 16)<br />

)<br />

⎝<br />

1<br />

2<br />

⎞ ⎟⎠<br />

⎤<br />

⎥<br />

⎦<br />

забираємо у<br />

⎡<br />

⎢<br />

⎣<br />

1<br />

ln ( 2)<br />

( 2 −2<br />

)<br />

⎛<br />

⎜<br />

⋅ ( ln ( 2) ⋅ ln ( 16)<br />

)<br />

⎝<br />

1<br />

2<br />

⎞ ⎟⎠<br />

−1<br />

ln ( 2)<br />

⎛<br />

⎜<br />

⋅ ( ln ( 2) ⋅ ln ( 16)<br />

)<br />

⎝<br />

1<br />

2<br />

⎞ ⎟⎠<br />

⎤<br />

⎥<br />

⎦<br />

Рис. 62. Приклади розв‘язання алгебраїчних рівнянь, систем рівнянь (в тому числі параметричних),<br />

знаходження всіх коренів рівнянь за допомогою інструменту СИМВОЛИЧЕСКИЙ ЗНАК РАВЕНСТВА


цього використовують кнопку<br />

Тема_14_MathCad_5.doc 53<br />

• → СИМВОЛИЧЕСКАЯ ОЦЕНКА на панелі<br />

інструментів ВЫЧИСЛЕНИЯ і вставляють ключове (службове) слово на місце маркера.<br />

Приклади – на рис. 63.<br />

Приклад використання інструменту СИМВОЛИЧЕСКАЯ ОЦЕНКА для розкладу<br />

виразу на множники. Набираємо вираз - в даному разі x*y-1, натискаємо кнопку<br />

СИМВОЛИЧЕСКАЯ ОЦЕНКА на панелі інструментів ВЫЧИСЛЕНИЯ, вствляємо на<br />

місце, вказане маркером, ключове слово - в даному разі factor, натискаємо клавішу<br />

ENTER або клавішу "стрілка праворуч". Одержимо результат -<br />

розклад виразу на<br />

множники.<br />

x ⋅ y<br />

− x factor → x ⋅ ( y − 1)<br />

Того ж самого можна спромогтися командою СИМВОЛЫ<br />

перед її виконанням вираз кутовим курсором:<br />

> ФАКТОР, обвівши<br />

x ⋅<br />

y<br />

−<br />

x<br />

x ⋅ ( y − 1)<br />

Приклад використання інструменту СИМВОЛИЧЕСКАЯ ОЦЕНКА для виконання<br />

множення у виразі. Набираємо вираз - в даному разі x(y-1), натискаємо кнопку<br />

СИМВОЛИЧЕСКАЯ ОЦЕНКА на панелі інструментів ВЫЧИСЛЕНИЯ, вствляємо на<br />

місце, вказане маркером, ключове слово - в даному разі expand, натискаємо<br />

клавішу ENTER або клавішу "стрілка праворуч". Одержимо результат:<br />

x ⋅ ( y − 1)<br />

expand → x ⋅ y<br />

−<br />

x<br />

Того ж самого можна спромогтися, обвівши перед вираз вираз кутовим курсором і<br />

натиснувши кнопку expand на панелі інструментів СИМВОЛЫ (маркер, що виникне,<br />

прибрати):<br />

x ⋅ ( y − x)<br />

expand → x ⋅ y − x 2<br />

Рис. 63. Приклад застосування інструменту СИМВОЛИЧЕСКАЯ ОЦЕНКА для перетворення виразів.<br />

15. Статистичний аналіз<br />

У Mathcad передбачено ряд відомих законів розподілу: біноміальний, Пуассона,<br />

нормальний, рівномірний. Функція та щільність нормального розподілу мають вигляд:<br />

F ( x)<br />

= pnorm ( x,<br />

m,<br />

σ ), p(<br />

x)<br />

= dnorm ( x,<br />

m,<br />

σ ),<br />

де m та σ – параметри (математичне сподівання та середнє квадратичне відхилення). На рис.<br />

64 показано побудовані у MathCad графіки цих функцій.<br />

Для згладження рядів упорядкованих спостережень є кілька різних методів, зокрема,<br />

метод медіани. Для згладження ряду його треба подати у вигляді вектора. Функція<br />

згладження має вигляд:<br />

medsmooth( y<br />

,k)), де y – вектор-стовпчик спостережень, k – рівень<br />

згладження - кількість спостережень, що має припадати на інтервал згладження.


Тема_14_MathCad_5.doc 54<br />

Функція регресії описує залежність між двома рядами спостережень, наприклад, між<br />

y ,...,<br />

1<br />

, y<br />

2<br />

y n та. 1, x2 ,..., xn.<br />

x Лінійна регресія має вигляд y=ax+b. Для обчислення оцінок<br />

коефіцієнтів використовуються функції Mathcad:<br />

<br />

<br />

a = slope ( x , y ), b = intercept ( x , y ).<br />

Аргументами служать вектори-стовпчики, компонентами яких є ряди спостережень.<br />

m<br />

m−1<br />

Поліноміальна регресія має вигляд: y = am x + a<br />

m− 1x<br />

+ ... + a1x<br />

+ a0.<br />

Для оцінки<br />

<br />

коефіцієнтів регресії використовується функція a = regress ( x,<br />

y,<br />

m).<br />

Функція<br />

m := 10 σ := 5<br />

F( x) := pnorm x, m,<br />

σ p( x) := dnorm x, m,<br />

σ x := −5, −4.5<br />

.. 25<br />

F( x)<br />

1<br />

0.8<br />

0.6<br />

0.4<br />

0.2<br />

( )<br />

( )<br />

поліноміальної регресії<br />

описується виразом<br />

<br />

interp ( a , x , y,<br />

x).<br />

Статистичні оцінки<br />

числових<br />

характеристик<br />

розподілів<br />

обчислюються за<br />

допомогою функцій<br />

Mathcad:<br />

- середнє значення –<br />

mean( x);<br />

<br />

0<br />

0.1<br />

0.08<br />

5 0 5 10 15 20 25<br />

x<br />

- медіана (серединне<br />

значення) -<br />

median( x);<br />

<br />

- дисперсія -<br />

var( x);<br />

<br />

p( x)<br />

0.06<br />

0.04<br />

- середній<br />

квадратичний<br />

відхил - stdev( x)<br />

;<br />

0.02<br />

0<br />

5 0 5 10 15 20 25<br />

x<br />

- коефіцієнт<br />

кореляції -<br />

<br />

corr(x y<br />

, );<br />

Рис. 64. Графіки функції F(x) та щільності p(x) нормального розподілу


Тема_14_MathCad_5.doc 55<br />

Застосування функцій згладження та<br />

розподілів показане на рис. 65.<br />

обчислення статистичних характеристик<br />

Згладження рядів спостережень методом медіани<br />

Vy := ( 1 2 3 2 1 3 5 7 4 3 2 1 2 1 2 ) T<br />

n := 15<br />

Vs3 := medsmooth ( Vy,<br />

3)<br />

Vs5 := medsmooth ( Vy,<br />

5)<br />

i := 0..<br />

n − 1<br />

10<br />

Vy i<br />

Vs3 i<br />

5<br />

Vs5 i<br />

0<br />

0 2 4 6 8 10 12 14<br />

k=1<br />

k=3<br />

k=5<br />

Форматування графіка:<br />

Двічі клікнути по області побудови графіка.<br />

СЛЕД > ИМЯ В ЛЕГЕНДЕ замість “trace 1” - “k=1”, замість “trace 2” - “k=3”, замість<br />

“trace 3”- “k=5”. Для першої лінії ТИП - POINTS, ЛИНИЯ ЦВЕТ red, ТОЛЩИНА 3;<br />

для другої лінії ТИП - lines, ЛИНИЯ solid; ЦВЕТ blu, ТОЛЩИНА 1; для третьої лінії<br />

ТИП - lines, ЛИНИЯ dash; ЦВЕТ grn, ТОЛЩИНА 1.<br />

i , i , i<br />

Медіани<br />

Оценки числових характеристик розподілів<br />

Vx:= ( 1 2 3 2 4 3 5 4 6 6 )<br />

Cередні значення<br />

Xme :=<br />

Xsr :=<br />

mean( Vx)<br />

median( Vx)<br />

Vy := ( 0 2 3 2 4 3 5 4 6 7 )<br />

Ysr :=<br />

Yme:=<br />

mean( Vy)<br />

median( Vy)<br />

Дисперсія<br />

Xd :=<br />

var( Vx)<br />

Середній квалратичний відхил<br />

Xs :=<br />

stdev ( Vx)<br />

Коефіціент кореляції<br />

r :=<br />

corr( Vx,<br />

Vy)<br />

Результати обчислень<br />

Xsr = 3.6<br />

Xd = 2.64<br />

Xs = 1.625<br />

Xme = 3.5<br />

Yme = 3.5<br />

Ysr = 3.6<br />

r = 0.986<br />

Рис. 65. Приклад обчислення статистичних характеристик та застосування функцій згладження з<br />

відображенням результату


Тема_14_MathCad_5.doc 56<br />

На рис. 66 показано приклад розрахунку функції лінійної регресії та побудови її<br />

графіка. На рис. 67 приклад розрахунку поліноміальних регресій 1-го, 2-го та 3-го порядків<br />

та побудови їх графіків.<br />

⎛<br />

⎜<br />

⎜<br />

⎜<br />

⎜<br />

⎜<br />

⎝<br />

2<br />

3<br />

Vx:= 4 Vy := 4 a := slope ( Vx,<br />

Vy)<br />

b := intercept( Vx,<br />

Vy)<br />

5<br />

6<br />

⎞ ⎟⎟<br />

⎟<br />

⎟⎟⎠<br />

⎛<br />

⎜<br />

⎜<br />

⎜<br />

⎜<br />

⎜<br />

⎝<br />

2<br />

5<br />

6<br />

6<br />

⎞ ⎟⎟<br />

⎟<br />

⎟⎟⎠<br />

a = 0.9 b = 1 - a і b - коєфіцієнти регресії<br />

Y( x) := a ⋅ x +<br />

b<br />

8<br />

7<br />

6<br />

Vy i<br />

Y( x)<br />

5<br />

4<br />

3<br />

2<br />

Послідовність дій по побудові графіка<br />

П. меню ВСТАВКА > ГРАФИК > X-Y-ЗАВИСИМОСТЬ.<br />

У маркер бІля вісі ординат записуємоVy i<br />

, F(x) (через кому), а у маркер біля вісі<br />

абсцис Vx i<br />

, F(x).<br />

1<br />

1 2 3 4 5 6 7<br />

Vx i , x<br />

Правою клавішею миши клікнути по області побудови графіка, ФОРМАТ СЛЕД: ><br />

ИМЯ В ЛЕГЕНДЕ - TRACE 1, ЦВЕТ - red, ТИП > POINTS, ТОЛЩИНА 3.<br />

ФОРМАТ >СЛЕД: ИМЯ В ЛЕГЕНДЕ - TRACE 2, ЦВЕТ - blu, ТИП Lines, > ЛИНИЯ -<br />

Solid, ТОЛЩИНА.<br />

Правою клавішею миши клікнути по області побудови графіка, СВОЙСТВА ><br />

ПОДСВЕТКА ОБЛАСТИ > ВЫБОР ЦВЕТА.<br />

ФОРМАТ > ОСИ X-Y > ОСЬ X> ВСПОМОГАТЕЛЬНЫЕ ЛИНИИИ - включити,<br />

АВТОСЕТКА виключити, РАЗМЕР СЕТКИ 7. Аналогічно форматується вісь Oy.<br />

Шаблон функції slope можна вставити через п. меню ВСТАВКА > ФУНКЦИЯ ><br />

Рис. 66. Приклад розрахунку лінійної регресії та побудови її графіка


Тема_14_MathCad_5.doc 57<br />

Відображення спостережень и функцій регресії на графіку.<br />

Поліноміальна регресія<br />

Vs1 := regress ( Vx, Vy,<br />

1)<br />

Vs2 := regress ( Vx, Vy,<br />

2)<br />

Vs3 := regress ( Vx, Vy,<br />

3)<br />

Y1( x) := interp( Vs1, Vx, Vy,<br />

x)<br />

Y2( x) := interp( Vs2, Vx, Vy,<br />

x)<br />

Y3( x) := interp( Vs3, Vx, Vy,<br />

x)<br />

Vs1 =<br />

⎛<br />

⎜<br />

⎜<br />

⎜<br />

⎜<br />

⎜<br />

⎝<br />

3<br />

3<br />

1<br />

1<br />

0.9<br />

⎞<br />

⎟<br />

⎟<br />

⎟<br />

⎟<br />

⎟<br />

⎠<br />

⎛<br />

⎜<br />

⎜<br />

3<br />

3<br />

2<br />

Vs2 = ⎜<br />

−2<br />

Vs3 =<br />

⎜<br />

⎜<br />

⎜<br />

⎝<br />

2.614<br />

−0.214<br />

⎞<br />

⎟⎟<br />

⎟<br />

⎟⎟⎟⎠<br />

⎛<br />

⎜<br />

⎜<br />

⎜<br />

⎜<br />

⎜<br />

⎜<br />

⎜<br />

⎜<br />

⎝<br />

3<br />

3<br />

3<br />

−10.4<br />

10.048<br />

−2.214<br />

0.167<br />

⎞ ⎟⎟⎟<br />

⎟<br />

⎟⎟⎟<br />

⎟ ⎠<br />

6<br />

Vy i<br />

Y1( x)<br />

4<br />

Y2( x)<br />

Y3( x)<br />

2<br />

0<br />

0 1 2 3 4 5 6 7<br />

Vx i , x, x,<br />

x<br />

Послідовність дій по побудові графіка<br />

У наведених позначеннях Vs - вектор коефіцієнтів. Останній - третій параметр<br />

функции Regress - порядок полиному. Шаблон функції regress можна вставити через<br />

п. меню ВСТАВКА > ФУНКЦИЯ > КАТЕГОРИИ ФУНКЦИЙ: РЕГРЕССИЯ И<br />

СГЛАЖИВАНИЕ, НАЗВАНИЕ ФУНКЦИИ: REGRESS. Шаблон функції interp - через<br />

п. меню ВСТАВКА > ФУНКЦИЯ > КАТЕГОРИИ ФУНКЦИЙ: ИНТЕРПОЛЯЦИЯ И<br />

ПРЕДСКАЗАНИЕ, НАЗВАНИЕ ФУНКЦИИ: INTERP.<br />

Рекомендується скористатися п. меню Help (він позначений ""), розділ<br />

"Поліноміальна регресія" - "Polynomial regression".<br />

Рис. 67. Приклад розрахунку поліноміальних регресій та побудови їх графіків


Тема_14_MathCad_6.doc 58<br />

16. Програмування у Mathcad<br />

Крім чудових засобів математичного аналізу, Mathcad має також і традиційні для<br />

комп‘ютерної обробки даних структури, які дозволяють складати програми. Проте вибір<br />

цих засобів обмежений, якщо їх порівнювати із сучасними середовищами програмування.<br />

В той же час вони цілком достатні для реалізації нескладних алгоритмів, а в сполучанні з<br />

іншими інструментами Mathcad надають унікальні можливості, яких не має жодне<br />

середовище програмування.<br />

Mathcad-програми являють собою процедури, подібні до яких у середовищі<br />

програмування носять назву процедур-функцій або підпрограм-функцій. Отже, як і будьякі<br />

інші функції, вони одержують вхідну інформацію через свої параметри, а результат<br />

повертають через укажчик цієї функції з фактичними параметрами. Надалі визначені<br />

таким чином функції можна використовувати як і всякі інші користувачеві функції.<br />

Функції можуть повертати скалярні, векторні або матричні значення. Допускається<br />

рекурсивне посилання на функцію.<br />

16.1. Панель інструментів Програмування<br />

Програми у Mathcad пишуть за допомогою інструментів програмування, зосереджених<br />

на однойменній панелі (рис. 68). Ними активізують відповідні шаблони, які заповнюють<br />

згідно із синтаксисом.<br />

Інструмент ДОБАВИТЬ<br />

СТРОКУ ПРОГРАММЫ<br />

Знак присвоювання<br />

Шаблон оператора IF<br />

Ключове слово<br />

OTHERWISE<br />

(“інакше”)<br />

Шаблон<br />

оператора<br />

циклу WHILE<br />

Шаблон оператора<br />

циклу FOR<br />

Шаблон оператора<br />

BREAK (“припинити”)<br />

Шаблон оператора<br />

продовження<br />

циклу CONTINUE<br />

Шаблон оператору IF<br />

Шаблон оператора<br />

обробки помилок<br />

ON ERROR<br />

Рис. 68 . Панель інструментів “ПРОГРАММИРОВАНИЕ”


Тема_14_MathCad_6.doc 59<br />

Формат запису процедури-функції такий:<br />

Ім‘я функції(список параметрів):=<br />

Оператор_1<br />

Оператор_2<br />

….<br />

Оператор_n<br />

Вертикальна лінія служить ознакою тексту програми і шаблоном для запису<br />

операторів, вона ставиться інструментом ADD LINE (рис. 39). Після кліку по ньому<br />

Мathcad поставить таку лінію з двома маркерами праворуч від неї, які позначають місце<br />

для запису двох операторів. Якщо ліній замало, ставлять курсор на останній маркер<br />

шаблону ліній і знову клікають ADD LINE. Якщо оператори у створених лініях вже<br />

записано, і їх замало, то слід виділити останню лінію і клікнути ADD LINE. В середині<br />

програми можна поставити внутрішні лінії. Вони позначають лінії, які служать складовою<br />

частиною певного оператора.<br />

Те значення, яке в процедурі-функції обчислювалося останнім, повертається як<br />

значення функції. Часто текст процедури завершується оператором Return, у якому можна<br />

вказати ту змінну, матрицю або вираз, значення яких мають повертатися функції. Формат<br />

цього оператора: Return вираз.<br />

Оператор присвоєння має вигляд:<br />

змінна<br />

вираз<br />

Дія: обчислюється вираз і одержане значення присвоюється змінній.<br />

ff( x) := d 0 ← x<br />

d 1 ← 2 ⋅ x<br />

return<br />

Рис. 69. Приклад використання<br />

операторів присвоєння. Змінним<br />

d 0 та d 1 присвоюються значення х<br />

та 2х. Оператором return d<br />

зазначено, що значенням функції<br />

є обчислений вектор d<br />

розмірності 2.<br />

d<br />

У прикладі, показаному на рис. 69 змінним d 0 та d 1<br />

присвоюються значення х та 2х.<br />

Оператор If призначений для організації<br />

розгалуження. Він має формат:<br />

оператор If логічний вираз<br />

Дія: якщо виконується умова, що записана логічним<br />

виразом, то виконується оператор. Якщо замість нього<br />

записано вираз, то його значення одержить змінна або<br />

функція, які зі знаком присвоєння стоять перед тією вертикальною рискою, що розділяє<br />

знак цього присвоєння та оператор If. Альтернативну дію, яка має виконуватися в разі<br />

невиконанні умови, записаної логічним виразом, можна позначити оператором Otherwise.<br />

Він має формат: вираз Otherwise. Приклади показано на рис. 70.


Тема_14_MathCad_6.doc 60<br />

Fr( x) := x 2 −x 2 if x < 0<br />

Fr( 10) = 100<br />

Fr( −10) = −100<br />

Fr1( x) := x 2 if x ≥ 0<br />

−x 2<br />

Fr1( 10) = 100<br />

Fr1( −10) = −100<br />

otherwise<br />

tr( x) := t ← 100 if x > 0<br />

return<br />

−100<br />

2t<br />

otherwise<br />

tr( 1) = 200 tr( −1) = −200<br />

Рис. 70. Приклади використання оператора If та Otherwise<br />

Оператор числового циклу For має формат:<br />

For змінна ∈ множина<br />

Оператор<br />

Дія: виконується Оператор при всіх послідовних значеннях змінної з вказаної<br />

множини. Множина – діапазон або матриця. Можливі передчасний вихід з циклу, який<br />

виконується за допомогою оператора Break та неповне виконання поточної ітерації циклу<br />

– за допомогою оператора Continue. Початок Оператора буде зсунуто праворуч порівняно<br />

із оператором заголовку For.<br />

Аби у циклі виконувались кілька операторів, для їх запису слід інструментом ADD<br />

LINE під оператором For відкрити необхідну кількість ліній. Тоді цикл матиме формат:<br />

For змінна ∈ множина<br />

Оператор 1<br />

Оператор 2<br />

...<br />

Оператор n<br />

Оператор передчасного завершення циклу має формат: Break логічний вираз. У вигляді<br />

логічного виразу записують умову, при виконанні якої має відбутися передчасний вихід з<br />

циклу. Дія: як тільки здійсниться умова, записана логічним виразом, виконання циклу<br />

припиниться і відбудеться перехід до виконання того оператора, який записаний після<br />

останнього оператора тіла циклу.<br />

Оператор завершення поточної ітерації циклу має формат: Continue логічний вираз. У<br />

вигляді логічного виразу записують умову, при виконанні якої слід перервати виконання<br />

чергової ітерації циклу. На рис. 71-73 показано приклади використання числових циклів.


Тема_14_MathCad_6.doc 61<br />

Suma( n) := s ← 0<br />

for<br />

k ∈<br />

1..<br />

n<br />

s ← s + k 2<br />

RT( N) := s ← 0<br />

for i ∈ N<br />

s ← s + i 2<br />

return<br />

s<br />

Nm :=<br />

⎛<br />

⎜<br />

⎜<br />

⎝<br />

1<br />

5<br />

12<br />

⎞<br />

⎟<br />

⎟<br />

⎠<br />

Nb :=<br />

⎛<br />

⎜<br />

⎜<br />

⎜<br />

⎜<br />

⎝<br />

10<br />

20<br />

30<br />

40<br />

⎞<br />

⎟<br />

⎟<br />

⎟<br />

⎟<br />

⎠<br />

1<br />

Suma( 3) =<br />

2<br />

RT( Nm) = RT( Nb) =<br />

Рис. 71. Ілюстрації використання оператора числового циклу. 1 – обчислення суми<br />

2 2<br />

2<br />

2 2<br />

2<br />

1 + 2 + ...+ n ; 2 – обчислення суми n + n + ... n .<br />

1 2<br />

+<br />

t<br />

F( t) := s ← 0<br />

for<br />

return<br />

i ∈<br />

1..<br />

t<br />

s ← s + i 2<br />

break if s ≥ t<br />

i − 1<br />

Рис. 72. Ілюстрація числового циклу. Програма<br />

обчислення найбільшого значення n, для якого<br />

виконується умова:<br />

1<br />

2<br />

+ 2<br />

2<br />

2<br />

+ ... + n < t<br />

Для обчислення, наприклад, при t=13 слід записати:<br />

F(13)= .<br />

n := 1000<br />

1 2<br />

Xmin( fun , a, b,<br />

n) := xmin ← a<br />

Ymin( fun, a, b,<br />

n) := xmin ← a<br />

ymin ←<br />

for i ∈<br />

return<br />

fun( a)<br />

x ← a + ( b − a) ⋅ rnd( 1)<br />

p ←<br />

1..<br />

n<br />

fun( x)<br />

xmin ← x if p < ymin<br />

ymin ← p if p < ymin<br />

xmin<br />

ymin ←<br />

for i ∈<br />

return<br />

fun( a)<br />

x ← a + ( b − a) ⋅ rnd( 1)<br />

p ←<br />

1..<br />

n<br />

fun( x)<br />

xmin ← x if p < ymin<br />

ymin ← p if p < ymin<br />

ymin<br />

Xmin( cos , 0, 3.141,<br />

n) = Ymin( cos , 0, 3.141,<br />

n) =<br />

Рис. 73. Приклади використання числового циклу, оператора If та параметру “ім‘я функції”. У<br />

прикладах фактичний параметр “ім‘я функції” - cos. 1 – функція-підпрограма обчислення того значення<br />

xmin у інтервалі [a,b], при якому задана функція fun(x) одержує найменше значення. 2 - функціяпідпрограма<br />

обчислення найменшого значення ymin у інтервалі [a,b]. Використано метод генерації<br />

випадкових випробувань. Кількість випробувань n. Функція rnd(1) генерує випадкове число, розподілене<br />

рівномірно в інтервалі [0,1].


Тема_14_MathCad_6.doc 62<br />

Оператор on error служить для обробки помилок. Має формат:<br />

Оператор 1 або вираз 1 on error Оператор 2 або вираз 2<br />

Дія: якщо при обчисленні виразу 2 чи виконанні оператору 2 виникла помилка (ділення<br />

на нуль, посилання на невизначений елемент тощо), то обчислюється вираз 1 або<br />

виконується оператор 1 . Приклади наведені на рис. 74.<br />

Приклад застосування оператора On error. Функція F(x) повертає значення 1/x. Якщо x=0,<br />

вонамповертає текст "Ne isnue".<br />

F( x) := "Ne isnue"<br />

on error<br />

1<br />

x<br />

F( 2) = 0.5 F( 0) = "Ne isnue"<br />

Приклад застосування оператора On error. Функція YY(R) повертає розмірність вектора R.<br />

Використано цикл for, тому існує обмеження для розмірності аргументу, в даному разі не<br />

більше 100000. Замість виразу R 1 можна було записати оператор з використанням R 1 ,<br />

напрклад, операторт "z присвоїти R 1<br />

".<br />

YY( R) := i ← 0<br />

for<br />

return<br />

k ∈ 1..<br />

100000<br />

i ← i + 1<br />

return<br />

−i<br />

i<br />

on error<br />

R k<br />

⎛<br />

⎜<br />

⎜<br />

⎝<br />

1<br />

T := 5<br />

P :=<br />

7<br />

⎞<br />

⎟<br />

⎟<br />

⎠<br />

⎛<br />

⎜<br />

⎜<br />

⎜<br />

⎜<br />

⎜<br />

⎝<br />

1<br />

0<br />

3<br />

9<br />

14<br />

⎞<br />

⎟<br />

⎟<br />

⎟<br />

⎟<br />

⎟<br />

⎠<br />

YY( T) = 3<br />

YY( P) = 5<br />

Приклад застосування оператора On error. Функція GG(R) повертає розмірність вектора R.<br />

Використано цикл while, тому обмеження для розмірності аргументу немає.<br />

GG( R) := i ← −1<br />

k ← 0<br />

while<br />

k 0<br />

i ← i + 1<br />

GG( T) = 3<br />

return i on error R i<br />

GG( P) = 5<br />

return i<br />

Рис. 74. Приклади застосування оператора on error<br />

X 57 := 11 GG( X) = 58<br />

Функція error служить для виведення повідомлення про помилку. В разі виконання цієї<br />

функції укажчик функції висвітлюється червоним кольором, а при кліку по ньому<br />

виводиться текст повідомлення. Має формат: error(“текст повідомлення”).<br />

Об‘єднання логічних відношень позначається знаком “+”, а перетин – знаком<br />

множення, причому кожне відношення береться у дужки. Наприклад, функція<br />

U( x) := 1 if ( x < 2) ⋅ ( x > 1)<br />

0 otherwise<br />

приймає значення 1, якщо 0


Тема_14_MathCad_7.doc 63<br />

16.2. Приклад розв’язання задачі оцінки корисного сигналу засобами програмування<br />

На рис. 75 – 81 показано приклади розв‘язання задачі оцінки корисного сигналу засобами<br />

програмування Mathcad. Пояснення – у рисунках.<br />

Результати<br />

спостережень<br />

yy :=<br />

⎛<br />

⎜<br />

⎜<br />

⎜<br />

⎜<br />

⎜<br />

⎜<br />

⎜<br />

⎜<br />

⎜<br />

⎜<br />

⎜<br />

⎜<br />

⎝<br />

0<br />

0<br />

1<br />

0<br />

1<br />

1<br />

3<br />

7<br />

3<br />

0<br />

⎞ ⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎠<br />

Координати<br />

точок<br />

спостережень<br />

xx:=<br />

⎛<br />

⎜<br />

⎜<br />

⎜<br />

⎜<br />

⎜<br />

⎜<br />

⎜<br />

⎜<br />

⎜<br />

⎜<br />

⎜<br />

⎜<br />

⎝<br />

10<br />

20<br />

30<br />

40<br />

50<br />

60<br />

70<br />

80<br />

90<br />

100<br />

⎞<br />

⎟<br />

⎟<br />

⎟<br />

⎟<br />

⎟<br />

⎟<br />

⎟<br />

⎟<br />

⎟<br />

⎟<br />

⎟<br />

⎟<br />

⎠<br />

Підпрограма-функція обчислення<br />

методом випадкових випробувань<br />

того значення Xmin, при якому<br />

функція fun(x) одержує найменше<br />

значення у інтервалі [a,b]. Nprob -<br />

кількість випробувань<br />

Xmin( fun , a, b , Nprob ) := xmin ← a<br />

ymin ←<br />

for<br />

return<br />

fun( a)<br />

i ∈ 1..<br />

Nprob<br />

x ← a + ( b − a) ⋅ rnd( 1)<br />

p ←<br />

fun( x)<br />

xmin ← x if p < ymin<br />

ymin ← p if p < ymin<br />

xmin<br />

Signal( x,<br />

a) := e<br />

− ( x−a) 2<br />

25<br />

⋅ 5<br />

- функція, що описує корисний сигнал<br />

n := 10<br />

- кількість спостережень<br />

Sumkv( a)<br />

:=<br />

i<br />

n−1<br />

∑<br />

=<br />

0<br />

( ( )) 2<br />

yy i − Signal xx i , a<br />

- сума квадратів відхилень<br />

aa1 := Xmin( Sumkv , 75, 85,<br />

3000)<br />

aa1 = 80<br />

x := 0, 0.5..<br />

110<br />

yy<br />

Signal ( x,<br />

aa1)<br />

10<br />

9<br />

8<br />

7<br />

6<br />

5<br />

4<br />

3<br />

2<br />

1<br />

0<br />

1<br />

0 22 44 66 88 110<br />

xx , x<br />

- графік оцінки функції, що<br />

опсисує сигнал (блакитним<br />

кольором) та точки<br />

спостережень.<br />

Рис. 75. Приклад використання підпрограми-функції для обчислення оцінки а параметру<br />

корисного сигналу методом найменших квадратів у випадку, корисний сигнал має один<br />

параметр.


Тема_14_MathCad_7.doc 64<br />

Приклад використання підпрограми-функції для оцінки корисного сигналу методом найменших<br />

квадратів у випадку, коли сигнал залежить від кількох параметрів<br />

Функція-підпрограма генерації випадкового m-вимірного спостереження,<br />

рівномірно розподіленого у m-вимірному паралелепіпеді, протилежні<br />

вершини якого задано точками A та B.<br />

Rndvekt ( A , B,<br />

m)<br />

:=<br />

for<br />

z k ← A k + B k − A k<br />

return z<br />

k ∈ 0..<br />

m − 1<br />

( ) ⋅ rnd 1<br />

( )<br />

A :=<br />

⎛<br />

⎜<br />

⎜<br />

⎝<br />

0<br />

0<br />

0<br />

⎞<br />

⎟⎟⎠<br />

B :=<br />

⎛<br />

⎜<br />

⎜<br />

⎝<br />

2<br />

1<br />

100<br />

⎞<br />

⎟⎟⎠<br />

Rndvekt ( A , B,<br />

3)<br />

=<br />

⎛<br />

⎜<br />

⎜<br />

⎜<br />

⎝<br />

2.537 × 10 − 3<br />

0.193<br />

58.501<br />

⎞<br />

⎟<br />

⎟<br />

⎟<br />

⎠<br />

- приклад генерації тривиміроного<br />

випадкового спостереження<br />

A1 :=<br />

⎛<br />

⎜<br />

⎜<br />

⎜<br />

⎜<br />

⎜<br />

⎝<br />

0<br />

0<br />

5<br />

1<br />

100<br />

⎞ ⎟⎟⎟⎟<br />

⎟ ⎠<br />

B1 :=<br />

⎛<br />

⎜<br />

⎜<br />

⎜<br />

⎜<br />

⎜<br />

⎝<br />

1<br />

10<br />

6<br />

1.1<br />

200<br />

⎞ ⎟⎟⎟⎟<br />

⎟ ⎠<br />

Rndvekt ( A1 , B1,<br />

5)<br />

=<br />

⎛<br />

⎜<br />

⎜<br />

⎜<br />

⎜<br />

⎜<br />

⎝<br />

0.35<br />

8.228<br />

5.174<br />

1.071<br />

130.399<br />

⎞<br />

⎟<br />

⎟<br />

⎟<br />

⎟<br />

⎟<br />

⎠<br />

- приклад генерації<br />

п'ятивиміроного<br />

випадкового<br />

спостереження<br />

yy := ( 0 0 1 0 1 1 3 7 3 0 ) T<br />

- спостереження, що несуть корисний сигнал<br />

xx:=<br />

( 10 20 30 40 50 60 70 80 90 100 ) T<br />

- координати точок спостережень по вісі Ох<br />

yy<br />

9<br />

8<br />

7<br />

6<br />

5<br />

4<br />

3<br />

2<br />

1<br />

0<br />

1<br />

0 10 20 30 40 50 60 70 80 90 100110<br />

xx<br />

Графічне відображення<br />

експериментальних даних<br />

Signal ( x,<br />

C) := C 0 + C 1 e<br />

− ( x−C 2 ) 2<br />

( ) 2 2<br />

- функція, що описує залежність сигналу від координат по<br />

вісі абсцис. Параметри:<br />

C 0<br />

- рівень місцевого фону;<br />

С 1<br />

- амплитуда перевищення сигналу над фоном;<br />

С 2<br />

- абсциса положення вісі симетрії сигналу;<br />

C 3<br />

С 3 - параметр, шо характеризує ширину сигналу<br />

(приблизно 1/4 - 1/6 від видимої ширини сигналу).<br />

n := 10<br />

- кількість точок спостережень<br />

Рис. 76. Приклад використання підпрограми-функції для обчислення оцінки відразу кількох параметрів<br />

корисного сигналу методом найменших квадратів. Частина 1.


Тема_14_MathCad_7.doc 65<br />

Sumkv ( C)<br />

:=<br />

n−1<br />

∑<br />

i<br />

=<br />

0<br />

( ( )) 2<br />

yy i − Signal xx i , C<br />

- сума квадратів відхилень<br />

Функція-підпрограма знаходженя методом випадкових випробувань того значення<br />

XminVek, при якому у m-вимірному паралелепіпеді, при якому приймає найменше значення<br />

задана функція Sumkv. Протилежні вершини паралелепіпеда задані векторами Cmin та<br />

Cmax. Nprob - кількість статистичних випробувань, m - розмірність простору, у якому<br />

відшукується точка мінімуму .<br />

XminVek( Sumkv , Cmin, Cmax, Nprob , m) := Xmin ← Cmin<br />

Ymin ←<br />

for<br />

return<br />

Sumkv ( Cmin)<br />

i ∈ 1..<br />

Nprob<br />

X ← Rndvekt ( Cmin, Cmax,<br />

m)<br />

p ←<br />

Sumkv ( X)<br />

Xmin ← X if p < Ymin<br />

Ymin ← p if p < Ymin<br />

Xmin<br />

Обчислення оцінок параметрів С 0<br />

, С 1<br />

, С 2 , С 3<br />

:<br />

Cmin :=<br />

⎛<br />

⎜<br />

⎜<br />

⎜<br />

⎜<br />

⎝<br />

−1<br />

2<br />

70<br />

3<br />

⎞ ⎟<br />

⎟<br />

⎟<br />

⎟<br />

⎠<br />

- нижні границі<br />

параметрів<br />

сигналу<br />

Cmax :=<br />

⎛<br />

⎜<br />

⎜<br />

⎜<br />

⎜<br />

⎝<br />

2<br />

10<br />

90<br />

9<br />

⎞<br />

⎟<br />

⎟<br />

⎟<br />

⎟<br />

⎠<br />

- верхні границі<br />

параметрів<br />

сигналу<br />

m := 4<br />

- кількість параметрів сигналу<br />

Nprob := 4000<br />

- кількість випобувань для визначення оцінок параметрів спостережень при<br />

мінімізації суми квадратів відхилень<br />

Cpr := XminVek( Sumkv , Cmin, Cmax, Nprob , m)<br />

Cpr =<br />

⎛<br />

⎜<br />

⎜<br />

⎜<br />

⎜<br />

⎝<br />

0.406<br />

6.107<br />

79.056<br />

7.603<br />

⎞<br />

⎟<br />

⎟<br />

⎟<br />

⎟<br />

⎠<br />

x := 0, 2..<br />

110<br />

- фон<br />

- амплитуда<br />

- положение<br />

- размах<br />

- оцінка параметрів сигналу методом<br />

найменших квадратів<br />

Sumkv ( Cpr) = 2.235568<br />

Рис. 77. Приклад використання підпрограми-функції для обчислення оцінки відразу кількох параметрів<br />

корисного сигналу методом найменших квадратів. Частина 2.


Тема_14_MathCad_7.doc 66<br />

yy<br />

Signal( x,<br />

Cpr)<br />

9<br />

8<br />

7<br />

6<br />

5<br />

4<br />

3<br />

2<br />

1<br />

0<br />

1<br />

0 10 20 30 40 50 60 70 80 90 100 110<br />

xx,<br />

x<br />

Указівка.<br />

Після одержання першого наближення<br />

змінюємо Сmin та Cmax, звужуючи<br />

інтервали для параметрів.Слідкуємо за<br />

значенням Sumkv(Cpr), прагнучи одержати<br />

якомога менше значення.<br />

Форму графічного відображення<br />

регулюємо у вікні ФОРМАТ, вкладки<br />

СЛЕД, ОСИ X-Y.<br />

Рис. 78. Приклад використання підпрограми-функції для обчислення<br />

параметрів корисного сигналу методом найменших квадратів. Частина 3.<br />

оцінки відразу кількох<br />

Приклад функції-підпрограми Perbor4 відшукання тих значень чотирьох параметрів, при яких<br />

одержує миінімум задана функція Sumkv(X).<br />

⎛<br />

⎜<br />

−1<br />

Nprob := 10<br />

−2<br />

Cmin :=<br />

⎜<br />

Cmax<br />

⎜ 2 ⎟<br />

−1.3<br />

:= D :=<br />

⎜ ⎟<br />

m := 4<br />

−3<br />

3<br />

2.2<br />

⎜<br />

⎜<br />

⎝<br />

−4<br />

⎞ ⎟⎟<br />

⎟<br />

⎟⎠<br />

⎛<br />

⎜<br />

⎜<br />

⎜<br />

⎝<br />

1<br />

4<br />

⎞<br />

⎟<br />

⎟<br />

⎟<br />

⎠<br />

⎛<br />

⎜<br />

⎜<br />

⎜<br />

⎝<br />

0.5<br />

0.7<br />

⎞<br />

⎟<br />

⎟<br />

⎟<br />

⎠<br />

Sumkv( X)<br />

:=<br />

m−1<br />

∑<br />

i<br />

=<br />

0<br />

( − ) 2<br />

X i<br />

D i<br />

Perbor4 ( Sumkv , Cmin, Cmax, Nprob , m) := X ← Cmin<br />

Xmin := Perbor4 ( Sumkv , Cmin, Cmax, Nprob , m)<br />

Xmin ← Cmin<br />

Ymin ←<br />

for<br />

Sumkv( Cmin)<br />

j ∈ 0..<br />

m − 1<br />

Cmax j − Cmin j<br />

del j ←<br />

Nprob<br />

for<br />

for<br />

for<br />

return<br />

t0 ∈ Cmin 0 , Cmin 0 + del 0 .. Cmax 0<br />

t1 ∈ Cmin 1 , Cmin 1 + del 1 .. Cmax 1<br />

t2 ∈ Cmin 2 , Cmin 2 + del 2 .. Cmax 2<br />

for t3 ∈ Cmin 3 , Cmin 3 + del 3 .. Cmax 3<br />

X 0<br />

X 1<br />

X 2<br />

X 3<br />

p ←<br />

← t0<br />

← t1<br />

← t2<br />

← t3<br />

Sumkv( X)<br />

Xmin ← X if p < Ymin<br />

Ymin ← p if p < Ymin<br />

Xmin<br />

Примітка. При великих значеннях Nprob перебір триває надто довго.<br />

Рекомендується застосовувати послідовно кілька разів, поступово<br />

звужуючи область відшукання точки мінімуму.<br />

Xmin =<br />

⎛<br />

⎜<br />

⎜<br />

⎜<br />

⎜<br />

⎝<br />

0.6<br />

−1.2<br />

2.4<br />

0.8<br />

⎞<br />

⎟<br />

⎟<br />

⎟<br />

⎟<br />

⎠<br />

Рис. 79. Приклад функції-підпрограми для знаходження тих значень чотирьох параметрів, при яких<br />

задана функція одержує абсолютний мінімум.


Тема_14_MathCad_7.doc 67<br />

Приклад оцінки параметрів корисного сигналу методом найменших квадратів з використанням<br />

функції-підпрограми Perbor4 (див.вище)<br />

yy := ( 0 0 1 0 1 1 3 7 3 0 ) T<br />

- спостереження, що несуть корисний сигнал<br />

xx:=<br />

( 10 20 30 40 50 60 70 80 90 100 ) T<br />

- координати точок спостережень по вісі Ох<br />

yy<br />

9<br />

8<br />

7<br />

6<br />

5<br />

4<br />

3<br />

2<br />

1<br />

0<br />

1<br />

0 10 20 30 40 50 60 70 80 90100110<br />

xx<br />

Signal( x,<br />

C) := C 0 + C 1 e<br />

Nprob := 10<br />

− ( x−C 2 ) 2<br />

( ) 2 2<br />

C 3<br />

- кількість інтервалів діапазону<br />

значень кожного парамектру для<br />

перебору.<br />

n := 10<br />

- кількість точок спостережень<br />

Sumkv( C)<br />

Cmin :=<br />

⎛<br />

⎜<br />

⎜<br />

⎜<br />

⎜<br />

⎝<br />

−1<br />

2<br />

70<br />

3<br />

:=<br />

⎞<br />

⎟<br />

⎟<br />

⎟<br />

⎟<br />

⎠<br />

n−1<br />

∑<br />

i<br />

=<br />

0<br />

( ( )) 2<br />

yy i − Signal xx i , C<br />

- нижні границі<br />

параметрів<br />

сигналу<br />

- сума квадратів відхилень<br />

Cmax:=<br />

⎛<br />

⎜<br />

⎜<br />

⎜<br />

⎜<br />

⎝<br />

2<br />

10<br />

90<br />

9<br />

⎞<br />

⎟<br />

⎟<br />

⎟<br />

⎟<br />

⎠<br />

- верхні границі<br />

параметрів<br />

сигналу<br />

C := Perbor4( Sumkv , Cmin, Cmax, Nprob , m)<br />

Sumkv( C) = 1.897<br />

C =<br />

⎛<br />

⎜<br />

⎜<br />

⎜<br />

⎜<br />

⎝<br />

0.5<br />

6.8<br />

80<br />

7.2<br />

⎞<br />

⎟<br />

⎟<br />

⎟<br />

⎟<br />

⎠<br />

- перше<br />

наближення<br />

оцінок<br />

параметрів<br />

сигналу<br />

Cmin :=<br />

⎛<br />

⎜<br />

⎜<br />

⎜<br />

⎜<br />

⎝<br />

0.3<br />

6.4<br />

78<br />

6.5<br />

⎞<br />

⎟<br />

⎟<br />

⎟<br />

⎟<br />

⎠<br />

- нижні границі<br />

параметрів<br />

сигналу (друге<br />

наближення)<br />

Cmax:=<br />

⎛<br />

⎜<br />

⎜<br />

⎜<br />

⎜<br />

⎝<br />

0.6<br />

7.2<br />

82<br />

8<br />

⎞<br />

⎟<br />

⎟<br />

⎟<br />

⎟<br />

⎠<br />

- верхні границі<br />

параметрів<br />

сигналу (друге<br />

наближення<br />

C := Perbor4( Sumkv , Cmin, Cmax, Nprob , m)<br />

Sumkv( C) = 1.707<br />

C =<br />

⎛<br />

⎜<br />

⎜<br />

⎜<br />

⎜<br />

⎝<br />

0.39<br />

6.64<br />

80<br />

7.25<br />

⎞<br />

⎟<br />

⎟<br />

⎟<br />

⎟<br />

⎠<br />

-друге<br />

наближення<br />

оцінок<br />

параметрів<br />

сигналу<br />

Рис. 80. Приклад застосування функції-підпрограми Perbor4 для оцінки чотирьох параметрів корисного<br />

сигналу (див. рис. 79)


Тема_14_MathCad_7.doc 68<br />

16.Зчитування даних з файлу та запис у файл<br />

Серед інструментів Mathcad є зручний засіб для зчитування даних із інших додатків та<br />

запису у документи, які мають формат цих додатків. Команда для активізації цього засобу:<br />

ВСТАВКА > КОМПОНЕНТ > FILE READ ОR WRITE > ЧИТАТЬ ИЗ ФАЙЛА або<br />

ЗАПИСАТИ У ФАЙЛ. Вказати формат файлу – наприклад Excel. У документ Mathcad буде<br />

вставлено шаблон такого вигляду:<br />

xx:=<br />

H:\..\Prob.xls<br />

(Prob.xls – ім‘я файлу). Слід вставити у маркер перед знаом “:=” ім‘я змінної. В результаті<br />

вона одержить значення, що записані у файлі. Читатися буде прямокутна таблиця, заповнена<br />

числовими даними. Дані текстового типу не сприймаються. Незаповнені клітини<br />

сприймаються як нулі.<br />

Для запису у файл діють аналогічно. Шаблон для запису має вигляд:<br />

H:\..\Prob1<br />

У наведеній ілюстрації Prob1 – ім‘я файлу. У виведеному шаблоні теж є маркер. В нього<br />

записують змінну чи ім’я матриці, значення яких треба записати. При зчитуванні Excelтаблиці<br />

змінна у документі Mathcad одержує значення матриці із збереженням структури,<br />

що є у таблиці Excel.<br />

Якщо змінити дані, записані у документі Excel, то для того, щоб відповідні зміни<br />

yy<br />

Signal ( x,<br />

C)<br />

9<br />

8<br />

7<br />

6<br />

5<br />

4<br />

3<br />

2<br />

1<br />

0<br />

1<br />

0 10 20 30 40 50 60 70 80 90 100 110<br />

xx , x<br />

Одержано дещо кращі оцінки, ніж<br />

методом випадкових випробувань.<br />

Про це свідчить порівняння сум<br />

квадратів відхилень: 1.707 проти 2.18.<br />

Рис. 81 . Приклад застосування функції-підпрограми Perbor4 для оцінки чотирьох параметрів корисного<br />

сигналу (див. рис. ). Початок – на рис. 80 .


Тема_14_MathCad_7.doc 69<br />

відбулися у матриці документу Mathcad, слід виконати збереження документу Excel і<br />

Рис. 82. Приклад даних<br />

у файлі Prob_2_xls з<br />

вмістами двох хімічних<br />

елементів<br />

поновити чи змінити змінну у шаблоні читання з цього файлу.<br />

На рис. 83 показано приклад обчислення систематичного<br />

зміщення між двома серіями вимірювань. У файлі Prob1.xls<br />

записано дві серії вимірювань вмісту хімічного елементу в n<br />

пробах (рис. 82). Оцінка систематичного зміщення між серіями y<br />

та x обчислюється у вигляді<br />

n<br />

1<br />

Sme = ∑ ( yi − xi<br />

)<br />

n i=<br />

1<br />

де n кількість вимірювань у одній серії.<br />

Застосовані засоби показано на рис.54.<br />

Приклад обчислень з використанням даних, що містяться у документі Excel.<br />

У документі Excel Prob_2_.xls два стовпчики: вимірювання вмісту хімічного елементу у n пробах (x)<br />

та повторні вимірювання вмісту того ж хімічного елементу у тих самих пробах (y). Обчислити<br />

систематичне зміщення між серією y та x за формулою:<br />

n<br />

1<br />

Sme = ∑(<br />

yi − xi<br />

)<br />

n i=<br />

1<br />

X:=<br />

n<br />

1<br />

Sme = ∑ ( y − xi<br />

n i = 1<br />

H:\..\Prob_2_.xls<br />

i<br />

)<br />

Серія x<br />

Серія y<br />

X<br />

⎛<br />

⎜<br />

⎜<br />

⎜<br />

⎜<br />

1<br />

4<br />

1 4<br />

4 8<br />

4<br />

8<br />

⎜<br />

= 5 10<br />

X 0〉<br />

⎜ ⎟<br />

= 5<br />

X 1〉<br />

= 10<br />

2<br />

3<br />

4<br />

6<br />

2<br />

3<br />

4<br />

6<br />

⎜<br />

⎜<br />

⎜<br />

⎜<br />

⎜<br />

⎜<br />

⎝<br />

6<br />

7<br />

7<br />

7<br />

8<br />

11<br />

12<br />

11<br />

⎞ ⎟⎟⎟⎟⎟⎟⎟<br />

⎟<br />

⎟⎟⎟⎠<br />

⎛<br />

⎜<br />

⎜<br />

⎜<br />

⎜<br />

⎜<br />

⎜<br />

⎜<br />

⎜<br />

⎜<br />

⎜<br />

⎝<br />

6<br />

7<br />

7<br />

7<br />

⎞<br />

⎟<br />

⎟<br />

⎟<br />

⎟<br />

⎟<br />

⎟<br />

⎟<br />

⎟<br />

⎟<br />

⎟<br />

⎠<br />

⎛<br />

⎜<br />

⎜<br />

⎜<br />

⎜<br />

⎜<br />

⎜<br />

⎜<br />

⎜<br />

⎜<br />

⎜<br />

⎜<br />

⎝<br />

8<br />

11<br />

12<br />

11<br />

⎞ ⎟⎟⎟⎟⎟⎟⎟<br />

⎟<br />

⎟⎟⎟⎠<br />

Визначення кількості проб:<br />

( )<br />

Обчислення зміщення:<br />

n := GG X 〈 0〉<br />

n = 9<br />

n<br />

( X i− 1 , 1 − X i− 1 , 0 )<br />

Sme := ∑<br />

n<br />

Sme = 3.556<br />

i = 1<br />

Рис. 83. Приклад обчислення оцінки систематичного зміщення між двома серіями вимірювань.<br />

На рис. 84 показано приклад обчислення кореляційної матриці за формулою


Тема_14_MathCad_7.doc 70<br />

⎛ r1 , 1<br />

⎜<br />

⎜ r2,<br />

1<br />

R = ⎜ …<br />

⎜<br />

⎝rm,<br />

1<br />

r<br />

r<br />

r<br />

1,<br />

2<br />

2,<br />

2<br />

m, 2<br />

…<br />

…<br />

…<br />

r<br />

r<br />

r<br />

1,m<br />

2,m<br />

m,m<br />

⎞<br />

⎟<br />

⎟<br />

⎟,<br />

⎟<br />

⎠<br />

де − оцінка коефіцієнту кореляції, що обчислюється за i-м та j-м стовпчиками матриці<br />

r i , j<br />

X результатів спостережень, яка складається з m рядків та n стовпчиків, за допомогою<br />

стандартної статистичної функції Corr(x,y). Аргументами цієї функції служать два вектори x<br />

та y.<br />

Приклад підпрограми-функції обчислення оцінки кореляційної матриці. Використана функція<br />

GG(R) визначення розмірності вектора. Вхідні дані - матриця Dan.<br />

GG( R) := i ← −1<br />

k ← 0<br />

while<br />

return<br />

i ← i + 1<br />

return<br />

k 0<br />

i<br />

i<br />

on error<br />

R i<br />

T :=<br />

⎛<br />

⎜<br />

⎜<br />

⎜<br />

⎜<br />

⎝<br />

2<br />

5<br />

8<br />

1<br />

⎞ ⎟⎟⎟⎟⎠<br />

X 57 := 11<br />

GG( T) = 4<br />

GG( X) = 58<br />

Dan<br />

⎛<br />

⎜<br />

1<br />

11<br />

5<br />

⎞ ⎟⎟⎟⎟⎠<br />

( )<br />

⎜ 2 21 6<br />

⎡<br />

:= KorMatr ( Dan ) := m ← GG<br />

⎜<br />

⎣ Dan T<br />

3 32 5<br />

⎜<br />

for k ∈ 0..<br />

m − 1<br />

⎝ 4 40 6<br />

for t ∈ 0..<br />

m − 1<br />

Dan<br />

〈 0〉<br />

=<br />

⎛<br />

⎜<br />

⎜<br />

⎜<br />

⎜<br />

⎝<br />

1<br />

2<br />

3<br />

4<br />

⎞ ⎟⎟⎟⎟⎠<br />

return<br />

r k t<br />

〈 0〉<br />

, ← corr Dan<br />

r<br />

⎤<br />

⎦<br />

( 〈 k 〉 〈 t 〉 )<br />

, Dan<br />

( Dan T )<br />

〈 0〉<br />

⎛<br />

⎜<br />

⎜<br />

⎝<br />

1<br />

= 11<br />

KorMatr ( Dan )<br />

5<br />

⎞<br />

⎟<br />

⎟<br />

⎠<br />

=<br />

⎛<br />

⎜<br />

⎜<br />

⎝<br />

1<br />

0.998<br />

0.447<br />

0.998<br />

1<br />

0.41<br />

0.447<br />

0.41<br />

1<br />

⎞<br />

⎟⎟⎠<br />

⎡<br />

GG ( Dan T )<br />

⎣<br />

〈 0〉<br />

⎤<br />

⎦ = 3<br />

Рис. 84 .Приклад підпрограми-функції обчислення оцінки кореляційної матриці. Використана функція<br />

GG(R) визначення розмірності вектора. Вхідні дані - матриця Dan.


Тема_14_MathCad_8.doc 71<br />

17. Завдання на лабораторну роботу<br />

При виконанні цієї роботи студент мусить продемонструвати володіння інструментами<br />

Mathcad 2000 при вирішенні математичних задач. Приклади для демонстрації середньої<br />

складності він має підібрати сам, орієнтуючись на свої знання з курсу вищої та елементарної<br />

математики.<br />

17.1. Завдання з володіння інструментами Mathcad<br />

1) Продемонструвати:<br />

- обчислення за формулами з використанням стандартних функцій<br />

x 2 n n<br />

(ln, log, e , x , x , x,<br />

x,<br />

n!,<br />

x ,sin,cos, tan) , функцій з повного переліку Mathcad,<br />

сум з використання знаку сумування, визначеного інтеграла, похідної у заданих<br />

кількох точках; границі числової послідовності; суми нескінченного ряду;<br />

- присвоєння змінній значення діапазону з довільним кроком; користування<br />

повзунком для перегляду значень цієї змінної;<br />

- зміну значень обчислених виразів при зміні значень аргументів;<br />

- множення матриці на вектор, множення матриці на матрицю, обернення матриць,<br />

поелементне множення матриць, ров‘язання систем лінійних рівнянь з<br />

використанням оберненої матриці; утворення матриці за допомогою загальної<br />

формули її елементу;<br />

- обчислення визначників матриць;<br />

- чисельне розв‘язання алгебраїчних рівнянь та систем алгебраїчних рівнянь за<br />

допомогою функцій root та given - find;<br />

- розв‘язання тригонометричних рівнянь;<br />

- аналітичне розв‘язання алгебраїчних рівнянь та систем алгебраїчних рівнянь з<br />

параметрами;<br />

- аналітичне обчислення похідних, інтегралів від функцій, залежних від параметрів,<br />

сум та границь послідовностей з параметрами;<br />

- вставку текстового блоку українською мовою;<br />

- перенесення фрагменту в інше місце Mathcad-документу та у документ MS<br />

WORD;<br />

- аналітичне обчислення похідної, частинної похідної, невизначеного інтегралу.<br />

- спрощення виразів, розклад виразів на множники, приведення сум дробів до<br />

спільного знаменника; приведення подібних членів;<br />

- розв‘язання дрібно-раціональних нерівностей;<br />

- заміну змінної;<br />

- розклад функції у ряд Тейлора та дробово-раціональної функції на суму простих<br />

дробів.<br />

2) Продемонструвати:<br />

- побудову графіків у декартовій та полярній системах координат (по 3 графіки на<br />

кожному шаблоні);<br />

- форматування побудованих графіків;<br />

- побудову графіків функцій, заданих параметрично;<br />

- відображення функцій двох змінних та його форматування;<br />

- трансформації відображення функцій двох змінних;<br />

- побудову 3D-вимірних стовпчастих та точкових діаграм і їх трансформації;<br />

- відображення функцій двох змінних з реальним відліком вздовж осей OX та OY;<br />

- відображення векторного поля градієнтів заданої функції.<br />

3) Продемонструвати:<br />

- побудову анімаційних відображень графіків та поверхонь;<br />

- створення файлів, що містять анімаційні відображення;


Тема_14_MathCad_8.doc 72<br />

- відтворення анімаційних відображень програмами Playback та<br />

ПРОИГРЫВАТЕЛЬ WINDOWS MEDIA.<br />

4) Продемонструвати:<br />

- побудову графіків функції та щільності нормального розподілу із заданими<br />

параметрами;<br />

- згладження рядів спостережень;<br />

- розрахунок функцій лінійної та поліноміальної регресії і побудову їх графіків з<br />

винесенням на них спостережень.<br />

5) Скласти програми у середовищі Mathcad за індивідуальним завданням.<br />

17.2. Завдання з створення процедур-функцій у середовищі Mathcad<br />

17.2.1. Обробка масивів<br />

1. Скласти процедуру виведення тих значень X i , (i=1, 2, …, n), які більші заданого С, а<br />

також обчислення середнього значення з решти значень. Видавати повідомлення, якщо тих чи<br />

інших значень немає.<br />

2. Скласти процедуру визначення такої пари значень ai , bi<br />

, ( i = 1, 2, ..., m)<br />

, для якої<br />

b<br />

∫ i<br />

ai<br />

f ( x)<br />

dx набуде найбільшого значення. Інтегрувати за формулою центральних прямокутників<br />

bi − ai<br />

з кроком ∆ = .<br />

n<br />

3. Скласти процедуру визначення найбільшого елемента в кожному рядку матриці<br />

{ x ij<br />

}( i = 1, n;<br />

j = 1, m)<br />

та визначення найменшого елемента з цих елементів. Елементи матриці<br />

обчислюються за формулою: = Arctg( i<br />

2 − j ) .<br />

x ij<br />

4. Скласти процедуру визначення номера того рядка матриці { x ij<br />

}(i=1, n ; j=1, m), в якому<br />

різниця між її найбільшим та найменшим елементам максимальна. Елементи матриці<br />

2 2 2<br />

обчислюються за формулою: = cos ( i − j ) .<br />

x ij<br />

5. Скласти процедуру виведення тих значень ( x i<br />

, i = 1, n)<br />

,які відрізняються від заданого С,<br />

не більше, ніж на ε. Видавати повідомлення, якщо таких значень немає.<br />

6. Скласти процедуру визначення номерів тих елементів i та j серед C<br />

1<br />

, C2,....,<br />

Ck<br />

., різниця<br />

між якими є за модулем найбільшою.<br />

7. Обчислити Z = (Хmax - Xmin) /m, де Хmax ,Xmin - найбільше та найменше значення серед<br />

3 3<br />

3<br />

X<br />

1<br />

, X<br />

2,....,<br />

X n<br />

, а m = 1 + 2 + ... + n .<br />

8. Скласти процедуру знаходження номерів i та j елементів масиву {x 1 ,x 2 ,...x n }, для яких<br />

значення ⏐x i -x j ⏐ мінімальне.<br />

9. Скласти процедуру упорядкування за зростанням значень функції f(x) елементів масиву<br />

{x 1 ,x 2 ,...x n }.<br />

10. Обчислити середнє арифметичне та середнє квадратичне відхилення з елементів<br />

x x ,...,<br />

,<br />

1 2<br />

x n<br />

n<br />

n<br />

1<br />

2<br />

x = ∑ xi<br />

; σ = ∑(<br />

xi<br />

− x)<br />

n i=<br />

1<br />

i=<br />

1<br />

11. Скласти процедуру знаходження максимального та мінімального із значень<br />

2<br />

2<br />

1<br />

y = min (( x − p)<br />

), y = max (( x − p)<br />

), ∆ = y − y , y = ( y + y ) .<br />

min<br />

i<br />

max<br />

i<br />

max min<br />

max min<br />

i<br />

i<br />

2<br />

12. Обчислити


1<br />

Тема_14_MathCad_8.doc 73<br />

2<br />

µ + δ<br />

n<br />

2<br />

2<br />

1<br />

1<br />

2<br />

µ<br />

µ−δ<br />

δ<br />

2<br />

2 2<br />

M = e , M<br />

e<br />

= e , M<br />

0<br />

= e , V = ( e −1)100%,<br />

де µ = ∑ln<br />

xi<br />

, δ = ∑(ln<br />

xi<br />

) − µ .<br />

n<br />

n i=<br />

1<br />

13. Скласти процедуру визначення найбільшого елементу в кожному рядку матриці {x ij }<br />

(i=1,2,...,n, j=1,2,...,m) та обчислення суми всіх цих елементів.<br />

14. Скласти процедуру визначення номера того рядка матриці {x ij } (i=1, 2, …, n, j=1, 2, …,<br />

m), в якому різниця між її найбільшим та найменшим елементами максимальна.<br />

15. Обчислити z=(x max -x min )/y, де x max та x min - найбільше та найменше значення серед<br />

х 1 ,х 2 ,...,х n , а y =<br />

n<br />

x ... 1x2 x n<br />

.<br />

16. Обчислити середнє арифметичне значення з додатних елементів масиву {x i }, i=1, 2, ..., n.<br />

17. Обчислити об'єму V та запасу T шару :<br />

V<br />

=<br />

n<br />

∑<br />

i=<br />

1<br />

h s , T =<br />

i<br />

i<br />

n<br />

∑<br />

i=<br />

1<br />

h s c .<br />

18. Скласти процедуру знаходження серед x 1 ,x 2 ,...,x n таких двох послідовних елементів x i ,x i+1 ,<br />

для яких набуває найбільшого значення ⏐x i -x i+1 ⏐.<br />

19. Обчислити середнє арифметичне значення з додатних елементів масиву {x i }, i=1, 2, ..., n.<br />

20. Скласти процедуру визначення того елемента масиву {x i } (i=1,2, …, n) та його номеру i,<br />

який найменше відрізняється від с. Якщо таких елементів - кілька однакових, надрукувати<br />

номери всіх цих елементів.<br />

17.2.2. Накопичення. Табуляція<br />

21. Обчислити інтеграл S = f ( x)<br />

dx , де<br />

∫<br />

b<br />

a<br />

2 2 3 2<br />

n 2<br />

f ( x)<br />

= sin( −x<br />

+ x / 2 − x / 3 + .... + ( −1)<br />

x / n ).<br />

22. Скласти процедуру табуляції у залежності від p, що змінюється від a до b з кроком ∆,<br />

значень x та y, які є розв'язком системи рівнянь:<br />

⎧a1x<br />

+ ( b − p)<br />

y = c,<br />

⎨<br />

⎩(<br />

b − p)<br />

x + a2<br />

y = d.<br />

23. Скласти процедуру табуляції залежності від величини С, яка змінюється від a до b з<br />

кроком ∆, функції n(С), n(С) - найбільше значення, яке задовольняє умові: 1 2 + 2 2 + 3 2 + ... +<br />

n 2


Тема_14_MathCad_8.doc 74<br />

2<br />

3<br />

n+<br />

1 n<br />

x x<br />

( −1)<br />

x<br />

s(<br />

x)<br />

= x − + + ... +<br />

1⋅<br />

3 1⋅<br />

3 ⋅ 5 1⋅<br />

3 ⋅...<br />

⋅ (2n<br />

−1)<br />

32. Обчислити суму нескінченного ряду<br />

2 3 n+<br />

1 n<br />

x x ( −1)<br />

x<br />

s = x − + + ... +<br />

+ ...<br />

1 ⋅ 3 1 ⋅ 3 ⋅ 5 1⋅ 3⋅... ⋅( 2n<br />

− 1)<br />

з точністю ε і визначити кількість членів n, які були потрібні для апроксимації ряду скінченною<br />

сумою.<br />

33. Обчислити<br />

x=t-2t 2 +3t 3 -...+(-1) n-1 t n ,<br />

де n - найбільше значення, що задовольняє умові: 1 2 +2 2 +...+n 2 x, де х - знайдений з точністю ε найменший корінь рівняння f(x)=0,<br />

який належить інтервалу [a,b].<br />

44. Скласти процедуру знаходження точок максимуму функції z=f(x,y) в прямокутнику<br />

[a,b]×[c,d] (x∈[a,b,], y∈[c,d]) з точністю ε по x і по y. Вивести найбільше значення функції.<br />

45. Скласти процедуру знаходження координат x та y точки в прямокутнику [a,b]×[c,d], в<br />

якій функція f(x,y) одержує найменше значення з точністю ε по x і по y. Вивести найменше<br />

значення функції.<br />

46. Скласти процедуру знаходження найбільшого n, для якого 1+2 2 +3 2 +...+n 2 C, де<br />

k i<br />

( −x)<br />

f ( x)<br />

= ∑ .<br />

i<br />

i = 1


Тема_14_MathCad_8.doc 75<br />

48. Елементи масиву {x ij } обчислюються за формулою x ij =sin(i-j 2 ). Визначити кількість<br />

n + всіх додатних та n - всіх від'ємних елементів масиву } (i=1,2, …, n, j=1, 2, …,m).<br />

49. Скласти процедуру знаходження точок екстремуму функції<br />

n i<br />

( −x)<br />

y( x)<br />

= ∑ + sinπx<br />

.<br />

i(<br />

i + 1)<br />

I =1<br />

17.2.4. Розв‘язання диференційних рівнянь. Метод випадкових випробувань Монте-<br />

Карло<br />

50. Скласти процедуру знаходження найменшого значення функції y=f(x) на[a,b] методом<br />

генерації випадкової послідовності, n - кількість членів послідовності (задається). Повернути<br />

(вивести) також значення x, при якому буде це найменше значення.<br />

51. Скласти процедуру знаходження точки (x,y) ,де функція f(x,y) набуває найбільшого<br />

значення в прямокутнику x є [a,b], y є [c,d], використовуючи метод генерації випадкової<br />

послідовності (x i ,y i ) (метод Монте Карло) в цьому прямокутнику.<br />

52. Скласти процедуру обчислення методом Монте-Карло площі множини, обмеженої<br />

кривою x=asint, y=bcost, t змінюється від 0 до 2π. Намалювати цю множину.<br />

53. Скласти процедуру обчислення методом Монте-Карло площі тієї частини прямокутника<br />

x∈[a,b], y∈[c,d], де f(x)

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!