Главная | Обратная связь | Поможем написать вашу работу!
МегаЛекции

Панель инструментов системы MATLAB.




MATLAB

Основы работы в MATLAB.

Рабочая среда MATLAB.

MATLAB – одна из самых мощных компьютерных систем, предназначенных для решения математических, инженерных и экономических задач. Входной язык системы MATLAB позволяет не только использовать встроенные команды, но и разрабатывать собственные визуальные приложения.

 

Окна системы MATLAB

Общение пользователя с системой MATLAB происходит посредством окон.

1. Command Window (Окно команд).

Окно Command Window является наиболее важным для пользователя. Посредством этого окна вводятся математические выражения, получаются результаты вычислений, а также выдаются сообщения, посылаемые системой. Математические выражения пишутся в командной строке после знака приглашения «>>». Например, наберем в командной строке 1+2

>> 1 + 2

Для выполнения действия нажмем клавишу «Enter».

В командном окне появится следующее

ans =

>> |

По умолчанию программа записывает результат в специальную переменную ans.

Выполним действие с использованием переменной и оператора присваивания «=». Для этого в командной строке набираем

>> z = 1.25 /3.11

z =

0.40193

Редактировать в Command Window можно только текущую командную строку. Для того чтобы отредактировать ранее введенную команду, необходимо установить курсор в строку ввода и воспользоваться клавишами «» или«».

Командное окно можно закрыть кнопкой «», а кнопка «» служит для отделения окна от интерфейса системы. Вернуться к стандартной форме окна можно с помощью меню:

Главное МенюDesktopDesktop LayoutDefault.

(Главное МенюВидСхема рабочего столаПо умолчанию).

 

Очистить командное окно можно с помощью меню:

Главное МенюEditClear Command Window.

(Главное МенюПравкаОчистить командное окно).

 

2. Окно Workspace (Рабочая область).

Окно предоставляет пользователю список всех переменных, созданных в процессе работы. Можно выбрать любую переменную, просмотреть её содержимое или выполнить какие-либо другие действия. Для доступа нужно щелкнуть правой кнопкой мыши по имени переменной в списке.

 

3. Окно Current Folder (Текущий каталог).

Окно является аналогом известной программы Проводник. Окно служит для поиска, просмотра, открытия файлов и папок, осуществления смены текущей директории, установления пути к файлу и т.д.

 

4. Окно Command History (История команд).

Все команды, которые набираются в командной строке, автоматически образуют список, который выводится в окне Command History. Если появится необходимость повторить ранее выполненную команду, то она отыскивается в списке Command History, и, дважды щелкнув по ней левой кнопкой мыши, можно команду выполнить. Содержимое данного окна не теряется после выхода из системы и выключения компьютера. Удалить список команд можно только с помощью меню.

 

Главное меню системы MATLAB

Главное меню имеет стандартный вид и организацию, присущие многим программным продуктам. Главное меню MATLAB содержит следующие пункты:

File (Файл) – работа с файлами;

Edit (Правка) – редактирование;

Window (Окно) – связь с окнами системы;

Help (Справка) – связь со справочной системой MATLAB.

 

Панель инструментов системы MATLAB.

Кнопки панели инструментов имеют следующие назначения:

New file (Создать) – выводит окна редакторов файлов;

Open file (Открыть) – открывает окна загрузки файлов;

Cut (Вырезать) – вырезает выделенный фрагмент и помещает в буфер обмена;

Copy (Копировать) – копирует выделенный фрагмент в буфера обмена;

Paste (Вставить) – переносит выделенный фрагмент из буфера обмена в строку ввода;

Undo (Отменить) – отменяет результата предыдущей операции;

Redo (Повторить) – повторяет результат предыдущей операции;

Simulink – создает модель Simulink (расширения MATLAB);

Help (Помощь) – открывает окна справки.

 

Формат вывода результата вычислений

Числовые результаты могут быть представлены с плавающей точкой, (например 4.0193e-001, что означает ), или с фиксированной точкой (например, 0.040193). Числа с плавающей точкой представлены в экспоненциальной форме

,

где – мантисса (целое или дробное число с десятичной точкой); – порядок (целое число).

Введем число в рабочую область.

При вводе вещественных чисел для отделения дробной части используется точка!

>> s = 0.3467819

В строке вывода появится число

s =

0.3468

