Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Tema5.doc
Скачиваний:
1
Добавлен:
01.04.2025
Размер:
210.94 Кб
Скачать

Примеры: a) Найти функции линейной алгебры. Открываем последовательность окон:

HELP – MATLAB Help - Finding Functions and Properties - Matlab Functions Listed by Category – Mathematics –- Linear Algebra

b) Найти графические функции для построения графиков:

HELP – MATLAB Help - Finding Functions and Properties - Matlab Functions Listed by Category- Graphics – Basic Plots and Graphs.

3. Еще один способ получить информацию о системе MATLAB – обращение к Web-серверу фирмы The MathWorks.

5.2 Задачи линейной алгебры, вычисление функций и построение графиков

Система MATLAB ориентирована на работу с массивами и основные задачи линейной алгебры представляются в этой системе в экономной форме. Ниже рассмотрены некоторые типичные задачи линейной алгебры и их программная реализация.

Пример1. Умножить вектор на вектор .

Как известно при умножении векторов первый вектор должен быть строкой, а второй – вектором-столбцом и они должны иметь одинаковые размерности. Поэтому решение записывается в виде

a = [1 2 4]

b = [2; -1; 3]

c = a*b

Или

a = [1 2 4]

b = [2 -1 3]′

c = a*b

% Ответ: с = 12.

PS: Если записать b = [2 -1 3], то расчет не выполняется, т.к. b будет интерпретирован как вектор-строка.

Пример2. Умножить матрицу на матрицу .

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

a = [2 0 3; 1 1 2];

b = [1 3; 2 1; 1 0];

c = a*b

На экране появится:

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

В матричной форме эта система примет вид: А*x = B, где:

Тогда решение запишется в виде:

A=[2 1 -1; 1 –1 0; 1 -1 2] % задаем матрицу коэффициентов при неизвестных

B=[11; 2; 6] % задаем вектор свободных членов

X=A\B % решение системы (Ответ: х1 =5, х2 = 3, x3 = 2)

Символ \ применяется для решения систем линейных уравнений АХ=В.

Пример 4. Для матрицы А (см. пример 3) найти детерминант и обратную матрицу (A-1) и сосчитать произведение E = AA-1. Решение:

A = [2 1 -1; 1 –1 0; 1 -1 2]

C = det(A) %det – функция вычисляет детерминант заданной матрицы

D = inv(A) %inv - функция вычисляет матрицу, обратную заданной

E = A*D

Ответ: С = -6; E = 1.0000 0 0

0.0000 1.0000 0.0000

0.0000 -0.0000 1.0000

В математических моделях часто требуется вычислить значения выражений типа y = f(x) при различных значениях x а затем представить эти зависимости в графической форме. В системе MATLAB такие задачи решаются просто. Ниже приведены примеры.

Пример 5. В интервале х =[03] вычислить значения:

y = ex и z = 1 + x + x2/2 + x3/6 + x4/24

для равномерно расположенных 31 точек. Построить зависимости y = f(x) и z = f(x) на одном графике (декартовые координаты). Значения x, y, z на экран не выводить.

Решение запишется в виде:

x = (0 : 0.1 : 3)'; задаем значения х в интервале от 0 до 3 с шагом 0.1

y = exp(x); вычисляем значения вектора у

z = 1.0 +x + (x.^2)/2 + (x.^3)/6 - (x.^4)/24; вычисляем значения вектора z

figure открываем графическое окно

plot(x,y,' –g ',x,z,' –k ' ) строим график функции y = cos(x)

xlabel(' coordinata x ') даем название для оси x

ylabel(' coordinata y ’) даем название для оси y

title(' y=exp(x) '); даем заголовок для графика

Пример 6. В интервале х = [010] вычислить значения y = 0,5ln(x + 1) для равномерно расположенных 101 точек. Построить зависимость y = f(x) в полярных координатах.

x = (0 : pi/10 : 10*pi)’;

y = 0.5*log(x + 1);

figure

polar(x, y); строим график функции y = 0,5ln(x+1)

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

Пример 7. Построить поверхность при х = -1 до +1 с шагом 0,2 и при y = -1 до +1 с шагом 0,2.

Решение задачи:

[x, y]=meshgrid([-1:0.2:1]);

z=x.*exp(-x.^2 - y.^2);

figure

mesh(x,y,z);

figure

surf(x,y,z);

PS: графические функции описаны выше в разделе “Некоторые графические функции”.

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