538 строки
11 KiB
Markdown
538 строки
11 KiB
Markdown
# Отчет по теме 1.
|
|
Зенина Варвара А-03-24
|
|
|
|
## 1 Запуск на выполнение среды GNU Octave
|
|
|
|
## 2 Установка пути к папке ТЕМА1
|
|
|
|

|
|
|
|
## 3 Отметка галочками нужных параметров
|
|
|
|
## 4 Отображение списка файлов
|
|
|
|

|
|
|
|
## 5 Изучение работы системной помощи
|
|
|
|

|
|
|
|
```
|
|
help randn
|
|
'randn' is a built-in function from the file libinterp/corefcn/rand.cc
|
|
|
|
-- X = randn (N)
|
|
-- X = randn (M, N, ...)
|
|
-- X = randn ([M N ...])
|
|
-- X = randn (..., "single")
|
|
-- X = randn (..., "double")
|
|
-- V = randn ("state")
|
|
-- randn ("state", V)
|
|
-- randn ("state", "reset")
|
|
-- V = randn ("seed")
|
|
-- randn ("seed", V)
|
|
-- randn ("seed", "reset")
|
|
Return a matrix with normally distributed random elements having
|
|
zero mean and variance one.
|
|
|
|
The arguments are handled the same as the arguments for 'rand'.
|
|
```
|
|
|
|

|
|
|
|
## 6 Создание матриц с помощью команд
|
|
|
|
```
|
|
matlab
|
|
>>> A=randn(4,6)
|
|
A =
|
|
|
|
-0.699730 -0.976977 -0.271006 -2.518044 -0.422044 1.454752
|
|
0.043711 -0.973201 -0.576803 0.774990 -0.159686 0.368326
|
|
1.232508 1.769434 -0.843969 0.429818 0.669032 1.573897
|
|
1.308529 -0.563002 -0.595588 0.479220 0.031290 -1.169116
|
|
```
|
|
|
|
- матрица А со случайными, нормально распределенными элементами, с 4 строками и 6 столбцами
|
|
|
|
|
|
```
|
|
matlab
|
|
>>> B=rand(4,7)
|
|
B =
|
|
|
|
0.911234 0.328625 0.303009 0.174785 0.553852 0.458439 0.822197
|
|
0.254895 0.233823 0.939794 0.225898 0.974590 0.446039 0.040543
|
|
0.890675 0.471907 0.287485 0.777967 0.523829 0.240374 0.826572
|
|
0.775910 0.599860 0.923872 0.051989 0.801522 0.562365 0.100517
|
|
```
|
|
|
|
- матрица В 4х7 со случайными элементами, равномерно распределенными в диапазоне от 0 до 1
|
|
|
|
```
|
|
|
|
matlab
|
|
>>> C = 4:27
|
|
C =
|
|
|
|
4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27
|
|
|
|
```
|
|
|
|
- вектор С с целыми числами от 4 до 27
|
|
|
|
```
|
|
matlab
|
|
>>> H='This is a symbols vector'
|
|
H = This is a symbols vector
|
|
```
|
|
|
|
- символьный вектор Н
|
|
|
|
```
|
|
matlab
|
|
>>> L=[-2+23.1j, 3-5.6j]
|
|
L =
|
|
|
|
-2.0000 + 23.1000i 3.0000 - 5.6000i
|
|
```
|
|
|
|
- вектор-строка L с 2 комплексными элементами
|
|
|
|

|
|
|
|

