МУ Расчеты в mathLab
.pdfМАТЕМАТИЧЕСКИЕ РАСЧЕТЫ
В MATLAB
|
1 |
|
x2 y |
(3cos3y sin y) |
|
|
|
|
3 |
|
|
||
lim |
|
3 |
3 |
|
||
x |
|
x |
dx |
|||
x 0 |
|
|
||||
|
|
|
|
1 |
|
|
z
y |
x |
|
Омск 2010
Федеральное агентство по образованию ГОУ ВПО «Сибирская государственная автомобильно-дорожная
академия (СибАДИ)»
Кафедра «Информационные технологии»
МАТЕМАТИЧЕСКИЕ РАСЧЕТЫ
В MATLAB
Методические указания
Составители: Н.Ф. Антипенко, Т.А. Санькова
Омск
2010
2
УДК 004.9:517:512 ББК 32.988-5:22.141:22.16
Рецензент канд. техн. наук, доц. А.А. Руппель (СибАДИ)
Работа одобрена научно-методическим советом специальности «Профессиональное обучение» в качестве методических указаний для студентов специальности «Профессиональное обучение».
Математические расчеты в MATLAB: методические указания / сост.: Н.Ф. Антипенко, Т.А. Санькова. Омск: СибАДИ, 2010. 56 с.
Данная работа представляет собой методические указания для студентов, изучающих дисциплину «Пакеты прикладных программ». Методические указания включают теоретический материал и задания для лабораторных и контрольных работ, позволяющие освоить основные принципы работы с пакетом MATLAB: арифметические вычисления, работа с массивами, построение графиков и поверхностей, решение уравнений и систем уравнений, вычисление интегралов, пределов, производных функций, решение дифференциальных уравнений.
Табл. 7. Ил. 15. Библиогр.: 3 назв.
ГОУ «СибАДИ», 2010
3
ВВЕДЕНИЕ
MATLAB – одна из старейших, тщательно проработанных и проверенных временем систем автоматизации математических расчетов, построенная на расширенном представлении и применении матричных операций. Однако синтаксис языка программирования системы настолько продуман, что эта ориентация почти не ощущается теми пользователями, которых не интересуют непосредственно матричные вычисления. Матрицы широко применяются в сложных математических расчетах, например при решении задач линейной алгебры и математического моделирования статических и динамических систем и объектов. Они являются основой автоматического составления и решения уравнений состояния динамических объектов и систем.
В MATLAB реализованы современные численные методы компьютерной математики, используются мощные средства графической визуализации и анимационной графики. Возможности системы весьма обширны, а по скорости выполнения задач она нередко превосходит своих конкурентов и применима для расчетов практически в любой области науки и техники.
ИНТЕРФЕЙС ПОЛЬЗОВАТЕЛЯ
Пользовательский интерфейс системы MATLAB многооконный и имеет ряд средств прямого доступа к различным компонентам системы (рис. 1). Основную часть окна приложения занимает командное окно (Command Window), в котором расположена строка ввода, начинающаяся специальным маркером – символами «>>». В ней записываются команды для выполнения системой. В левой части окна приложения расположено окно истории команд (Command History), в котором отображаются вводимые пользователем команды. При необходимости эти команды можно снова выполнить, сделав двойной щелчок мыши по нужной команде в окне истории команд.
При наборе команд пользователь может использовать клавиши
[ ], [ ], [Home], [End], [Delete], [BackSpace] для перемещения по строке ввода или удаления символов. Для отмены ввода (очистки строки ввода) используется клавиша [Esc]. Следует обратить внимание на применение клавиш [ ] и [ ]. Они используются для подстановки после маркера строки ввода ранее введенных команд, например для их исправления, дублирования или дополнения. При этом указан-
4
ные клавиши обеспечивают перелистывание ранее введенных строк снизу вверх или сверху вниз.
Рис. 1. Интерфейс системы MATLAB
Ввод команды завершается нажатием клавиши [Enter], при этом MATLAB сразу же выполняет команду и выводит в следующей строке результат. Для того чтобы результат не выводился на экран, в конце команды ставится символ «;».
Если команда слишком длинная, то можно перенести часть ее на новую строку. Для этого в месте переноса нужно поставить пробел и троеточие (…), а затем с новой строки продолжить запись команды.
Для очистки командного окна используется команда clc.
ОСНОВНЫЕ ОБЪЕКТЫ MATLAB
Центральным понятием всех математических систем является математическое выражение. Оно задает то, что должно быть вычислено в численном (реже в символьном) виде. Математические выражения строятся на основе чисел, констант, переменных, операторов, функций и разных спецзнаков.
5
Число – простейший объект языка MATLAB, представляющий количественные данные. Числа используются в общепринятом представлении о них. Они могут быть целыми, дробными, с фиксированной и плавающей запятой, комплексные. Примеры представления чисел в MATLAB приведены в табл. 1.
Таблица 1
Примеры представления чисел
Обычное представление |
В системе MATLAB |
2 |
2 |
–3,4 |
–3.4 |
–123,241 |
–1.23241е2 |
0,000412 |
4.12е–4 |
2+3,7i |
2+3.7i |
0,54 |
.54 |
0,2+3i |
.2+3i |
Константа – это предварительно определенное числовое или символьное значение, представленное уникальным именем. В MATLAB существуют некоторые стандартные константы, например число «пи» (pi), значение мнимой единицы (i). Символьной константой считается любая последовательность символов, заключенных в апострофы, например 'Hello!'.
Переменная – это имеющий имя объект, способный хранить некоторые данные. В зависимости от этих данных переменные могут быть числовыми или символьными, векторными или матричными.
Имя переменной должно начинаться с буквы, может содержать буквы, цифры и символ подчеркивания. Имя не должно совпадать с именами других переменных, функций и процедур системы. Прописные и строчные буквы в MATLAB различаются. Таким образом, переменные s и S – это две разные переменные.
Для уничтожения определения переменной используется специальная команда:
clear – уничтожает все переменные;
clear x – уничтожает переменную x;
clear x,y – уничтожает переменные x и y.
Оператор – это специальное обозначение для определенной операции над данными – операндами. Например, арифметическими операторами являются знаки суммы (+), вычитания (–), умножения (*), деления (/), возведения в степень (^). Операторы используются совме-
6
стно с операндами. Например, в выражении 2+3 знак «+» является оператором сложения, а числа 2 и 3 – операндами.
Функции – это имеющие уникальные имена объекты, выполняющие определенные преобразования своих аргументов и при этом возвращающие результаты этих преобразований. Все имена функций в MATLAB пишутся строчными буквами. Перечень основных функций приведен в табл. 2.
Таблица 2
|
Основные функции |
Функция |
Описание |
sin(x) |
Вычисление синуса числа х |
asin(x) |
Вычисление арксинуса числа х |
cos(x) |
Вычисление косинуса числа х |
tan(x) |
Вычисление тангенса числа х |
log(x) |
Вычисление натурального логарифма числа х |
log2(x) |
Вычисление логарифма числа х по основанию 2 |
log10(x) |
Вычисление десятичного логарифма числа х |
sqrt(x) |
Вычисление квадратного корня из числа х |
exp(x) |
Возведение константы е в степень х |
abs(x) |
Вычисление модуля числа х |
pow2(x) |
Возведение числа 2 в степень х |
Присвоение и вывод значений переменных и функций
Для задания переменной значения используется оператор присваивания
Имя_переменной = Значение;
Для вывода значения переменной нужно в командной строке ввести ее имя и нажать клавишу [Enter].
При вычислении значений арифметических выражений нужно набрать в командной строке это выражение и нажать клавишу [Enter].
Перед тем как вычислять значение математического выражения, необходимо определить значение каждой входящей в него переменной. Вычисляемое выражение может содержать любое количество переменных, операторов и функций.
При арифметических вычислениях в MATLAB соблюдается следующий порядок:
1) значения функций;
7
2)возведение в степень;
3)умножение и деление в порядке их следования;
4)сложение и вычитание в порядке их следования.
Для изменения порядка действий используются круглые скобки.
Пример
Вычислить значение выражения z |
x2 |
|
y |
при x=25, y=3,6. |
|||
|
|
|
|
|
2 |
||
3 |
|
sin x |
|
|
|||
|
|
||||||
|
|
|
|
|
|
Порядок ввода:
>>x=25;
>>y=3.6;
>>z=(x^2+y)/(3–abs(sin(x)))+2
В результате получим z=221.204.
Пример
Вычислить значение выражения cos2 2 . 3
Порядок ввода: >> cos(2/3*pi)^2
В результате получим число 0,25.
Табулирование функции
Протабулировать функцию – это вычислить все ее значения при каждом значении аргумента в указанном диапазоне. При табулировании функции необходимо задать значения аргумента, при которых будут вычисляться значения функции.
Для задания диапазона чисел необходимо написать имя переменной, поставить знак присваивания, а затем через двоеточие начальное значение, шаг и конечное значение:
Имя_переменной=Начальное_значение:Шаг:Конечное_значение;
8
Если шаг равен 1, то его можно не указывать, а задать только начальное и конечное значения. После ввода диапазона значений аргумента функции задается сама функция.
Так как аргумент имеет несколько значений, то выполнение операций умножения, деления и возведения в степень должно выполняться поэлементно над каждым из значений. Для этого используются операции .*, ./ и .^, соответственно.
Для умножения на число, сложения и вычитания используются обычные операции *, + и –, соответственно.
Пример
Вычислить значения функций y 2xsin x и z 3x2 cos x при x [–1,5; 1,5] с шагом 0,5.
Порядок ввода:
>>x=–1.5:0.5:1.5
>>y=2*x.*sin(x)
>>z=3*x.^2+cos(x)
В результате получим: |
|
|
|
|
||
x = |
|
|
|
|
|
|
–1.5000 |
–1.0000 |
–0.5000 |
0 |
0.5000 |
1.0000 |
1.5000 |
y = |
|
|
|
|
|
|
2.9925 |
1.6829 |
0.4794 |
0 |
0.4794 |
1.6829 |
2.9925 |
z = |
|
|
|
|
|
|
6.8207 |
3.5403 |
1.6276 |
1.0000 |
1.6276 |
3.5403 |
6.8207 |
ЛАБОРАТОРНАЯ РАБОТА № 1
I. Вычислить значения выражений при a=3, b=2,6:
1) cos |
3 |
; |
|
4) ln |
2b |
e; |
||||||||
|
|
|||||||||||||
|
|
|
|
|
||||||||||
7 |
|
|
|
3 |
|
|
|
|
||||||
2) e 2 sin2 3 ; |
5) log2 256 2a; |
|||||||||||||
|
|
|
|
|
6) 3 |
|
|
ln7 |
; |
|||||
3) tg |
7 |
; |
||||||||||||
12 a |
||||||||||||||
|
|
|||||||||||||
9 |
|
|
|
|
|
|
|
|
b 3 |
9
7)sin2 3 963 272 ; 8
8)ln3 lg4;
9)sinb cos(a 2b);
2
10)cos3 3 e e 8 .
11)sin5 cos5 ;
12)arcsin0,73;
13) |
a 3 |
5 |
b 2 |
|
; |
|
|
|
|
||
|
|
|
|
a 2b
II. Протабулировать функции f, g, y, f+g:
1)x [–2; 2], h=0,2, f=|x–1|2, g=cos2(3x), z=2x3–3x2+1;
2)x [–4; 3], h=0,6, f=ln|x+5|, g=sinx+cos(2x), z=x2 2 ;
3)x [2; 12], h=1, f=lgx+1, g=3|x–3|, z= 2x2 .
5 x
РАБОТА С МАТРИЦАМИ
Элементы матрицы задаются в квадратных скобках, причем элементы одной строки отделяются друг от друга пробелом или запятой, а строки отделяются друг от друга точкой с запятой.
Пример
3 1
Задать матрицу М2 2 = .
5,5 1
Порядок ввода:
>> М = [3 –1; 5.5 1]
Для обращения к отдельному элементу матрицы нужно указать имя матрицы и индексы элемента в круглых скобках.
Пример
Присвоить элементу второй строки первого столбца матрицы М значение 2.
Порядок ввода: >> М(2, 1)=2
10