Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Glava_3_MATLAB.doc
Скачиваний:
28
Добавлен:
24.11.2018
Размер:
3.32 Mб
Скачать

3.2.6 Графики в matlab Построение двумерных графиков

Для того, чтобы построить график функции y = f(x), необходимо сформировать два массива x и y одинаковой размерности, а затем использовать функцию plot.

Пример 3-6. Требуется построить график функции y=0,5sin(x)+cos(2x) на интервале [-10; 10].

Решение задачи и результат приведены ниже.

Инструкции

Результат

>> x=-10:0.05:10;

>> y=0.5*sin(x)+cos(2*x);

>> plot(x,y);

В результате обращения к функции plot(x,y) будет создано окно с именем Figure 1, в котором будет построен график

Для построения нескольких графиков в одной системе координат можно действовать двумя способами:

1. Использовать функцию plot, задавая аргументы следующим образом: plot (x1, y1, x2, y2, … , xn, yn), где x1, y1 – абсцисса и ордината первого графика, x2, y2 – абсцисса и ордината второго графика, … , xn, yn – абсцисса и ордината n-ого графика.

2. Использовать функцию plot( x, y) для построения каждого графика, но перед обращением к функциям plot (x2, y2), … , plot( xn, yn) вызывать команду hold on , которая блокирует режим создания нового окна.

Пример 3-7. Требуется построить в одной системе координат графики функций y=0,5sin(x), z= 2sin(x), v= sin(2x) на интервале [-10; 10].

Решение задачи и результат приведены ниже.

Инструкции

Результат

% первый способ

>> x=-10:0.05:10;

>> y=0.5*sin(x);

>> z=2*sin(x);

>> v=sin(2*x);

>> plot(x,y,x,z,x,v);

% второй способ

>> x=-10:0.05:10;

>> y=0.5*sin(x);

>> plot(x,y);

>> hold on;

>> z=2*sin(x);

>> plot(x,z);

>> hold on;

>> v=sin(2*x);

>> plot(x,v);

Для оформления графиков в Matlab имеются следующие возможности:

* команда grid on наносит сетку на график;

* функция title(‘заголовок’) выводит заголовок графика;

* функции xlabel(‘подпись оси х’), ylabel(‘подпись оси у’) служат для подписи осей х и у соответственно;

* функция legend(‘легенда1’, ‘легенда2’, … , ‘легендаn’, k) выводит легенды для каждого из n графиков, параметр k определяет месторасположение легенды в графическом окне: -1 – в правом верхнем углу графического окна, за пределами графика; 0 – автоматически выбрать наилучшее месторасположение; 1 – в правом верхнем углу графика (значение по умолчанию); 2, 3, 4 – в левом верхнем, в левом нижнем, в правом нижнем углах графика соответственно.

Пример 3-8. Требуется построить график функций на интервале [-5; 5].

Заметим, что заданная функция не определена в двух точках х1 = -1 и х2 = 1. Поэтому будем задавать аргументы для интервалов [-5, -1), (-1, 1) и (1, 5].

Решение задачи и результат приведены ниже.

Инструкции М-файла

Результат

Задание 3-2. Постройте графики функций:

1.

2. на интервале [-2; 2].

3. на интервале [-2; 2].

Основы программирования в MATLAB

Создание М-программ

Основные операторы М-языка

Для ввода исходных данных в диалоговом режиме используется функция input(), имеющая следующий синтаксис: Input(‘текст’)

Пример 3-9. Требуется ввести значение переменной а в диалоговом режиме. Решение и результат:

Инструкции

Результат

>> a = input('введите число')

введите число 5

a =

5

Условный оператор

Для программирования условий в М-языке Matlab используется оператор If. Существуют две разновидности оператора If обычная и расширенная. Обычная форма If имеет следующий синтаксис:

If условие

операторы1

else

операторы2

end

Синтаксис расширенного оператора If:

If условие1

операторы1

elseif условие2

операторы2

elseif условие n

операторы n

else

операторы

end

При выполнении оператора If сначала проверяется первое условие. Если оно истинно, то выполняются операторы1, после чего программа перейдет к выполнению операторов, следующих за end. Если первое условие ложно, то проверяется второе условие и т.д. Операторы, следующие за else, выполняются в том случае, если ни одно из условий не выполнено.

Операции и операторы в MATLAB

Операции сравнения

Логические

операторы

операции

< меньше

and(A, B)

A & B

> больше

or(A, B)

A | B

=?= равно

xor(A, B)

~= не равно

Not(A)

~ A

<= меньше или равно

>= больше или равно

При одновременном использовании в выражении логических, арифметических операций и операций сравнения важно учитывать приоритет операций:

1. Логические операторы.

2. Логическая операция ~

3. Арифметические операции (в соответствии с их приоритетом).

4. Операции сравнения.

5. Логическая операция «и» – &.

6. Логическая операция «или» – |.

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