51074

Применение ЭВМ в электроэнергетических расчетах

Лабораторная работа

Информатика, кибернетика и программирование

Знакомство с возможностями системы MATLAB: освоение навыков работы с матрицами в пакете MATLAB. Применение ЭВМ в электроэнергетических расчетах

Русский

2014-02-10

226.5 KB

4 чел.

Федеральное агентство по образованию

Государственное образовательное учреждение высшего

профессионального образования

Тульский государственный университет

Кафедра  Электроэнергетика

Применение ЭВМ в электроэнергетических расчетах

Лабораторная работа №6

Основные навыки работы с матрицами в пакете MatLab.

Направление подготовки:  

140200 – «Электроэнергетика»

Форма обучения (очная)

Тула 2010 г.


  1.  Цель работы:

Знакомство с возможностями системы MATLAB: освоение навыков работы с матрицами в пакете MATLAB.

  1.  Теоретические сведения, необходимые для выполнения работы
    1.  Перестановки элементов матрицы.

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

  •  B = fliplr(A) – зеркально переставляет столбцы матрицы А относительно вертикальной оси.

Пример:

>> F=[1,2,3,;5,45,3]

F =

    1     2     3

    5    45     3

>> fliplr(F)

ans =

    3     2     1

    3    45     5

  •  B = flipud(A) – зеркально переставляет строки матрицы А относительно горизонтальной оси.

Пример:

>> F=[3,2,12;6,3,2]

F =

    3     2    12

    6     3     2

>> flipud(F)

ans =

    6     3     2

    3     2    12

  •  perms(v) – возвращает матрицу P, которая содержит все возможные перестановки элементов вектора v, каждая перестановка в отдельной строке. Матрица P содержит n! строк и n столбцов.

Пример:

>> v=[1 4 6]

v =

    1     4     6

>> P=perms(v)

P =

    6     4     1

    6     1     4

    4     6     1

    4     1     6

    1     4     6

  1.      6     4
    1.  Вычисление произведений

Несколько простых функций служат для перемножения элементов массивов:

  •  prod(A) – возвращает произведение элементов массива, если А – вектор, или вектор-строку, содержащую произведения элементов каждого столбца, если А – матрица;
  •  prod(A, dim) – возвращает матрицу (массив размерности два) с произведением элементов массива А по столбцам (dim=1), по строкам (dim=2), по иным размерностям в зависимости от значения скаляра dim.

Пример:

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

A =

    1     2     3     4

    2     4     5     7

    6     8     3     4

>> B=prod(A)

B =

   12    64    45   112

  •  cumprod(A) – возвращает произведение с накоплением. Если А – вектор, cumprod(A) возвращает вектор, содержащий произведения с накоплением элементов вектора А. Если А – матрица, cumprod(A) возвращает матрицу того же размера, что и А, содержащую произведения с накоплением для каждого столбца матрицы А. (Первая сторока без изменения, во второй строке произведение первых двух элементов каждого столбца, в третьей строке элементы второй строки матрицы-результата умножаются на элементы третьей строки матрицы входного элемента и т.д.).
  •  cumprod(A,dim) – возвращает произведение с накоплением элементов по строкам или столбцам матрицы в зависимости от значения скаляра dim. Например, cumprod(A, 1) дает прирост первому индексу (номеру строки), таким образом выполняя умножение по столбцам матрицы А.

Примеры:

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

A =

    1     2     3

    4     5     6

    7     8     9

>> B=cumprod(A)

B =

    1     2     3

    4    10    18

   28    80   162

>> B=cumprod(A,1)

B =

    1     2     3

    4    10    18

   28    80   162

  •  cross (U,V) – возвращает векторное произведение U и V в техмерном пространстве, т.е. . U и V – обязательные векторы с тремя элементами;
  •  cross (U,V,dim) – возвращает векторное произведение U и V по размерности, определенной скаляром  dim. U и V – многомерные массивы, которые должны иметь одну и ту же размерность, причем размер векторов в каждой размерности size(U,dim) и size(V,dim) должен быть равен 3.

Пример:

>> a=[6 5 3]; b=[1 7 6]; c=cross(a,b)

c =

  1.    -33    37
    1.  Суммирование элементов

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

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

Пример:

>> A=magic(4)

A =

   16     2     3    13

    5    11    10     8

    9     7     6    12

    4    14    15     1

>> B=sum(A)

B =

   34    34    34    34

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

Пример:

>> A=magic(4)

A =

   16     2     3    13

    5    11    10     8

    9     7     6    12

    4    14    15     1

>> B=cumsum(A)

B =

   16     2     3    13

   21    13    13    21

   30    20    19    33

  1.    34    34    34
    1.  Функции формирования матриц