Количество знаков в дробной части меньше, чем в строке ввода. Это происходит потому, что результат вычислений выводится в формате short (краткая запись числа), который определяется по умолчанию. Можно поменять формат на long (длинная запись числа), набрав команду

>> format long

>> s

s =

0.34678190000000

В списке Numerical Format также имеются форматы чисел

short e – краткая запись числа в формате с плавающей точкой;

long e – длинная запись числа в формате с плавающей точкой;

short g – вторая форма краткой записи числа в формате фиксированной точкой;

long g – вторая форма длинной записи числа в формате фиксированной точкой;

 

 

Информацию о форматах можно получить, набрав в командной строке

>> help format

Также формат отображения числовых данных можно установить в меню File (файл) пункт Preferences (предпочтения). Перейти на вкладку Command Window (окно команд). В опции Text display (отображение текста), в списке Numeric format (числовой формат) установить short g, в опции Numeric display (отображение чисел) установить compact. Эти форматы вывода соответствуют выводу чисел в универсальной форме из пяти значащих цифр и с подавлением пробела между строками.

 

Важно помнить, что, в каком бы формате не выводилось число, в памяти компьютера оно хранится со всеми введенными цифрами с погрешностью около (15 десятичных разрядов). Диапазон представления модуля действительного числа принадлежит интервалу до .

Основы работы в MATLAB.

Для выполнения простейших арифметических операций в MATLAB применяются операторы:

· сложение и вычитание +, –

· умножение и деление *, /

· возведение в степень ^

 

Для указания порядка выполнения арифметических операторов следует использовать круглые скобки.

 

Для определения переменной необходимо набрать её имя, символ «=» и значение переменной. Имя переменной не должно совпадать с именами встроенных переменных и функций. Система различает большие и малые буквы в именах переменных.

Некоторые специальные переменные:

ans – результат последней операции без знака присваивания;

eps – относительная погрешность при вычислениях с плавающей точкой;

realmax – наибольшее положительное число с плавающей точкой;

realmin – наименьшее положительное число с плавающей точкой;

pi – число ;

i, j – мнимая единица;

Inf – бесконечность ;

NaN – неопределенное значение.

 

Уничтожить одну или несколько переменных можно с помощью команды clear. Например,

>> x=3

x =

>> clear x

>> x

??? Не определенная функция или переменная 'x'.

 

Функции, используемые в MATLAB, можно разделить на встроенные и определенные пользователем.

Некоторые встроенные элементарные функции:

sin (x), cos (x), tan (x), cot (x) – синус, косинус, тангенс, котангенс числа x;

sec (x), csc (x) – секанс, косеканс числа x;

asin (x), acos (x), atan (x), acot (x) – арксинус, арккосинус, арктангенс, арккотангенс числа x;

exp (x) – экспонента числа x;

log (x) – натуральный логарифм числа x;

log10 (x) – десятичный логарифм числа x;

log2 (x) – логарифм по основанию 2 числа x;

pow2 (x) – возведение числа 2 в степень числа x;

sqrt (x)– квадратный корень из числа x;

abs (x) – модуль числа x;

round (x) – округление числа x до ближайшего целого;

fix (x) – округление числа x до ближайшего целого в сторону нуля;

floor (x) – округление числа x до ближайшего целого в сторону отрицательной бесконечности;

ceil (x) – округление числа x до ближайшего целого в сторону положительной бесконечности;

mod (x,y) – остаток от целочисленного деления x на y с учетом знака;

rem (x,y) – остаток от целочисленного деления x на y;

sign (x) – возвращение знака числа x.

 

Вычислим значение выражение

>> exp(–2.5)*log(11.3)^0.3 – sqrt((sin(2.45*pi)+cos(3.78*pi))/tan(3.3))

ans =

–3.2105

Затем вычислим значение похожего выражения:

Для этого необязательно снова набирать его в командной строке. Для вычисления этого выражения, надо проделать шаги:

  1. Нажать клавишу «», при этом в командной строке появиться ранее введенное выражение;
  2. внести необходимые изменения в операциях;
  3. нажать «Enter».

>> exp(–2.5)*log(11.3)^0.3 + ((sin(2.45*pi)+cos(3.78*pi))/tan(3.3))^2

ans =

121.2446

Если оператор не удается разместить в одной строке, то возможно продолжение его ввода в следующей строке, если в конце первой строки указать знак продолжения «…», например, предыдущий пример можно выполнить в виде

