Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лекция 2 Матрицы_ Решение систем линейных уравн....doc
Скачиваний:
4
Добавлен:
17.07.2019
Размер:
89.09 Кб
Скачать

2). Встроенные функции

X=[1 2 3]

Y1 = log(X)%returns the natural logarithm of the elements of X.

Y2 = log2(X)%computes the base 2 logarithm of the elements of X.

Y3 = log10(X) %returns the base 10 logarithm of the elements of X.

Y4 = exp(X) %returns the exponential for each element of X.

Y5=sqrt(X)%корень квадратный из элементов матрицы (вектора)

%Матрицы

Z=[10 25 34;15 36 27;18 11 37]

Y1 = log(Z)

Y5=sqrt(Z)

3).Функции обработки матриц

A=[1 -2 4;5 -6 7;-8 1 3]

abs(A) %модуль

det(A) %определитель матрицы

Inv(a) %обратная матрица

diag(A) %главная диагональ матрицы

sum(A) %сумма по столбцам (sum(A,1))

sum(A,2) %сумма по строкам

sum(diag(A)) %сумма элементов главной диагонали матрицы (след)

trace(A) % след матрицы

S=sum(sum(A))%сумма матрицы

prod(A,1)%произведение элементов массива в столбцах (по умолчанию prod(C))

prod(A,2)%произведение элементов массива в строках

A' %транспонирование матрицы

sum(A') %сумма столбцов транспонированной матрицы (аналог sum(A,2) вектор-строка)

sum(A')' %аналог sum(A,1) вектор-столбец

ndims(A) %размерность массива

size(A) %размер массива

%вектор A хранится в двумерном массиве размерностью три на три.

length(X) %длина вектора

4).Округление до целого

F=[2.123 -4.999 7.513 3.001]

fix(F) %Отсекает дробную часть без округления

round(F) %Округляет число до целого по всем правилам округления

floor(F) %Округляет до меньшего целого

ceil(F) %Округляет до большого целого

5).Тригонометрические функции

sin(F)

cos(F)

tan(pi/4)

cot(pi/4)

----------------------------------

Решение систем линейных уравнений

Способ 1

1).Решение систем линейных уравнений методом обратной матрицы

%Рекомендации:

% Bектор B задавать вектором-столбцом;

% Доступны формулы X=A\B; X=(A^-1)*B; X=inv(A)*B;

% Вектор решений должен возвращаться как вектор-столбец.

%система 3-х уравнений с 3 неизвестными 2x-y+5z=14; x-3y+4z=9; 3x+y-7z=-20;

%правильный ответ X=0 Y=1 Z=3

disp('вектор решения по трем формулам для СЛУ-1 с 3 неизвестными')

a=[2 -1 5;1 -3 4;3 1 -7] %матрица коэффициентов

b=[14;9;-20] %вектор свободных членов

% 1-й способ

x1=a\b

% 2-й способ

x2=inv(a)*b

% 3-й способ

x3=a^(-1)*b

%Ответ: получен вектор-столбец решения X=[0; 1; 3],

%следовательно, X=0; Y=1; Z=3;

%Проверка: A*X=b

a*x1

Способ 2

2).Решение систем алгебраических уравнений в символьном виде функция solve

1 Система двух уравнений с двумя неизвестными

syms x y; % описание переменных в символьном виде

S=solve('x+y=3','x*y^2=4',x,y) % выдает только количество корней (нет ; в конце ввода)

S.x % распечатка корней

S.y

%Ответ:(1; 2) или (4; -1)

%если в функциях нет знака равенства, то по умолчанию считается =0

syms x y;

t=solve('2*x+5*y-26','3*x-y-5',x,y)

t.x %печатает x и y

t.y

2 Система трех уравнений с тремя неизвестными

syms x y z;

d=solve('2*x+5*y-z=15','x-2*y+3*z=2','3*x+y-2*z=9',x,y,z)

%чтобы переменная d не распечатывала количество ответов, поставьте ;

%распечатать значения корней нужно так:

d.x

d.y

d.z

%

%если функция в апострофах, то находятся корни уравнения,

%если функция без апострофов и/или знаков =, то находятся нули функции, что дает один и тот же результат разными способами

syms x y z;

d=solve(2*x+5*y-z-15,x-2*y+3*z-2,3*x+y-2*z-9,x,y,z)

d.x

d.y

d.z