Для создания матриц, состящих из других матриц, используются следующие функции:

  •  repmat(A,m,n) – возвращает матрицу В, состоящую из  каждый элемент заменяется на копию матрицы (А);
  •  repmat(A,n) – формирует матрицу, состоящую из  копий матрицы А;
  •  repmat(A,[m n]) – дает тот же результат, что и repmat(A,m,n);
  •  repmat(A,[m n p…]) – возвращает многомерный массив ), состоящий из копий многомерного массива или матрицы А;
  •  repmat(A,m,n) –когда А – скаляр, возвращает матрицу размера  со значениями элементом, заданных А. Это делается намного быстрее, чем .

Пример:

>> F=[3,2;43,32]

F =

    3     2

   43    32

>> repmat(F,2,3)

ans =

    3     2       3      2      3      2

   43    32    43    32    43    32

    3     2       3      2      3      2

   43    32    43    32    43    32

  •  reshape (A,m,n) – возвращает матрицу В размерностью , сформированную из А путем последовательной выборки по столбцам. Если число элементов А не равно , то выдается сообщение об ошибке;
  •  reshape (A,m,n,p,…) или В = reshape (A,[m n p…]) – возвращает N-мерный массив с элементами из А, но имеющий размер  Прозведение  должно быть равно значению prod(size(A)).
  •  reshape (A,siz) – возвращает N-мерный массив с элементами из А, но перестроенный к размеру, заданному с помощьювектора siz.

Пример:

>> F=[3,2,7,4;4,3,3,2;2,2,5,6]

F =

    3     2     7     4

    4     3     3     2

    2     2     5     6

>> reshape(F,2,6)

ans =

    3     2     3     7     5     2

    4     2     2     3     4     6

  1.  Поворот матрицы

Следующая функция обеспечивает поворот матрицы (по расположению элементов):

  •  rot90(A) – осуществляет поворот матрицы А на 900 против часовой стрелки;
  •  rot90(A,k) – осуществляет поворот матрицы А на величину 90*k градусов, где k – целое число.

Пример:

>> M=[3,2,7;3,3,2;1,1,1]

M =

    3     2     7

    3     3     2

    1     1     1

>> rot90(M)

ans =

    7     2     1

    2     3     1

    3     3     1

  1.  Задание:
    1.  Переставьте элементы матрицы.

1

[1  4  5]

11

[1  7  5  9]

21

[1  1  5]

2

[2  4  6  7]

12

[0  3  5]

22

[1  4  9  5]

3

[3  3  5]

13

[1  3  8]

23

[1  2  8]

4

[0  4  5]

14

[0  1  5  8]

24

[1  3  6  6]

5

[3  7  5  8]

15

[1  0  6]

25

[4  7  5  5]

6

[1  4  5]

16

[3  4  5]

26

[1  0  8]

7

[0  3  5  8]

17

[2  3  7  4]

27

[1  2  5  7]

8

[6  4  5]

18

[1  6  5]

28

[0  3  9]

9

[0  3  5]

19

[8  4  4]

29

[2  4  3]

10

[4  4  5]

20

[4  7  5  5]

30

[9  6  5  7]

  1.  Вычислите произведения матриц.

1

[1 4 5; 5 6 7; 5 4 12]

16

[9 7 8; 6 8 7; 0 8 2]

2

[3 8 7; 3 7 9; 8 6 4]

17

[10 4 5; 5 9 7; 5 5 0]

3

[6 6 4; 4 8 7; 4 7 6]

18

[4 7 9; 9 6 5; 6 4 3]

4

[1 1 3; 2 8 1; 5 3 3]

19

[1 4 5; 8 3 7; 5 7 0]

5

[4 2 5; 5 4 7; 7 2 1]

20

[12 6 7; 15 0 11; 6 4 1]

6

[6 3 9; 8 9 9; 5 8 0]

21

[16 0 3; 9 4 9; 5 9 1]

7

[8 5 6; 0 7 7; 6 9 7]

22

[6 0 9; 8 7 9; 5 8 1]

8

[9 7 3; 5 8 8; 3 6 9]

23

[7 3 8; 17 9 9; 5 8 4]

9

[6 10 4 ; 1 6 0; 5 4 3]

24

[5 3 9; 8 7 7; 15 9 0]

10

[7 13 2 ; 1 5 1; 7 4 4]

25

[4 3 9; 7 9 9; 5 8 4]

11

[2 4 5; 15 6 7; 5 4 0]

26

[6 7 9; 6 5 8; 5 5 2]

12

[1 5 5; 5 7 8; 4 5 6]

27

[4 3 6; 8 9 7; 7 8 1]

13

[0 4 1; 4 6 7; 5 8 3]

28

[5 3 9; 8 7 9; 5 7 0]

14

[5 4 4; 7 5 9; 3 5 0]

29

[6 3 9; 7 6 9; 8 8 0]

15

[7 2 6; 12 6 12; 5 4 3]

30

[4 3 9; 8 9 9; 5 5 0]

  1.  Сложите элементы

1

21

11

1

21

11

2

22

12

2

22

12

3

23

13

3

23

13

4

24

14

4

24

14

5

25

15

5

25

15

6

26

16

6

26

16

7

27

17

7

27

17

8

28

