Программу и графики функций y и z поместить в отчет.
Методические указания по выполнению задания
В MATLAB используют два режима работы:
в командном окне, как с калькулятором. В этом случае каждое действие сразу же исполняется;
в редакторе программ. В этом случае программа вводится в окно редактора, сохраняется, а исполняется по команде встроенного отладчика.
При работе в режиме калькулятора выражения могут вводиться:
в прямой форме, тогда после завершения ввода ответ будет выведен под встроенным системным именем ans. Переменная с этим именем всегда хранит результат последнего вычисления.
в форме оператора присвоения, когда переменной с выбранным именем присваивается значение выражения. Ответ в этом случае выводиться под именем этой переменной.
Символ присвоения – знак равенства (=).
Любое уже определенное значение можно вызвать из рабочей области по имени переменной.
Если вычисляется значение переменной с выбранным именем по заданному выражению, результат выводится под именем этой переменной в следующей строке.
Вывод результата можно заблокировать, если в конце строки ввода ввести знак точка с запятой (;).
В MATLAB переменным можно задать определенные значения, типы которых заранее не декларируются. Тип результата определяется автоматически по виду выражения.
В идентификаторах имеет значение высота буквы. Для имен простых переменных и функций используют строчные буквы, а для структурированных переменных (векторов и матриц) заглавные.
Если данные не умещаются в строке, строку можно отобразить в нескольких строках, используя разделитель в виде многоточия (не менее трех точек).
Текстовые пояснения в программу вводятся, как комментарий. Он начинается с символа %, который располагается в первой позиции строки.
В MATLAB имеются ряд системных переменных, которые могут быть переопределены:
i или j – мнимая единица,
pi – число = 3,1415926..,
eps – погрешность операций над числами с плавающей точкой,
realmin – наименьшее число с плавающей точкой,
realmax- наибольшее число с плавающей точкой,
inf – значение машинной бесконечности.
Значение переменной, результат которой присваивается, храниться в рабочей области.
Ранжированная переменная применяется для построения графиков, создания циклов с известным числом повторений и имеет ряд фиксированных значений, меняющихся от начального значения xo до конечного xn с определенным шагом h.
Формат задания ранжированной переменной:
X:=xo: h : xn ;
Функция имеет имя и список аргументов, заключенных в круглые скобки, например sin(X). В данном случае аргументом является ранжированная переменная – вектор X.
В системе MATLAB имеется большое количество встроенных математических функций, общий перечень которых можно получить в командном окне командами help elfun, некоторая часть из которых приведена в таблице 1.2.
Таблица 1.2. Элементарные функции
-
Функция
Описание
abs(X)
Абсолютное значение Х
exp(X)
Экспонента от Х.
expm1(X)
Экспонента от Х минус 1.
cos(X)
Косинус
sin(X)
Синус
tan(X)
Тангенс
cot (X)
Котангенс
log(X)
Натуральный логарифм от Х.
log10(X)
Логарифм от Х по основанию 10.
sqrt(X)
Квадратный корень из Х..
Для правильного вызова встроенных функций используется справка MATLAB Help и пункт меню Function Browser. В окне категории выделить нужный раздел, а в нем список функций. В списке найти нужную функцию и щелкнуть по ней. В дополнительном окне отобразится описание выбранной функции с форматом обращения и примерами использования, а при двойном щелчке по функции запись ее перемещается в командную строку.
На основе встроенных элементарных функций строятся функции пользователя.
Формат задания функции пользователя:
Имя = Выражение;
Для вычисления функции и вывода таблицы ее значений необходимо ввести ранжированную переменную, задать функцию пользователя, и вывести значения клавишей <Entr>.
При работе с массивами определены операторы поэлементного выполнения. В последнем случае, перед символом операции вводится точка (.). например, функция y=e-xsin(|x+5|) в MATLAB будет записана как Y=expm1(X).*sin(abs(X+5)); где вектор X в виде ранжированной переменной определен ранее.
Для построения графика необходимо ввести ранжированную переменную с заданным шагом, задать функцию пользователя, вызвать окно для построения графика функции и с помощью команды plot(x,y,s) построить график.
Процедура plot рисует график прямыми линиями между вычисленными точками. Здесь s - строковая константа, задающая параметры линии, ее можно пропускать. Определены следующие значения строковой константы s:
Цвет линии |
Тип точки |
Тип линии |
|||
y |
желтый |
. |
точка |
- |
сплошная |
m |
фиолетовый |
o |
кружок |
: |
двойной пунктир |
c |
голубой |
x |
крест |
-. |
штрих пунктир |
r |
красный |
+ |
плюс |
-- |
штрих |
g |
зеленый |
* |
звездочка |
|
|
b |
синий |
s |
квадрат |
|
|
w |
белый |
d |
ромб |
|
|
k |
черный |
v |
треугольник вниз |
|
|
|
|
^ |
треугольник вверх |
|
|
|
|
< |
треугольник влево |
|
|
|
|
> |
треугольник вправо |
|
|
|
|
p |
пятиугольник |
|
|
|
|
h |
шестиугольник |
|
|
Если на одном графике нужно отобразить несколько функций, например, Y1=f(X) и Y2=f(X)., то они вначале вычисляются, а затем выводятся командой plot(X,Y1,'s1',X,Y2,'s2' ...), в которой в качестве параметров для каждой функции следуют группы <аргумент, функция, строка типа линии>.
Для создания в графическом окне нескольких подокон для вывода графиков используется процедура subplot(m,n,p), где m - число подокон в окне по горизонтали, n - по вертикали, p - номер используемого подокна (нумерация с 1).
Для формирования графика в столбиковой форме нужно использовать команду bar(X,Y). При выводе такого графика в подокно строка программы имеет вид subplot(m,n,p), bar(X,Y).
Пример выполнения задания в режиме калькулятора:
>> % Простые вычисления
>> pi
ans =
3.1416
>> sqrt(21)
ans =
4.5826
>>% Ввод исходных данных
>> xo=-6;
>> xn=6;
>> h=0.3; % Шаг
>> X=xo:h:xn; % Задание аргумента
>> a=2;
>> b=5;
>> % Расчет функций
>> Y=abs(cos(X));
>> Z=-abs(sin(2*X));
>> % Вывод графиков с разными типами линии в окно1
>> figure(1);
>> plot(X,Y,':mo');
>> title('Y,X'); % Добавление заголовка
>> % Вывод графиков с разными типами линии в окно2
>> figure(2);
>> plot(X,Z,'--bd');
>> title('Z,X'); % Добавление заголовка
>> figure(3);
>> plot(X,Y,':mo',X,Z,'--bd');
>> grid on; % Добавление координатной сетки
>> title('Y,Z'); % Добавление заголовка
>>legend('Function Y', 'Function Z'); % Добавление легенды
>> figure(4);
>> % Вывод графика Y в виде линий подокно1
>> subplot(2,2,1), plot(X,Y,':mo');
>> title('X,Y');
>> % Вывод графика Z в виде линий подокно3
>> subplot(2,2,3), plot(X,Z,'--bd');
>> title('X,Z');
>> % Вывод графика Y в виде столбиков подокно2
>> subplot(2,2,2), bar(X,Y);
>> title('X,Y Hist');
>> % Вывод графика Z в виде столбиков подокно4
>> subplot(2,2,4), bar(X,Z);
> > title('X,Z Hist');
Рис.1. Вывод графиков с разными типами линии в разные окна 1 и 2.
Рис.2. Вывод графиков с разными типами линии в окно3
Рис.3. Вывод графиков в виде столбиков разные подокна окна 4.
2. Матричные операции и функции в MATLAB
Подготовка к работе
По указанной литературе изучить:
создание матриц и векторов;
матричные операторы и функции;
правила вывода результатов;
специальные символы и операции с матрицами;
Контрольные вопросы