Присвоение матрице математического выражения
Организация всех переменных системы MATLAB как матрицы вызывает следующие ограничения применения их в выражениях. Например:
t=1:5
t= 1 2 3 4 5
y=cos(t)
y=1 0.5 -0.4 -1 -0.6 0.2
z=y/t
z=-0.08
Результат - получается одно число, а ожидали функцию z(t)=cos(t)/t.
Для организации поэлементного деления одного массива на другой, в MATLAB предусмотрена специальная операция - «./» - поэлементное деление.
Результат этого выражения будет другой:
z=y ./ t
z= 0.5403 -0.2081 -0.3300 -0.1634 0.0567.
Математические функции
В системе MATLAB имеется обширная библиотека математических функций. Каждой функции соответствует определенное имя. Функция ставит в соответствие значениям своих аргументов значение результата.
Аргументы функции всегда указываются в круглых скобках после имени функции и, если их больше одного, разделяются запятыми. В качестве аргументов могут использоваться другие функции и любые выражения языка MATLAB (при условии соответствия типов аргументов).
Элементарная математическая функция - это, как правило, функция от одной переменной, и в этом случае устанавливается соответствие между массивами значений аргумента и результата.
Аргумент указывается в круглых скобках после имени функции. Имя переменной, которой присваивается значение функции, располагается слева от знака равенства. Если имя присваиваемой переменной не указано, значение функции присваивается служебной переменной ans.
|
|
Тип результата вычисления математической функции всегда совпадает с типом ее аргумента. Например, если аргументом функции является вектор-столбец, то значением этой функции также будет вектор-столбец.
Рассмотрим встроенные математические функции системы MATLAB, которые применяются к числам, скалярным переменным и к массивам (поэлементно).
Базовые функции
· ABS - абсолютное значение
· ANGLE - аргумент комплексного числа
· REAL, IMAG - действительная и мнимая части комплексного числа
· CONJ - операция комплексного сопряжения
· SIGN - вычисление знака числа
· CEIL, FIX, FLOOR, ROUND - функции округления
· REM - функция остатка
· GCD - наибольший общий делитель
· LCM - наименьшее общее кратное
· RAT, RATS - представление результата в виде рационального числа или цепной дроби
Трансцендентные функции
· SQRT - квадратный корень
· EXP - экспоненциальная функция
· LOG - функция натурального логарифма
· POW2 - экспонента по основанию 2
· NEXTPOW2 - ближайшая степень по основанию 2
· LOG2 - фунции логарифма
· LOG10 - функции логарифма
Тригонометрические функции
· SIN, SINH - функции синуса
· ASIN, ASINH - функции обратного синуса
· CSC, CSCH - функции косеканса
· ACSC, ACSCH - функции обратного косеканса
· COS, COSH - функции косинуса
|
|
· ACOS, ACOSH - функции обратного косинуса
· SEC, SECH - функции секанса
· ASEC, ASECH - функции обратного секанса
· TAN, TANH - функции тангенса
· ATAN, ATAN2, ATANH - функции обратного тангенса
· COT, COTH - функции котангенса
· ACOT, ACOTH - функции обратного котангенса
Преобразования системы координат
· CART2POL - преобразование декартовой системы координат в полярную и цилиндрическую
· CART2SPH - преобразование декартовой системы координат в сферическую
· POL2CART - преобразование полярной и цилиндрической систем координат в декартову
· SPH2CART - преобразование сферической системы координат в декартову
Специальные функции
· BESSEL - функции Бесселя
· BETA, BETACORE, BETAINC, BETALN - бета-функции
· ELLIPJ - эллиптические функции Якоби
· ELLIPKE - полные эллиптические интегралы
· ERF, ERFCORE, ERFC, ERFCX, ERFINV - функции ошибок
· GAMMA, GAMMAINC, GAMMALN - гамма-функции
Графические средства представления результатов
Вывод одного графика
MATLAB предоставляет следующие функции для работы с графикой:
plot(<Массив>) - построение графика значений из массива Х от номера отсчета.
plot(<Массив точек по оси Х>,<Массив точек по оси У>) - построение графика значений из массива У от значений из массива Х.
При вызове команды создается окно с указанным графиком.
|
|
Функция plot имеет различные формы, связанные с входными параметрами, например plot(y) создает кусочно-линейный график зависимости элементов y от их индексов. Если в качестве аргументов заданы два вектора, то plot(x,y) создаст график зависимости y от x. Например, для построения графика функции sin в интервале от 0 до 2p, сделаем следующее
Программа построила график зависимости, который отображается в окне
MatLab автоматически присваивает каждому графику свой цвет (исключая случаи, когда это делает пользователь), что позволяет различать наборы данных.
Функцию plot() можно записать и с одним аргументом x или y:
plot(x);
plot(y);
в результате получим два разных графика. Их анализ показывает, что в случае одного аргумента функция plot() отображает множество точек по оси Oy, а по оси Оx происходит автоматическая генерация множества точек с единичным шагом. Следовательно, для простой визуализации вектора в виде двумерного графика достаточно воспользоваться функцией plot() с одним аргументом.
Трехмерные графики
Для построения трехмерных графиков во первых понадобится создать сетку координат на плоскости. Выполняет это функция [X,Y]=meshgrid(x,y), где x и y - одномерные массивы, а X и Y - полученные в результате двухмерные массивы. Если массивы x и y одинаковые, то достаточно указать [X,Y]=meshgrid(x). Например: [X,Y]=meshgrid([-2:0.1:2]).
|
|
После этого описывается сама функция, например Z=X.*exp(-X.^2-Y.^2). Напоминаю что операции «.^» и «.*» означают поэлементные а не матричные действия.
После этого подается команда на вывод трехмерного графика: plot3(X,Y,Z).
Вывод нескольких графиков
Для вывода нескольких графиков на одном окне Вам необходимо указать их последовательно, например:
t=-10:0.1:10 ;
x1=sin(t) ;
x2=cos(t) ./ t ;
plot(t,x1,t,x2)
Команда hold on позволяет добавлять кривые на существующий график. Функция subplot позволяет выводить множество графиков в одном окне
Печать графиков
Пункт Print в меню File и команда print печатают графику MatLab. Меню Print вызывает диалоговое окно, которое позволяет выбирать общие стандартные варианты печати. Команда print обеспечивает большую гибкость при выводе выходных данных и позволяет контролировать печать из М-файлов. Результат может быть послан прямо на принтер, выбранный по умолчанию, или сохранен в заданном файле.
4.5. Элементарные графические функции системы MATLAB
Двумерные графики
· PLOT - график в линейном масштабе
· LOGLOG - график в логарифмическом масштабе
· SEMILOGX, SEMILOGY - график в полулогарифмическом масштабе
· POLAR - график в полярных координатах
Трехмерные графики
· PLOT3 - построение линий и точек в трехмерном пространстве
· MESHGRID - формирование двумерных массивов X и Y
· MESH, MESHC, MESHZ - трехмерная сетчатая поверхность
· SURF, SURFC - затененная сетчатая поверхность
· SURFL - затененная поверхность с подсветкой
· AXIS - масштабирование осей и вывод на экран
· GRID - нанесение сетки
· HOLD - управление режимом сохранения текущего графического окна
· SUBPLOT - разбиение графического окна
· ZOOM - управление масштабом графика
· COLORMAP - палитра цветов
· CAXIS - установление соответствия между палитрой цветов и масштабированием осей
· SHADING - затенение поверхностей
· CONTOURC - формирование массива описания линий уровня
· CONTOUR - изображение линий уровня для трехмерной поверхности
· CONTOUR3 - изображение трехмерных линий уровня
Дата добавления: 2018-04-05; просмотров: 389; Мы поможем в написании вашей работы! |
Мы поможем в написании ваших работ!