18

8

28

18

9

29

19

9

29

19

10

30

20

10

30

20

  1.  Сформируйте матрицы

1

21        13

22        14

repmat(A,m,n)

6

  1.  34

2          0

repmat(A,m,n)

11

11         11

12         12

repmat(A,[m n])

2

23         45

24         4

repmat(A,m)

7

  1.  2

4         9

repmat(A,[m n])

12

13          5

14          0

repmat(A,m)

3

25          5

26          6

repmat(A,[m n])

8

5         13

6         14

reshape (A,siz)

13

15          8

16          9

reshape(A,m,n)

4

27          1

28          0

reshape(A,m,n)

9

7         15

8         16

repmat(A,m)

14

17        45

18        56

repmat(A,m)

5

29          5

30          9

reshape (A,siz)

10

9         11

10        9

repmat(A,[m n])

15

19        78

20         0

repmat(A,[m n])

  1.  Поверните матрицу

1

[9 7 8; 6 8 7; 0 8 2]

16

[1 4 5; 5 6 7; 5 4 12]

2

[10 4 5; 5 9 7; 5 5 0]

17

[3 8 7; 3 7 9; 8 6 4]

3

[4 7 9; 9 6 5; 6 4 3]

18

[6 6 4; 4 8 7; 4 7 6]

4

[1 4 5; 8 3 7; 5 7 0]

19

[1 1 3; 2 8 1; 5 3 3]

5

[12 6 7; 15 0 11; 6 4 1]

20

[4 2 5; 5 4 7; 7 2 1]

6

[16 0 3; 9 4 9; 5 9 1]

21

[6 3 9; 8 9 9; 5 8 0]

7

[6 0 9; 8 7 9; 5 8 1]

22

[8 5 6; 0 7 7; 6 9 7]

8

[7 3 8; 17 9 9; 5 8 4]

23

[9 7 3; 5 8 8; 3 6 9]

9

[5 3 9; 8 7 7; 15 9 0]

24

[6 10 4 ; 1 6 0; 5 4 3]

10

[4 3 9; 7 9 9; 5 8 4]

25

[7 13 2 ; 1 5 1; 7 4 4]

  1.  Правила выполнения и содержание отчета по лабораторной работе.

Выполнить отчет о проделанной работе, в котором привести программу решения заданий 1 – 5.

КОНТРОЛЬНЫЕ ВОПРОСЫ

  1.  Какая функция зеркально переставляет столбцы матрицы А относительно веритикальной оси?
  2.  Какая функция зеркально переставляет столбцы матрицы А относительно горизонтальной оси?
  3.  Что означает функция prod(A)?
  4.  Что означает функция sum(A)?
  5.  Как осуществляется поворот матрицы?


 

А также другие работы, которые могут Вас заинтересовать

66009. Финансовая система России 31.78 KB
  Государственный и банковский кредит все вышеозначенные институты относят к централизованным финансам которые используются для регулирования экономики и социальных отношений на макроуровне; Финансы хозяйствующих субъектов и отраслей относящиеся к децентрализованным финансам...
66010. Государственные предприятия, государственные корпорации, объединения предприятий, дочерние и зависимые общества 59 KB
  Все они направлены на использование преимуществ крупного капитала но отличаются друг от друга: Конкретными стратегическими целями и текущими задачами которые ставятся объединением ; Структурой участников; Установленными имущественными и правовыми отношениями; Понятие и сущность...
66012. Немецкая и американская модель ипотечного кредитования 18.96 KB
  Период кредитования начинается когда член кассы накапливает половину той суммы что нужна на покупку жилья. Период накопления заменяется периодом внесения вкладов в долговое участие в строительстве а период кредитования периодом покупки в рассрочку или аренды с правом выкупа.
66013. Инвестиционный рейтинг регионов 97.5 KB
  Рейтинг крупнейшего независимого агентства Эксперт РА это взаимосвязанная оценка двух осей инвестиционной привлекательности: риска и потенциала. Им в ходе оценки составляющих инвестиционного климате инвестиционного риска и потенциала используется около двух сотен исходных количественных и качественных характеристик.
66014. Внутренний долг РФ с 2007-2012 года 55.46 KB
  Структура и динамика государственного внутреннего долга по состоянию на 1 мая 2007 года в части государственных ценных бумаг номинированных в валюте Российской Федерации Виды государственных ценных бумаг млрд.
66015. Внешняя задолженность 28.59 KB
  В случае внешнего государственного долга кредиторами правительства выступают: иностранные государства иностранные юридические лица международные финансовые институты МВФ связанный с ним Парижский клуб Лондонский клуб Всемирный банк.
66016. Международный валютный фонд, МВФ 33.27 KB
  На Бреттон-Вудской конференции ООН по валютно-финансовым вопросам 22 июля 1944 года была разработана основа соглашения Хартия МВФ. Наиболее существенный вклад в разработку концепции МВФ внесли Джон Мейнард Кейнс возглавлявший британскую делегацию...