Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
практическая работа МатЛАБ 2016.doc
Скачиваний:
0
Добавлен:
01.07.2025
Размер:
155.14 Кб
Скачать

Практическая работа в МатЛаб

Работа с научным калькулятором

  1. Запустить МатЛаб

>> a = [1 2 3 4 6 4 3 4 5], // создаем простой вектор из 9 элементов

a =

1 2 3 4 6 4 3 4 5 //значения этого вектора

>> b = a + 2, // создается переменный вектор В, который равен b = a + 2

b =

3 4 5 6 8 6 5 6 7 // Значения этого вектора

Чтобы создать график в MATLAB часто достаточно одной команды. Например, изобразим график результата сложения векторов, в поле с координатной сеткой

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

>> b = a + 2;

>> plot(b)

>> grid

Так же легко MATLAB может создать другие типы графиков: графики, с осями координат, графики с подписанными осями.

>> bar(b),

Область, в которой MATLAB особенно эффективен - это операции, с матрицами. Создать матрицу также просто, как создать вектор, используя, очку с запятой ";" для разделения рядов матрицы.

>> A = [1 2 0; 2 5 -1; 4 10 -1]

A =

1 2 0

2 5 -1

4 10 -1

>> B = [1 2 3; 4 5 6; 7 8 9]

B =

1 2 3

4 5 6

7 8 9

Перемножим по-элементно (.*)

>> C=A.*B

C =

1 4 0

8 25 -6

28 80 -9

Возможен ввод элементов матриц и векторов в виде арифметических выражений, содержащих любые доступные системе функции, например:

>> V=[1 2 3]

>> V= [2+2/(3+4) exp(5) sqrt(10)]

V = 2.2857 148.4132 3.1623

Для указания отдельного элемента вектора или матрицы используются выражения вида V(1) или M(i, j). Например, если задать

>> m=[10 20 30; 40 50 60; 70 80 90]

m =

10 20 30

40 50 60

70 80 90

Т.е. матрица оформляется как пересечение строки и столбца

1

2

3

1

10

20

30

2

40

50

60

3

70

80

90

>> m(1,1)

ans = 10

>> m(3,2)

ans = 80

>> m(1,3)

ans = 30

Например, если элементу m(2, 2) надо присвоить значение -6, следует записать 

» m(2,2)=-6

Выражение А(:) — записывает все элементы массива А в виде столбца.

>> m(:)

Выражение М( i) с одним индексом дает доступ к элементам матрицы, развернутым в один столбец. Такая матрица образуется из исходной, если подряд выписать ее столбцы.

Было

Стало

10 20 30

40 50 60

70 -6 90

10

40

70

20

50

-6

30

60

90

> m(3)

ans = 70

>> m(4)

ans = 20

>> m(6)

ans = -6

>> m(8)=100

m =

10 20 30

40 50 100

70 -6 90

Удаление столбцов и строк матриц

Для формирования матриц и выполнения ряда матричных операций возникает необходимость удаления отдельных столбцов и строк матрицы. Для этого используются пустые квадратные скобки [ ]. Удалим второй столбец используя оператор : (двоеточие): 

>> m(:,2)=[]

m =

10 30

40 100

70 90

А теперь, используя оператор : (двоеточие), удалим вторую строку:

>> m(2,:)=[]

m =

10 30

70 90

Суммирование элементов

Определены следующие функции суммирования элементов массивов:

  • sum(A) — возвращает сумму элементов массива, если А — вектор, или вектор-строку, содержащую сумму элементов каждого столбца, если А — матрица;

  • sum(A.dim) — возвращает сумму элементов массива по столбцам (dim-1), строкам (dim=2) или иным размерностям в зависимости от значения скаляра dim.

Пример:

» A=magic(4)

А =

16    2

3

13

5    11

10

8

9     7

6

12

4     14

15

1

»B=sum(A)

В =

34     34     34     34

  • cumsum(A) — выполняет суммирование с накоплением. Если А — вектор, cumsum(A) возвращает вектор, содержащий результаты суммирования с накоплением элементов вектора А. Если А — матрица, cumsum(A) возвращает матрицу того же размера, что и А, содержащую суммирование с накоплением для каждого столбца матрицы А;

  • cumsum(A.dim) — выполняет суммирование с накоплением элементов по размерности, определенной скаляром dim. Например, cumsum(A.l) выполняет суммирование по столбцам.

Пример:

» A=magic(4)

А =

16     2     3     13 

5     11     10     8 

9     7     6     12 

4     14     15     1

» В = cumsum(A)

В =

16     2     3     13 

21     13     13     21 

30     20     19     33 

34     34     34     34