Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Руководство с Вариант.doc
Скачиваний:
1
Добавлен:
01.04.2025
Размер:
987.65 Кб
Скачать

Дослід№11. Чисельне інтегрування

У цьому досвіді ми розглянемо, як чисельно інтегрувати функції.

  • Уведіть рядок х=0:0.01:1;, щоб визначити діапазон інтегрування функції.

  • Натисніть клавішу Enter.

  • Наберіть на клавіатурі рядок y=cos(x).*x; для завдання функції інтегрування.

  • Натисніть клавішу Enter.

  • Уведіть рядок z=trapz(x,y). Вбудована функція trapz інтегрує функцію у(х) методом трапецій.

  • Натисніть клавішу Еnter. У вікні програми з'явиться результат інтегрування введеної функції (Рис. 19).

Для інтегрування з використанням квадратурних формул треба скористуватись вбудованою функцією quad. За допомогою функції dblquad можна обчислити 20одвійний інтеграл.

Рис. 17. Чисельне інтегрування

Дослід№12. Створення нових функцій

B програмі MATLAB нові функції потрібні не тільки для спрощення математичних розрахунків. Наприклад, при рішенні диференціальних рівнянь (дивись дослід "Рішення диференціальних рівнянь") не обійтися без створення і використання нових функцій. У цьому досліді ми розповімо, як складати функції.

Нові функції повинні бути записані в спеціальні файли з розширенням m, які називаються М-файлами. Функції в даних файлах автоматично підключаються до програми MATLAB. Щоб створити нову функцію, виконайте наступні кроки:

  • Натисніть кнопку “Відкрити файл” на панелі інструментів. На екрані з'явиться вікно редактора М-файлів (Рис. 18).

Рис. 18. Вікно редактора М-файлів

У центрі вікна редактора М-файлів розміщено робоче поле, призначене для введення новіх функцій.

  • Введіть рядок function y=sincos(x). Ключове слово function (Функція) об’являє нову функцію sincos з параметром х. Змінна у буде визначати значення функції.

  • Натисніть клавішу Enter.

  • Наберіть на клавіатурі рядок y=sin(x)+cos(x);, що задає нову функцію у вигляді суми синуса і косинуса.

  • Тепер збережемо створену функцію на диску.

  • Натисніть кнопку “Зберегти” на панелі інструментів у верхній частині вікна редактора М-файлів. На екрані з'явиться діалог “Зберегти як” (Save as) (Рис. 19.)

Рис. 19. Діалог “Зберегти як” (Save as)

Зверніть увагу, що в відкритому списку Папка (Save as) обрана підпапка програми MATLAB ,у якій зберігаються файли. У поле введення Ім'я файлу (File name) відображається ім'я створеної функції sincos.

  • Натисніть кнопку “Зберегти” (Save), щоб закрити діалог “Зберегти як” М-файл sincos з новою функцією буде збережений на диску.

  • Клацніть мишкою на кнопці в правому верхньому куті вікна редактора М-файлів, щоб закрити вікно. Залишилося перевірити роботу створеної функції.

  • Уведіть рядок z=sincos(0.5), щоб звернутися до функції.

  • Натисніть клавішу Enter. У вікні програми з'явиться результат обчислень створеної функції.

Варто помітити, що при створенні нових функцій у М-файлах можна використовувати вбудовану мову програмування, що розширює можливості програми MATLAB.

Дослід№13. Рішення диференціальних рівнянь

У цьому досліді розглянемо, як чисельно інтегрувати звичайні диференціальні рівняння.

Давайте вирішимо диференціальне рівняння у'(x)+y(x)=cos(x*x).

  • Створіть нову функцію з двох рядків (дивись дослід "Створення нових функцій"): function z=differ(x,y) z=cos(x*x)-y;

Створена функція differ визначає необхідне для рішення диференціальне рівняння, тобто у'(x)=differ(x,y).

Введіть рядок [x,y]=ode23('differ', 0:0.01:5, 0);. Вбудована функція ode23 методом Рунге-Кутта вирішує диференціальне рівняння, представлене функцією differ, на інтервалі інтегрування 0:0.01:5 з початковою умовою у(0)=0. У лівій частині рядка знаходяться вектори аргументу х і рішення рівняння у.

Натисніть клавішу Enter, щоб знайти рішення диференціального рівняння. Тепер представимо отримане рішення в графічному виді.

  • Уведіть рядок plot(x.y); для побудови графіка рішення (дивись дослід "Побудова графіків і діаграм").

  • Натисніть клавішу Enter. На екрані з'явиться вікно з необхідним графіком

Розглянута функція ode23 дозволяє вирішувати і системи диференціальних рівнянь, якщо створити потрібну функцію, що представляє систему. Дана вбудована функція забезпечує високу швидкість обчислень при помірній точності. А функція ode113 вирішує диференціальні рівняння з високою точністю.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]