Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Anisimova_G_D__Evseeva_S_I__Myshlyavtseva_M_D__UP_Ispolzovanie_MATLAB_pri_izuchenii_matematiki.pdf
Скачиваний:
1
Добавлен:
10.06.2025
Размер:
10.07 Mб
Скачать

2.2. СПОСОБЫ ЗАДАНИЯ ВЕКТОРОВ В MATLAB

 

Способы задания

 

 

 

 

 

Пример

 

 

векторов

 

 

 

 

в MATLAB

 

 

Поэлементный ввод вектор-строки

 

 

>> a=[1 2 3 4]

 

 

 

 

 

 

 

a=

 

 

 

 

 

 

 

 

 

1

2

3

4

 

 

 

 

 

 

 

 

 

 

 

 

 

Поэлементный ввод вектор-столбца

 

 

>> b=[1;2;3;4]

 

 

 

 

 

 

 

b=

 

 

 

 

 

 

 

 

 

1

 

 

 

 

 

 

 

 

 

2

 

 

 

 

 

 

 

 

 

3

 

 

 

 

 

 

 

 

 

4

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Объединение двух и более векторов

 

 

>> v1=[1 2]; v2=[3 4];

 

 

 

 

 

>> v=[v1 v2]

 

 

 

 

 

 

 

v=

 

 

 

 

 

 

 

 

 

1

2

3

4

 

 

 

 

 

 

 

 

 

 

 

 

 

С помощью оператора «двоеточие» (:)

 

 

>> [2:0.5:3.5]

 

 

 

 

в формате a:h:b

 

 

ans=

 

 

 

 

 

 

(построение вектора с элементами

 

 

2.0000

2.5000

3.0000 3.5000

 

 

из отрезка [a, b], где а – первый элемент,

 

 

>> u=[12:-3:0]

 

 

 

 

b – последний элемент вектора, h – шаг)

 

 

u=

 

 

 

 

 

 

 

 

 

12

9

6

3

0

 

 

 

 

 

 

 

 

 

 

 

 

С помощью оператора «двоеточие» (:)

 

 

>>c=[-2:3]

 

 

 

 

 

в формате a:b

 

 

c=

 

 

 

 

 

 

(построение вектора с элементами

 

 

-2

-1

0

1

2 3

 

 

из отрезка [a, b] с шагом 1)

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

С помощью команды linspace(a, b, n)

 

 

>>d=linspace(3,15,5)

 

 

 

 

 

 

(построение вектора с n элементами

 

 

d=

 

 

 

 

 

 

из отрезка [a, b], где а – первый элемент,

 

 

3

6 9

12 15

 

 

b – последний элемент вектора)

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Пример 2.13. Создать вектор-строку, содержащую элементы от -5 до 1 с шагом 0.3.

Решение. После символа (>>) ввести команду x=[-5:0.3:1] и нажать клавишу Enter. В командном окне появится следующее:

>>x=[-5:0.3:1]

% создадим вектор-строку

x =

 

 

 

Columns 1 through 7

-5.0000 -4.7000 -4.4000 -4.1000 -3.8000 -3.5000 -3.2000

36

Columns 8 through 14

-2.9000 -2.6000 -2.3000 -2.0000 -1.7000 -1.4000 -1.1000 Columns 15 through 21

-0.8000 -0.5000 -0.2000 0.1000 0.4000 0.7000 1.0000

Заметим, что сообщения Columns 1 through 7, Columns 8 through 14 и Columns 15 through 21 показывают, что результат (21 элемент вектора) в одну строку не помещается: в первой строке поместились с 1 по 7 элементы вектора, во второй строке – с 8 по 14 элементы вектора, в третьей строке – с 15 по 21 элементы вектора.

Некоторые полезные и часто употребляемые функции для работы с векторами приведены в табл. 2.1.

 

 

 

Таблица 2.1

 

Встроенные функции MATLAB для работы с векторами

 

 

 

 

Команда

 

Описание

Пример

MATLAB

 

 

в MATLAB

length(x)

 

Выводит количество элементов вектора

>> x= [6 1 3 -7];

 

 

х

>>length(x)

 

 

 

ans=

 

 

 

4

 

 

 

 

mean(x)

 

Вычисляет среднее значение элементов

>> mean(x)

 

 

вектора x

ans=

 

 

 

0.7500

 

 

 

 

sum(x)

 

Вычисляет сумму элементов вектора х

>> sum(x)

 

 

 

ans=

 

 

 

3

 

 

 

 

sort(x)

 

Создает вектор, состоящий из элементов

>> sort (x)

 

 

вектора х, составленных по возрастанию

ans=

 

 

 

-7 1 3 6

 

 

 

 

min(x)

 

Находит минимальный элемент (с уче-

>> min(x)

 

 

том знака) вектора x

ans=

 

 

 

-7

 

 

 

 

max(x)

 

Находит максимальный элемент (с уче-

>> max(x)

 

 

том знака) вектора x

ans=

 

 

 

6

 

 

 

 

37