>> exp(–2.5)*log(11.3)^0.3 +...

((sin(2.45*pi)+cos(3.78*pi))/tan(3.3))^2

ans =

121.2446

Найти значение выражения

>> x = sin(1.3*pi)/log(3.4);

>> y = sqrt(tan(2.75)/ cot(2.3));

>> z = (x+y)/(x-y)

z =

-0.013967

Знак «;» в конце строки означает подавления вывода на экран промежуточных значений.

 

Используя переменные x и y, найдем значение выражения

>> t = (x*y)^(3/2)

t =

-5.5344e-017 - 0.30128i

 

Большинство математических функций MATLAB предусматривает работу с комплексными аргументами.

Введем комплексное число :

>> z = 3 + 4i

z =

3.0000 + 4.0000i

Для вычисления комплексно-сопряженного числа применяется апостроф «’».

>> z1 = z'

z1 =

3.0000 - 4.0000i

 

Функции для работы с комплексными числами:

abs (z), angle (z) – модуль и аргумент комплексного числа , где , ;

complex( a, b ) – конструирует комплексное число по его действительной и мнимой части:

>> complex(2.3, 5.8)

ans =

2.3 + 5.8i

conj (z)– возвращает комплексно-сопряженное число;

imag (z), real (z) – возвращает мнимую и действительную часть комплексного числа.

3. Векторы.

Ввод, сложение, вычитание, умножение на число.

Вектор в MATLAB формируется с помощью оператора квадратные скобки [ ]. При этом элементы вектора - столбца разделяют точкой с запятой «;», а элементы вектора – строки разделяют пробелом «» или запятой «,».

Введем вектор-столбец .

>> x = [1.3; 5.4; 6.9]

x =

1.3

5.4

6.9

Введем вектор-строку .

>> y = [7.1 3.5 8.2]

y =

7.1 3.5 8.2

Для транспонирования вектора применяют апостроф «’»:

>> z = y’

z =

7.1

3.5

8.2

Для нахождения суммы и разности векторов используются знаки «+» и «–»:

>> с = x + z

c =

8.4

8.9

15.1

Умножение вектора на число осуществляется как справа, так и слева при помощи знака «*».

>> t = 3*x

t =

3.9

16.2

20.7

Векторы могут быть аргументами встроенных функций, например,

>> d = sin(c)

d =

0.8546

0.50102

0.5712

Для обращения к элементам векторов используется индексация, например,

>> h = x(2)

h =

5.4

Из элементов вектора можно составить новый вектор, например

>> g = [x(2) x(3) x(1)]

g =

5.4 6.9 1.3

Из нескольких векторов-столбцов можно составить один, например

>> t = [x; z]

t =

1.3

5.4

6.9

7.1

3.5

8.2

Из нескольких векторов-строк можно составить одну строку, например

>> r = [x’ y]

r =

1.3 5.4 6.9 7.1 3.5 8.2

 

Символ двоеточие «:» используется для выделения элементов из вектора

>> w = r(3:5)

w =

6.9 7.1 3.5

Символ двоеточие «:» также позволяет заменять элементы вектора, например,

>> r(3:5)= 0

r =

1.3 5.4 0 0 0 8.2

 

Символ «:» также можно использовать для построения вектора, каждый элемент которого отличается от предыдущего на постоянное число, т.е. шаг, например

>> h = [1:0.2:2]

h =

1 1.2 1.4 1.6 1.8 2

Шаг может быть отрицательным (в этом случае начальное число должно быть больше конечного).

Шаг, равный единице, можно не указывать

>> k = [1:5]

k =

1 2 3 4 5

 

Поэлементные операции с векторами.

Операции «.*», «.^», «./» приводят к поэлементному умножению, поэлементному возведению в степень, поэлементному делению двух векторов.

Для того чтобы, к каждому элементу вектора прибавить одно и тоже число используется знак «+», для вычитания из элементов вектора одного и того числа используется знак «–».

Разделить элементы вектора на число можно при помощи знака «/».

Деление числа на вектор, осуществляется с помощью операции «./».

 

Пример.

Даны векторы

, , ,

Выполните команды, опуская знак «;» в конце выражения.

>> v1 = [2 –3 4 1];

 

>> v2 = [7 5 –6 9];

 

>> p = [4 6 8 10];

 

>> f = [4 2 6];

 

