Приложение

Некоторые функции системы MATLAB

В системе MATLAB вместо пробелов между символами можно ставить запятые, а столбцы можно записывать следующим образом:

{a b c d} = [a; b; c; d] = [a b c d]΄.

Столбцевые и строчные матрицы называются в математике векторами.

r = s33(r) =[0 z y;z 0 x; y x 0]

— кососимметрическая (3×3)-матрица

~

 

вектора r ; function ~r = s33(r)

% M-функция вектора r = [x y z], возвращает ~r :

~r =[cross(r,[1 0 0]);cross(r,[01 0]);cross(r,[0 01])];

rˆ = s36(r) =[s33(r),eye(3)] — прямоугольная 3×6-матрица для вектора r . function rˆ = s36(r)

% М-функция, возвращающая матрицу rˆ :

rˆ =[ cross(r,[10 0]), cross(r, [010]), cross(r, [0 01]), eye(3)],

We = se33(w,e) — матрица третьего порядка для угловой скорости ω и угло-

вого ускорения ε: function s = se33(w,e)

s=s33(w)^2+s33(e);

findsym(S) — функция создания списка символьных величин из выражения; syms a b c r Dr D2r x y real— пример списка символьных переменных, которые встречаются в системе дифференциальных уравнений;

A = [a11 a12 a13; a21 a22 a23; a31 a32 a33] — матрица размера (3×3);

{V} = – A \ {B} — решение алгебраической матричной системы A{V} + {B} = 0 методом левого деления, где {V} и {B} — вектор-столбцы; V = B / A — решение алгебраической системы VA + B = 0 методом правого деления, либо левого деления V = – (A΄\B΄)΄; здесь V и B — вектор-строки; A^2 — возведение матрицы в квадрат;

inv(A) — обратная матрица;

eig(A) — столбец собственных значений матрицы (корней характеристического уравнения det(EλA) = 0);

det(A) — детерминант квадратной матрицы; A(3, :) = [ ] — удаление третьей строки матрицы;

A(3, :) — сохранение только третьей строки матрицы;

V1 = A(1, :) — сохранение только первой строки матрицы A, т.е. выделение первой вектора-строки;

A(:, 2) = [ ] — удаление второго столбца матрицы; A(:, 2) — сохранение только второго столбца матрицы;

[R, D] = eig(A) — составление матрицы из столбцов — собственных векторов и диагональной матрицы с диагональю из собственных значений, матрицы удовлетворяют уравнению AR = RD;

112

simplify(S) — функция упрощения выражения S, например — построчного представления левой части матричного дифференциального уравнения; simple(S) — функция упрощения с промежуточными результатами;

poly(A) — строка коэффициентов [p1, ..., pn+1] характеристического полинома p(λ) = det(EλA);

diff(S, ΄x ΄) — производная по x от функции S; diff(S, ΄x ΄, 2) — вторая производная по x от S; int(S, ΄x ΄) — неопределенный интеграл от S по x;

int(S, ΄x ΄, a, b) — определенный интеграл в пределах от a до b; syms x k h real

dsolveD2x + k^2*xh΄) — общее решение символьного линейного

..

дифференциального уравнения вида x+k2 x h = 0 ; syms x y k h x0 v0 real

dsolveD2x + k^2*xh΄, ΄x(0) = x0 ΄, ΄Dx(0) = v0 ΄) — решение символьного дифференциального уравнения с символьными начальными условиями; subs(S, NEW) — выполняет подстановку в функцию S выражений символьных переменных из списка NEW;

[t, y] = ode45(΄строка прав. частей ОДУ΄, [t0 tfinal], y(0)) — численное интег-

рирование ОДУ, представленных в нормальной форме Коши dydt = f ( y, t) , где

f — вектор-функция;

zeros(1, n) — матрица-строка из нулей размера (1×n); zeros(n, 1) — матрица-столбец из нулей размера (n×1);

eye(n) — квадратная матрица порядка n с единицами на главной диагонали и нулями вне диагонали;

diag(x) — квадратная матрица с вектором x на главной диагонали;

A = [A1, A2, ..., AN] — горизонтальная конкатенация (сцепление) нескольких прямоугольных и квадратных матриц-блоков, имеющих равное количество строк, в одну матрицу A;

A = [A1; A2; ...; AN] — вертикальная конкатенация нескольких матриц с равным количеством столбцов.

113