Главная страница Случайная страница КАТЕГОРИИ: АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника |
Statv Interesting statistics.
Приклад функції з вбудованою підфункцією Для перегляду лістінгу М-файлу використовують команду type < name>.
Приватні каталоги. Для запису М-файлів використовуються каталоги, що називаються батьківськими. Вони вміщують групи файлів певного функціонального призначення. Але з версії MATLAB 5.0 з‘явилася можливість в батьківських каталогах створювати приватні каталоги – PRIVATE. Файли, що в них входять, доступні тільки файлам батьківського каталогу. Файли приватних каталогів передивляються інтерпритатором системи MATLAB в першу чергу. Застосування приватних каталогів дозволяє використовувати функції, написані користувачем, надаючи їм імена оригінальних файлів.
Використання рядкових виразів. Рядкові вирази зазвичай не обчислюються, а просто повторюють рядок: > > ‘2+3’ ans = 2+3 Але за допомогою функції eval(‘Рядковий_вираз’) рядкові вирази, що є математичними виразами можуть бути обчислені: > > eval(‘2+3’) ans = > > eval(‘2*sin(1)’) ans = 1.6829 Функція feval(‘Ім‘я_функції’, x1, x2, …) дозволяє передавати в обчислювану функцію список її аргументів. В цьому випадку обчислювана функція записується тільки своїм іменем. Наприклад: > > feval(‘prod’, [1 2 3]) ans = > > feval(‘sum’, [1 2 3; 4 5 6], 2) ans = Видача повідомлення про помилку. В ході обчислень можуть виникати помилки, наприклад ділення на нуль. В таких випадках повинні видаватися повідомлення про помилку. Для виводу повідомлень про помилки служить команда error(‘Повідомлення про помилку’) при виконанні якої обчислення припиняються і видається повідомлення про помилку, що задане в апострофах. Наприклад: > > function f=sd(x) if x==0 error(‘Помилка – ділення не нуль’), end f=sin(x)/x Результати виконання програми: > > sd(1) f = 0.8415 ans = 0.8415 > > sd(0) ??? Error using ==> sd Помилка – ділення не нуль Якщо призупинення програми є небажаним, то можливо використовувати команду попереджувального повідомлення: warning(‘Попереджувальне повідомлення’) Ця команда виводить повідомлення, що вказане у апострофах, але не заважає подальшому виконанню програми. Ознакою помилки є символи???, в ознакою попередження слово warning з відповідним повідомленням.
При створенні функцій зі спеціальними властивостями будуть потрібні наступні функції: nargin – повертає число вхідних параметрів даної функції nargout – повертає число вихідних параметрів даної функції.
Робота з багатовимірними масивами. При задаванні масиву елементи рядка розділяються пробілами, а елементи різних рядків відділяються знаком;. При необхідності розширення масиву – додавання нової “сторінки” – користуються оператором: (двокрапка). Наприклад заданий масив: > > M=[1 2 3; 4 5 6; 7 8 9] M = 1 2 3 4 5 6 7 8 9 При додаванні нової сторінки з тим же розміром можливо задати: > > M(:,:, 2)=[10 11 12; 13 14 15; 16 17 18] M(:,:, 1) = 1 2 3 4 5 6 7 8 9 M(:,:, 2) = 10 11 12 13 14 15 16 17 18 Після явного виклику такого масиву отримаємо: > > M M(:,:, 1) = 2 2 3 5 5 6 7 8 9 M(:,:, 2) = 10 11 12 13 14 15 16 17 18 Щоб отримати доступ до певного елемента масиву треба вказати номер рядка і стовпчика в якому знаходиться елемент: > > M(2, 2, 1) ans = > > M(2, 3, 2) ans = При створенні сторінок можна заповнювати їх константами і випадковими величинами. При заповненні константами вони вказуються вищенаведеним способом або, якщо весь масив треба заповнити однаковими константами: > > M(:,:, 1)=0 M(:,:, 1) = 1 1 1 1 1 1 1 1 1 Для створення масивів заповнених різним чином використовуються наступні функції: ones – створення масивів з одиничними елементами, zeros – створення масивів з нульовими елементами, rand – створення масивів з випадковими елементами, розподіленими за рівномірним розподілом, randn – створення масивів з випадковими елементами, розподіленими за нормальним розподілом. Наприклад: > > Z=zeros(2, 2, 3) Z(:,:, 1) = 0 0 0 0 Z(:,:, 2) = 0 0 0 0 Z(:,:, 3) = 0 0 0 0 > > R=randn(3, 2, 2) = R(:,:, 1) = -1.6656 -1.1465 0.1253 1.1909 0.2877 1.1892 R(:,:, 2) = -0.0376 -0.1867 0.3273 0.7258 0.1746 -0.5883 Якщо хоча б одна розмірність масиву буде нульовою –масив буде пустим: > > A=randn(3, 3, 3, 0) A = Empty array: 3-by-3-by-3-by-0 При використанні функції конкатенації отримуємо масив, що формується об‘єднанням з початкових масивів: cat(2, A, B) – повертає масив [A, B], що об‘єднаний по стовпчикам, cat(1, A, B) – повертає масив [A, B], що об‘єднаний по рядкам. Наприклад: > > M1=[1 2; 3 4] M1 = 1 2 2 4 > > M2=[5 6; 7 8] M2 = 5 6 7 8 > > cat(1, M1, M2) ans = 1 2 3 4 5 6 7 8 > > cat(2, M1, M2) ans = 1 2 5 6 3 4 7 8 > > M=cat(3, M1, M2) M(:,:, 1) = 1 2 3 4 M(:,:, 2) = 5 6 7 8 Для обчислення розмірності масиву існує функція: ndims(A) – повертає розмірність масиву А (якщо вона більше чи дорівнює 2).
Оператори і функції системи MATLAB Повний набір операторів вхідної мови системи MATLAB і відповідних функцій виводяться командою > > help ops Арифметичні оператори та функції
Оператори відношення та їх функції
Логічні оператори
[ ] – використовуються для формування векторів та матриць.
Рекомендована література до вивчення курсу „Чисельні методи”.
1. Бахвалов Н.С., Жидков Н.П., Кобельков Г.М. Численные методы, М.: Наука, 1987. 2. Гаврилюк М.А., Галамай Т.Г. Прикладные программы и лабораторный практикум для персонального компьютера. – К.: УМКВО, 1988. – 202 с. 3. Фельдман Л.П., Петренко А.І., Дмитрієва О.А. Чисельні мтеоди і інформатиці. – К.: Видавнича группа ВНV, 2006. – 480 с. 4. Метьюз Дж., Фінк К. Численные методы. Использование MatLab. – М.: 2001. – 583 с. 5. Бахвалов Н.С., Лапин А.В., Чижонков Е.В. Численные методы в задачах и упражнениях. – М.: Высшая школа, 2000. – 192 с.
|