>> s1 = v1.*v2;

 

>> s2 = v1.^2;

 

>> s3 = v1.^v2;

 

>> s4 = v1./v2;

 

>> a = p + 1.2;

 

>> b = p – 1.2;

 

>> p = p/2;

 

>> df = 12./f;

 

Основные функции для работы с векторами.

  • length( z ) – определение длины вектора;
  • prod( z ) – перемножение всех элементов вектора;
  • sum( z ) – суммирование всех элементов вектора;
  • mean( z ) – вычисление среднего арифметического элементов вектора;
  • sort( z ) – упорядочение вектора по возрастанию его элементов;
  • max( z ) – нахождение максимального элемента;
  • min( z ) – нахождение минимального элемента.

Если вызвать функцию min или max с двумя выходными аргументами [m, k] = min(z),

то первой переменной присваивается значение минимального (максимального элемента), а второй переменной присваивается номер этого элемента.

 

Пример.

Дан вектор

,

Выполните команды, опуская знак «;» в конце выражения.

>> z = [3; 2; 1; 4; 6; 5];

 

>> l = length(z);

 

>> p = prod(z);

 

>> s = sum(z);

 

>> q = mean(z);

 

>> M = max(z);

 

>> m = min(z);

 

>> [m, k] = min(z);

 

>> sr = sort(z);

4. Матрицы.

Различные способы ввода матрицы.

1. Матрицу можно вводить как вектор-столбец, состоящий из двух элементов, каждый из которых является вектор - строкой и отделяется точкой с запятой. Например, введем матрицу

>> A = [3 1 –1; 2 4 3 ]

A =

3 1 –1

2 4 3

 

2. Матрицу можно вводить построчно, выполняя последовательность команд:

>> A = [3 1 –1

«Enter»

2 4 3]

«Enter»

В результате получим ту же матрицу.

 

3. Матрицу можно составить из блоков, например

>> A = [ [3;2] [1;4] [-1;3]]

или

>> A = [ [3 1;2 4] [-1;3]]

 

Доступ к элементам матрицы осуществляется при помощи двух индексов – номеров строки и столбца:

>> A (2, 3)

ans =

Создание матриц специального вида.

Функция

  • zeros (m,n) формирует нулевую матрицу размера ;
  • eye (n) формирует единичную матрицу размера ;
  • ones (m,n) формирует матрицу размера из единиц;
  • rand (m,n) создает матрицу размера из случайных чисел.

 

Пример.

Выполните команды, опуская знак «;» в конце выражения.

>> O = zeros(3, 6);

 

>> E = eye(4);

 

>> E = eye(8,4);

 

>> EI = ones(3, 8);

 

>> R = rand(3,5)

 

Функция diag (d) формирует диагональную матрицу из вектора d, например

>> d = [1; 2; 3; 4];

>> D = diag(d)

D =

1 0 0 0

0 2 0 0

0 0 3 0

0 0 0 4

 

Функция diag( A ) служит также для выделения диагонали матрицы A в вектор, например

>> A = [10 1 2; 1 20 3; 2 3 30];

>> d = diag(A)

 

d =

 

Выделение блоков и заполнение матрицы при помощи индексации.

Символ двоеточие «:» используется для выделения блоков из матрицы.

Представляется в следующих формах:

  • M(i,:) – выбирается i-я строка из матрицы M;
  • M(:, j) – выбирается j-й столбец из матрицы M;
  • M(:) – представление матрицы M в виде столбца;
  • M(k:l, n:m) – выбирается блок из матрицы M, ограниченный элементами , , , ;
  • Команда M(k:l, n:m) = число заменяет элементы блока матрицы M;
  • Команда M(i,:) = [] удаляет i-ю строку из матрицы M;
  • Команда M(:, j) = [] удаляет j-й столбец из матрицы M;

 

Пример.

Дана матрица

Выполните команды, опуская знак «;» в конце выражения.

>> P = [5 2 1 3; 3 -1 1 2; 1 2 4 8; 3 -1 1 2];

 

>> P1 = P(2:3, 2:3);

 

>> P(2:3,2:3)=0;

 

>> st = P(2,:);

 

>> rt = P(2, 2:end);

 

>> P(1,:) = [];

 

Пример.

Создать матрицу .

Для этого применяем последовательность команд

>> T = zeros(5);

>> T(1,:) = 1;

>> T(end, 3:end) = –1