2.3. ОПЕРАЦИИ НАД ВЕКТОРАМИ В MATLAB

 

 

 

 

 

 

 

Таблица 2.2

Операции над векторами по правилам линейной алгебры

 

 

 

 

 

Операция

Запись в MATLAB

 

Пример в MATLAB

 

 

 

 

 

 

 

 

Сложение векторов

x + y

>> x=[1 3 5]; y=[2 4 7];

 

одинакового размера

 

>> x+y

 

 

 

 

 

 

ans =

 

 

 

 

 

 

3

7

12

 

Вычитание векторов

x – y

>> x–y

 

 

 

 

одинакового размера

 

ans =

 

 

 

 

 

 

-1

-1

 

-2

 

Умножение вектора

x*n или n*x,

>> x*3

 

 

 

 

на число

где n – любое число

ans =

 

 

 

 

 

 

3

9

 

15

 

Транспонирование

x'

>> x'

 

 

 

 

вектора

 

ans =

 

 

 

 

 

 

1

 

 

 

 

 

 

3

 

 

 

 

 

 

5

 

 

 

 

Произведение двух

x*y

>> x'*y

 

 

 

 

векторов

 

ans =

 

 

 

 

 

 

2

4

 

7

 

 

 

6

12

 

21

 

 

 

10

20

 

35

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Таблица 2.3

Поэлементные операции над векторами

 

 

 

 

 

 

Операция

Запись в MATLAB

 

 

Пример в MATLAB

 

 

 

 

 

 

 

 

Поэлементное

x.*y

 

>>x=[1 3 5]; y=[2 4 7];

 

умножение векторов

 

 

>>x.*y

 

 

 

одинакового размера

 

 

ans =

 

 

 

 

 

 

 

2

12

35

 

 

 

 

 

 

 

 

 

Поэлементное деление

x./y

 

>>x=[1 3 5]; y=[2 4 7];

 

векторов одинакового

 

 

>>x./y

 

 

 

 

размера слева направо

 

 

ans =

 

 

 

 

 

 

 

0.5000

0.7500

0.7143

Поэлементное деление

x.\y

 

>>x=[1 3 5]; y=[2 4 7];

 

векторов одинакового

 

 

>>x.\y

 

 

 

 

размера справа налево

 

 

ans =

 

 

 

 

 

 

 

2.0000

1.3333

1.400

 

 

 

 

 

 

 

 

38

 

 

 

 

 

 

Окончание табл. 2.3

 

 

 

 

 

Операция

 

Запись в MATLAB

 

Пример в MATLAB

 

 

 

 

 

 

 

Поэлементное

 

x.^y

 

>>x=[1 3 5];

y=[2 4 7];

возведение в степень

 

(x и y – векторы оди-

 

>>x.^y

 

 

 

 

накового размера)

 

ans =

 

 

 

 

 

 

1

81

78125

 

 

x.^n

 

>>x.^2

 

 

 

 

(n – любое число)

 

ans =

 

 

 

 

 

 

 

 

 

 

 

 

1

9

25

 

 

 

 

 

 

 

Уровни приоритета арифметических операций:

1)возведение в степень: (.^), (^);

2)умножение: (.*), (*) и деление: (./), (/), (.\), (\);

3)сложение (+) и вычитание (-).

Операторы одного уровня имеют равный приоритет и выполняются слева направо. Порядок выполнения операций можно изменить при помощи скобок.

Поэлементные операции над векторами часто используются для вычисления значений функции при нескольких значениях ее аргумента.

Пример 2.14. Вычислить значения функции y x4 2x 7 при x=1, 2, 3, 4, 5. 6x3 1

Решение. Для создания вектора с элементами 1, 2, 3, 4, 5 в командном окне после символа (>>) ввести команду x = [1:5], нажать клавишу Enter.

Для вычисления значений заданной функции при x=1, 2, 3, 4, 5 ввести команду y = (x.^4-2*x+7)./(6*x.^3+1). Тогда в командном окне появится следующее:

>> x=[1:5]

% создадим вектор-строку с элементами 1,2,3,4,5

x =

 

 

 

12 3 4 5

>>y=(x.^4-2*x+7)./(6*x.^3+1) % вычисление значений заданной функции

y =

0.8571 0.3878 0.5031 0.6623 0.8282

Заметим, что поэлементные операции использовали при вычислении x4 ,

x3 и при делении.

 

 

 

 

 

 

 

 

Пример 2.15. Построить таблицу значений функции

 

 

f (x)

 

sin2 (x)

 

2 ex ln x на отрезке [3; 5] с шагом 0.1.

 

 

 

 

 

 

 

2 cos(x)

 

 

 

 

Решение. Введем команды:

 

 

 

 

 

 

 

 

 

>> x=[3:0.1:5]

 

% создадим вектор-строку

 

 

x =

 

 

 

 

 

 

 

 

 

Columns 1 through 8

 

 

 

 

 

 

3.0000

3.1000

3.2000

3.3000

3.4000

3.5000

3.6000

3.7000

 

 

 

 

 

 

 

 

 

 

39

Соседние файлы в предмете Математика