|
|
|
|
## 7 Выполнение операций с матрицами
|
|
|
|
```
|
|
matlab
|
|
>>> D=reshape(C,[],6)
|
|
D =
|
|
|
|
4 8 12 16 20 24
|
|
5 9 13 17 21 25
|
|
6 10 14 18 22 26
|
|
7 11 15 19 23 27
|
|
```
|
|
|
|
- преобразование матрицы С в матрицу с 6 столбцами
|
|
|
|
```
|
|
matlab
|
|
>>> E=B'*A
|
|
E =
|
|
|
|
1.4866e+00 8.3372e-04 -1.6078e+00 -1.3423e+00 1.9488e-01 1.9142e+00
|
|
1.1468e+00 -5.1330e-02 -9.7947e-01 -1.5598e-01 1.5846e-01 6.0562e-01
|
|
1.3923e+00 -1.2221e+00 -1.4171e+00 5.3164e-01 -5.6711e-02 1.5931e-01
|
|
9.1445e-01 9.5669e-01 -8.6521e-01 9.4250e-02 4.1227e-01 1.5011e+00
|
|
1.3495e+00 -1.0139e+00 -1.6317e+00 -3.0069e-02 -1.3841e-02 1.0521e+00
|
|
7.3085e-01 -7.7326e-01 -9.1932e-01 -4.3588e-01 -8.6294e-02 5.5206e-01
|
|
5.7674e-01 5.6325e-01 -1.0037e+00 -1.6355e+00 2.0267e-01 2.3944e+00
|
|
```
|
|
|
|
- матричное перемножение В и А с транспонированием матрицы В
|
|
|
|
```
|
|
matlab
|
|
>>> F=[A,B]
|
|
F =
|
|
|
|
Columns 1 through 12:
|
|
|
|
-0.699730 -0.976977 -0.271006 -2.518044 -0.422044 1.454752 0.911234 0.328625 0.303009 0.174785 0.553852 0.458439
|
|
0.043711 -0.973201 -0.576803 0.774990 -0.159686 0.368326 0.254895 0.233823 0.939794 0.225898 0.974590 0.446039
|
|
1.232508 1.769434 -0.843969 0.429818 0.669032 1.573897 0.890675 0.471907 0.287485 0.777967 0.523829 0.240374
|
|
1.308529 -0.563002 -0.595588 0.479220 0.031290 -1.169116 0.775910 0.599860 0.923872 0.051989 0.801522 0.562365
|
|
|
|
Column 13:
|
|
|
|
0.822197
|
|
0.040543
|
|
0.826572
|
|
0.100517
|
|
```
|
|
|
|
- создание матрицы путем «горизонтального» соединения матриц А и В
|
|
|
|
```
|
|
matlab
|
|
>>> G=A.*D
|
|
G =
|
|
|
|
-2.7989 -7.8158 -3.2521 -40.2887 -8.4409 34.9141
|
|
0.2186 -8.7588 -7.4984 13.1748 -3.3534 9.2082
|
|
7.3950 17.6943 -11.8156 7.7367 14.7187 40.9213
|
|
9.1597 -6.1930 -8.9338 9.1052 0.7197 -31.5661
|
|
```
|
|
|
|
- поэлементное перемножение матриц A и D
|
|
|
|
```
|
|
matlab
|
|
>>> M=G./4.5
|
|
M =
|
|
|
|
-0.621982 -1.736847 -0.722682 -8.953047 -1.875753 7.758679
|
|
0.048568 -1.946401 -1.666318 2.927739 -0.745202 2.046257
|
|
1.643344 3.932076 -2.625683 1.719271 3.270822 9.093625
|
|
2.035489 -1.376227 -1.985293 2.023373 0.159925 -7.014693
|
|
```
|
|
|
|
- поэлементное деление элементов матрицы G на 4.5
|
|
|
|
```
|
|
matlab
|
|
>>> DDD=D.^3
|
|
DDD =
|
|
|
|
64 512 1728 4096 8000 13824
|
|
125 729 2197 4913 9261 15625
|
|
216 1000 2744 5832 10648 17576
|
|
343 1331 3375 6859 12167 19683
|
|
```
|
|
|
|
- поэлементное возведение в степень элементов матрицы D
|
|
|
|
```
|
|
matlab
|
|
>>> DL=D>=20
|
|
DL =
|
|
|
|
0 0 0 0 1 1
|
|
0 0 0 0 1 1
|
|
0 0 0 0 1 1
|
|
0 0 0 0 1 1
|
|
```
|
|
|
|
- создание логической матрицы, совпадающей по размерам с D и с элементами по заданному условию
|
|
|
|
```
|
|
matlab
|
|
>>> Dstolb=D(:)
|
|
Dstolb =
|
|
|
|
4
|
|
5
|
|
6
|
|
7
|
|
8
|
|
9
|
|
10
|
|
11
|
|
12
|
|
13
|
|
14
|
|
15
|
|
16
|
|
17
|
|
18
|
|
19
|
|
20
|
|
21
|
|
22
|
|
23
|
|
24
|
|
25
|
|
26
|
|
27
|
|
```
|
|
|
|
- превращение матрицы в вектор-столбец
|
|
|
|
## 8 Изучение некоторых стандартных функций
|
|
|
|
математические функции:
|
|
|
|
```
|
|
matlab
|
|
>>> B1=sqrt(B)
|
|
B1 =
|
|
|
|
0.9546 0.5733 0.5505 0.4181 0.7442 0.6771 0.9068
|
|
0.5049 0.4836 0.9694 0.4753 0.9872 0.6679 0.2014
|
|
0.9438 0.6870 0.5362 0.8820 0.7238 0.4903 0.9092
|
|
0.8809 0.7745 0.9612 0.2280 0.8953 0.7499 0.3170
|
|
|
|
>>> B2=log(B)
|
|
B2 =
|
|
|
|
-0.092956 -1.112839 -1.193992 -1.744199 -0.590858 -0.779927 -0.195776
|
|
-1.366903 -1.453189 -0.062095 -1.487673 -0.025738 -0.807350 -3.205395
|
|
-0.115776 -0.750974 -1.246585 -0.251072 -0.646589 -1.425560 -0.190468
|
|
-0.253719 -0.511059 -0.079181 -2.956728 -0.221243 -0.575604 -2.297433
|
|
|
|
>>> B3=sin(B)
|
|
B3 =
|
|
|
|
0.790260 0.322742 0.298394 0.173896 0.525967 0.442549 0.732643
|
|
0.252144 0.231699 0.807436 0.223981 0.827472 0.431395 0.040532
|
|
0.777496 0.454586 0.283541 0.701832 0.500200 0.238066 0.735613
|
|
0.700366 0.564527 0.797942 0.051965 0.718416 0.533188 0.100347
|
|
```
|
|
|
|
Операции с матрицами:
|
|
|
|
```
|
|
matlab
|
|
>>> k=length(B1)
|
|
k = 7
|
|
>>> nm=size(B1)
|
|
nm =
|
|
|
|
4 7
|
|
|
|
>>> elem=numel(B1)
|
|
elem = 28
|
|
>>> NN=linspace(11.5,34.1,20)
|
|
NN =
|
|
|
|
Columns 1 through 15:
|
|
|
|
11.500 12.689 13.879 15.068 16.258 17.447 18.637 19.826 21.016 22.205 23.395 24.584 25.774 26.963 28.153
|
|
|
|
Columns 16 through 20:
|
|
|
|
29.342 30.532 31.721 32.911 34.100
|
|
|
|
>>> FF=ones(2,4)
|
|
FF =
|
|
|
|
1 1 1 1
|
|
1 1 1 1
|
|
|
|
>>> GG=zeros(5)
|
|
GG =
|
|
|
|
0 0 0 0 0
|
|
0 0 0 0 0
|
|
0 0 0 0 0
|
|
0 0 0 0 0
|
|
0 0 0 0 0
|
|
|
|
>>> B1D=diag(B1)
|
|
B1D =
|
|
|
|
0.9546
|
|
0.4836
|
|
0.5362
|
|
0.2280
|
|
|
|
>>> DB=diag(B1D)
|
|
DB =
|
|
|
|
Diagonal Matrix
|
|
|
|
0.9546 0 0 0
|
|
0 0.4836 0 0
|
|
0 0 0.5362 0
|
|
0 0 0 0.2280
|
|
|
|
>>> BS1=sort(B)
|
|
BS1 =
|
|
|
|
0.254895 0.233823 0.287485 0.051989 0.523829 0.240374 0.040543
|
|
0.775910 0.328625 0.303009 0.174785 0.553852 0.446039 0.100517
|
|
0.890675 0.471907 0.923872 0.225898 0.801522 0.458439 0.822197
|
|
0.911234 0.599860 0.939794 0.777967 0.974590 0.562365 0.826572
|
|
|
|
>>> BS2=sortrows(B,2)
|
|
BS2 =
|
|
|
|
0.254895 0.233823 0.939794 0.225898 0.974590 0.446039 0.040543
|
|
0.911234 0.328625 0.303009 0.174785 0.553852 0.458439 0.822197
|
|
0.890675 0.471907 0.287485 0.777967 0.523829 0.240374 0.826572
|
|
0.775910 0.599860 0.923872 0.051989 0.801522 0.562365 0.100517
|
|
|
|
>>> DS1=sum(D)
|
|
DS1 =
|
|
|
|
22 38 54 70 86 102
|
|
|
|
>>> DS2=sum(D,2)
|
|
DS2 =
|
|
|
|
84
|
|
90
|
|
96
|
|
102
|
|
|
|
>>> DP1=prod(D)
|
|
DP1 =
|
|
|
|
840 7920 32760 93024 212520 421200
|
|
|
|
>>> dt=det(A*A')
|
|
dt = 445.23
|
|
>>> dinv=inv(A*A')
|
|
dinv =
|
|
|
|
0.138283 -0.027436 0.029141 0.118243
|
|
-0.027436 0.549321 0.011396 -0.142145
|
|
0.029141 0.011396 0.125583 0.035920
|
|
0.118243 -0.142145 0.035920 0.380003
|
|
```
|
|
|
|
## 9 Изучение работы с индексацией элементов матриц
|
|
|
|
```
|
|
matlab
|
|
>>> D1=D(3,5)
|
|
D1 = 22
|
|
|
|
>>> D2=D(3,4:end)
|
|
D2 =
|
|
|
|
18 22 26
|
|
|
|
|
|
>>> D3=D(2:3,3:5)
|
|
D3 =
|
|
|
|
13 17 21
|
|
14 18 22
|
|
|
|
|
|
>>> D4=D(16:20)
|
|
D4 =
|
|
|
|
19 20 21 22 23
|
|
|
|
|
|
>>> D5=D(3:4,[1,3,6])
|
|
D5 =
|
|
|
|
6 14 26
|
|
7 15 27
|
|
```
|
|
|
|
## 10 Изучение некоторые управляющие конструкции для использования в программах на m-языке.
|
|
|
|
Цикл по перечислению
|
|
|
|
```
|
|
matlab
|
|
>>> Dsum=0
|
|
Dsum = 0
|
|
|
|
>>> for i=1:6
|
|
Dsum=Dsum+sqrt(D(2,i))
|
|
endfor
|
|
Dsum = 2.2361
|
|
Dsum = 5.2361
|
|
Dsum = 8.8416
|
|
Dsum = 12.965
|
|
Dsum = 17.547
|
|
Dsum = 22.547
|
|
```
|
|
|
|
Цикл пока выполняется условие
|
|
|
|
```
|
|
matlab
|
|
>>> Dsum2=0;i=1
|
|
i = 1
|
|
>>> while (D(i)<22)
|
|
Dsum2=Dsum2+sin(D(i))
|
|
i=i+1
|
|
endwhile
|
|
Dsum2 = -0.7568
|
|
i = 2
|
|
Dsum2 = -1.7157
|
|
i = 3
|
|
Dsum2 = -1.9951
|
|
i = 4
|
|
Dsum2 = -1.3382
|
|
i = 5
|
|
Dsum2 = -0.3488
|
|
i = 6
|
|
Dsum2 = 0.063321
|
|
i = 7
|
|
Dsum2 = -0.4807
|
|
i = 8
|
|
Dsum2 = -1.4807
|
|
i = 9
|
|
Dsum2 = -2.0173
|
|
i = 10
|
|
Dsum2 = -1.5971
|
|
i = 11
|
|
Dsum2 = -0.6065
|
|
i = 12
|
|
Dsum2 = 0.043799
|
|
i = 13
|
|
Dsum2 = -0.2441
|
|
i = 14
|
|
Dsum2 = -1.2055
|
|
i = 15
|
|
Dsum2 = -1.9565
|
|
i = 16
|
|
Dsum2 = -1.8066
|
|
i = 17
|
|
Dsum2 = -0.8937
|
|
i = 18
|
|
Dsum2 = -0.057011
|
|
i = 19
|
|
```
|
|
|
|
Условие if
|
|
|
|
```
|
|
matlab
|
|
>>> if (D(3,5)>=20)
|
|
printf('D(3,5)>=20')
|
|
else
|
|
printf('D(3,5)<20')
|
|
endif
|
|
>>> D(3,5)>=20
|
|
```
|
|
|
|
## 11 Использование графических функций
|
|
|
|
Функция построения графиков
|
|
|
|
```
|
|
matlab
|
|
>>> graphics_toolkit('gnuplot')
|
|
plot(D(1,:),B([2,4],1:6))
|
|
```
|
|
|
|

|
|
|
|
Применение функции расчета и построения гистограммы
|
|
|
|
```
|
|
matlab
|
|
>>> hist(A(:),6)
|
|
```
|
|
|
|

|
|
|
|
Изучение других функций
|
|
|
|
```
|
|
matlab
|
|
>>> pie(C)
|
|
bar(C)
|
|
```
|
|
|
|

|
|
|
|

|
|
|
|
## 12 Изучение работы с текстовым форматом среды
|
|
|
|
Содержание файла Prog1.m.
|
|
|
|
```
|
|
matlab
|
|
>>> C = 4:27
|
|
D=reshape(C,[],6)
|
|
D1=D(3,5)
|
|
D2=D(3,4:end)
|
|
D3=D(2:3,3:5)
|
|
D4=D(16:20)
|
|
D5=D(3:4,[1,3,6])
|
|
```
|
|
|
|
## 13 Сохранение области переменных |