T =

1 1 1 1 1

0 0 0 0 0

0 0 0 0 0

0 0 0 0 0

0 0 –1 –1 –1

Действиями с матрицами и элементами матриц.

Транспонирование матрицы из действительных чисел осуществляется с помощью апострофа «’».

Сложение и вычитание матриц одного размера осуществляется при помощи знаков «+» и

«–».

Для умножения согласованных матриц используется знак «*». Этот же знак используется для произведения матрицы на число.

Возведение квадратной матрицы в целую степень производится с использованием оператора «^».

Операторы «.*», «./», «.^» служат для умножения, деления, возведения в степень каждого элемента одной матрицы на соответствующий элемент другой матрицы. Символы «.^» служит также для возведения каждого элемента матрицы в степень.

 

 

Пример.

Даны матрицы

и .

Выполните команды, опуская знак «;» в конце выражения.

 

>> A = [2 5 –1; 3 4 9];

 

>> B = [–1 2 8; 7 –3 –5];

 

>> S = A+B;

 

>> R = A – B;

 

>> A’;

 

>> D = A*A’;

 

>> D1 = D*3;

 

>> С = A.*B;

 

>> Q = A./B;

 

>> P = A.^B;

 

>> D = A.^2;

 

Некоторые функции для работы с матрицами.

Функция

  • size( M ) определяет размер матрицы M;
  • sum( M ) суммирует элементы матрицы M по столбцам;
  • sum( M, 2 ) суммирует элементы матрицы M по строкам;
  • prod( M ) находит произведения элементов матрицыM по столбцам;
  • prod( M,2 ) находит произведения элементов матрицыM по строкам;
  • sort( M ) упорядочивает элементы каждого столбца матрицы M в порядке возрастания;
  • sort( M, 2 ) упорядочивает элементы каждой строки матрицы M в порядке возрастания;
  • max( M ) формирует вектор - строку, содержащую максимальные элементы в столбцах матрицы M;
  • min( M ) формирует вектор - строку, содержащую минимальные элементы в столбцах матрицы M;
  • max (M, [], 2) формирует вектор - столбец, содержащий максимальные элементы в строках матрицы M;
  • min (M, [], 2) формирует вектор - столбец, содержащий минимальные элементы в строках матрицы M;
  • rot90 (M) осуществляет поворот матрицы M на ;
  • tril (M) формирует из матрицы M нижнюю треугольную матрицу, начиная с главной диагонали;
  • triu (M) формирует из матрицы M верхнюю треугольную матрицу, начиная с главной диагонали;

 

Пример.

Дана матрица

.

Выполните команды, опуская знак «;» в конце выражения.

>> M = [1 –2 –4; 3 –6 4; 2 –2 0];

 

>> SZ = size(M);

 

>> S = sum(M);

 

>> S2 = sum(M, 2);

 

>> P = prod(M);

 

>> P2 = prod (M,2);

 

>> mx = max(M);

 

>> mn = min(M);

 

>> MX = max(M, [], 2);

 

>> MN = min(M, [], 2);

Операции отношения и логические операции.

Операторы отношения производят поэлементное сравнение двух матриц и возвращают матрицу той же размерности с элементами 1, где отношение истинно и 0, где отношение ложно:

 

< – меньше чем (<= означает "меньше или равно");

> – больше чем (>= означает "больше или равно").

 

Логические операции осуществляются с помощью операторов:

= = – логический оператор эквивалентности;

& – логическое "И".

A & B – это матрица, элементы которой равны 1, если соответствующие элементы и A и B ненулевые, иначе равны 0;

| – логическое "ИЛИ".

A | B – это матрица, элементы которой равны 1, если соответствующие элементы или A или B ненулевые, иначе равны 0;

~= – логическое дополнение "НЕ" (~= означает не "равно").

Пример.

Даны матрицы

,

Выполните команды, опуская знак «;» в конце выражения.

>> A = [1 2 3; 4 0 6; 7 1 9];

 

>> В = [1 0 -1; 0 0 -6; 1 2 9];

 

>> D1 = A>B;

 

>> D2 =A<=B;

 

>> D3 = A&B;

 

>> D4 = A==B;

 

Поделиться:





Воспользуйтесь поиском по сайту:



©2015 - 2024 megalektsii.ru Все авторские права принадлежат авторам лекционных материалов. Обратная связь с нами...