529 строки
13 KiB
Markdown
529 строки
13 KiB
Markdown
# Отчёт по теме 1
|
|
|
|
Евдоченко Наталья, А-03-24
|
|
|
|
## 1 Изучение среды GNU Octave
|
|
|
|
## 2 Настройка текущего каталога
|
|
|
|
Нажал на окно рядом с *Текущая папка:* и установил путь к папке ТЕМА1:
|
|
|
|

|
|
|
|
## 3 Настройка отображений окон
|
|
|
|
## 4 Установка путей к папкам ТЕМА1 и ТЕМА2
|
|
|
|
Добавила пути к папкам **ТЕМА1** и **ТЕМА2** и проверила список файлов в текущей папке
|
|
|
|

|
|
|
|
## 5 Изучение системы помощи
|
|
|
|
Открыла обширное ангоязычное описание методики рработы со средой
|
|
|
|

|
|
|
|
Использовала более быстрый способ получения справок с помощью команды **help**
|
|
|
|
```matlab
|
|
>> 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.
|
|
```
|
|
|
|
Воспользовалась функцией из дополнительно загружаемых пакетов
|
|
|
|

|
|
|
|
## 6 Создание нескольких матриц с помощью различных команд
|
|
|
|
Матрица А со случайными, нормально распределенными элементами, с 4 строками и 6 столбцами
|
|
|
|
```matlab
|
|
>> A=randn(4,6)
|
|
A =
|
|
|
|
-0.7052 -0.8818 -1.1144 -0.4998 0.8084 -0.8141
|
|
-0.7136 0.2865 -0.2747 -1.9414 -0.6845 -0.4213
|
|
-0.9317 0.4764 -1.1302 0.2482 -1.3404 -0.6040
|
|
-2.0625 1.1710 0.2332 -0.1656 0.3384 -1.2633
|
|
```
|
|
|
|
Матрица В 4х7 со случайными элементами, равномерно распределенными в диапазоне от 0 до
|
|
|
|
```matlab
|
|
>> B=rand(4,7)
|
|
B =
|
|
|
|
0.302148 0.404094 0.234567 0.840058 0.376967 0.056362 0.878047
|
|
0.432837 0.917329 0.366490 0.251031 0.275377 0.231369 0.144644
|
|
0.838462 0.839366 0.019972 0.766134 0.849156 0.936181 0.652944
|
|
0.910177 0.241217 0.295250 0.365846 0.103967 0.640409 0.132252
|
|
```
|
|
|
|
Вектор С с целыми числами от 4 до 27
|
|
|
|
```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
|
|
```
|
|
|
|
Символьный вектор Н
|
|
|
|
```matlab
|
|
>> H="This is a symbols vector"
|
|
H = This is a symbols vector
|
|
```
|
|
|
|
Вектор-строка L с 2 комплексными элементами
|
|
|
|
```matlab
|
|
>> L=[-2+23.1j, 3-5.6j]
|
|
L =
|
|
|
|
-2.0000 + 23.1000i 3.0000 - 5.6000i
|
|
```
|
|
|
|
## 7 Выполнение операций с матрицами
|
|
|
|
Преобразование матрицы С в матрицу с 6 столбцами
|
|
|
|
```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
|
|
```
|
|
|
|
Матричное перемножение В и А с транспонированием матрицы В (число столбцов в В должно совпадать с числом строк в А)
|
|
|
|
```matlab
|
|
>> E=B'*A
|
|
E =
|
|
|
|
-3.180346 1.322897 -1.191036 -0.933906 -0.867910 -2.084580
|
|
-2.219046 0.588858 -1.594785 -1.814432 -1.344676 -1.527155
|
|
-1.054488 0.253421 -0.315813 -0.872676 0.011914 -0.730410
|
|
-2.239845 0.124593 -1.785729 -0.777626 -0.395859 -1.714559
|
|
-1.467883 0.272803 -1.431254 -0.529445 -0.986784 -1.067140
|
|
-2.397905 1.212558 -1.035136 -0.350995 -1.150975 -1.517838
|
|
-1.603472 -0.266859 -1.725379 -0.579492 -0.219650 -1.337202
|
|
```
|
|
|
|
Создание матрицы путем «горизонтального» соединения матриц А и В (числа строк у соединяемых матриц должны совпадать)
|
|
|
|
```matlab
|
|
>> F=[A,B]
|
|
F =
|
|
|
|
Columns 1 through 9:
|
|
|
|
-0.705157 -0.881795 -1.114405 -0.499831 0.808407 -0.814087 0.302148 0.404094 0.234567
|
|
-0.713565 0.286495 -0.274745 -1.941373 -0.684453 -0.421308 0.432837 0.917329 0.366490
|
|
-0.931664 0.476435 -1.130236 0.248249 -1.340418 -0.604009 0.838462 0.839366 0.019972
|
|
-2.062523 1.171037 0.233207 -0.165606 0.338372 -1.263280 0.910177 0.241217 0.295250
|
|
|
|
Columns 10 through 13:
|
|
|
|
0.840058 0.376967 0.056362 0.878047
|
|
0.251031 0.275377 0.231369 0.144644
|
|
0.766134 0.849156 0.936181 0.652944
|
|
0.365846 0.103967 0.640409 0.132252
|
|
```
|
|
|
|
Поэлементное перемножение матриц A и D (размеры матриц должны совпадать)
|
|
|
|
```matlab
|
|
G=A.*D
|
|
G =
|
|
|
|
-2.8206 -7.0544 -13.3729 -7.9973 16.1681 -19.5381
|
|
-3.5678 2.5785 -3.5717 -33.0033 -14.3735 -10.5327
|
|
-5.5900 4.7644 -15.8233 4.4685 -29.4892 -15.7042
|
|
-14.4377 12.8814 3.4981 -3.1465 7.7826 -34.1085
|
|
```
|
|
|
|
Поэлементное деление элементов матрицы G на 4.5
|
|
|
|
```matlab
|
|
M=G./4.5
|
|
M =
|
|
|
|
-0.6268 -1.5676 -2.9717 -1.7772 3.5929 -4.3418
|
|
-0.7929 0.5730 -0.7937 -7.3341 -3.1941 -2.3406
|
|
-1.2422 1.0587 -3.5163 0.9930 -6.5532 -3.4898
|
|
-3.2084 2.8625 0.7774 -0.6992 1.7295 -7.5797
|
|
```
|
|
|
|
Поэлементное возведение в степень элементов матрицы D
|
|
|
|
```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
|
|
```
|
|
|
|
Превращение матрицы в вектор-столбец
|
|
|
|
``matlab
|
|
Dstolb=D(:)
|
|
Dstolb =
|
|
|
|
4
|
|
5
|
|
6
|
|
7
|
|
8
|
|
9
|
|
10
|
|
11
|
|
12
|
|
13
|
|
14
|
|
15
|
|
```
|
|
|
|
## 8 Изучение математических функций и операций с матрицами
|
|
|
|
Математические функции:
|
|
|
|
```matlab
|
|
B1=sqrt(B)
|
|
B1 =
|
|
|
|
0.5497 0.6357 0.4843 0.9165 0.6140 0.2374 0.9370
|
|
0.6579 0.9578 0.6054 0.5010 0.5248 0.4810 0.3803
|
|
0.9157 0.9162 0.1413 0.8753 0.9215 0.9676 0.8080
|
|
0.9540 0.4911 0.5434 0.6049 0.3224 0.8003 0.3637
|
|
|
|
>> B2=log(B)
|
|
B2 =
|
|
|
|
-1.196838 -0.906107 -1.450013 -0.174285 -0.975597 -2.875958 -0.130055
|
|
-0.837393 -0.086289 -1.003783 -1.382178 -1.289614 -1.463741 -1.933480
|
|
-0.176186 -0.175109 -3.913414 -0.266398 -0.163512 -0.065946 -0.426264
|
|
-0.094116 -1.422060 -1.219933 -1.005544 -2.263684 -0.445649 -2.023044
|
|
|
|
B3=sin(B)
|
|
B3 =
|
|
|
|
0.297572 0.393186 0.232422 0.744682 0.368102 0.056332 0.769493
|
|
0.419448 0.793981 0.358341 0.248403 0.271910 0.229310 0.144140
|
|
0.743616 0.744220 0.019971 0.693355 0.750723 0.805300 0.607527
|
|
0.789613 0.238884 0.290979 0.357739 0.103780 0.597523 0.131867
|
|
```
|
|
|
|
Операции с матрицами:
|
|
|
|
```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.5497
|
|
0.9578
|
|
0.1413
|
|
0.6049
|
|
|
|
>> DB=diag(B1D)
|
|
DB =
|
|
|
|
Diagonal Matrix
|
|
|
|
0.5497 0 0 0
|
|
0 0.9578 0 0
|
|
0 0 0.1413 0
|
|
0 0 0 0.6049
|
|
|
|
>> BS1=sort(B)
|
|
BS1 =
|
|
|
|
0.302148 0.241217 0.019972 0.251031 0.103967 0.056362 0.132252
|
|
0.432837 0.404094 0.234567 0.365846 0.275377 0.231369 0.144644
|
|
0.838462 0.839366 0.295250 0.766134 0.376967 0.640409 0.652944
|
|
0.910177 0.917329 0.366490 0.840058 0.849156 0.936181 0.878047
|
|
|
|
>> BS2=sortrows(B,2)
|
|
BS2 =
|
|
|
|
0.910177 0.241217 0.295250 0.365846 0.103967 0.640409 0.132252
|
|
0.302148 0.404094 0.234567 0.840058 0.376967 0.056362 0.878047
|
|
0.838462 0.839366 0.019972 0.766134 0.849156 0.936181 0.652944
|
|
0.432837 0.917329 0.366490 0.251031 0.275377 0.231369 0.144644
|
|
|
|
>> 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 = 407.92
|
|
>> dinv=inv(A*A')
|
|
dinv =
|
|
|
|
2.7761e-01 -5.1542e-02 -5.5301e-03 -3.9597e-02
|
|
-5.1542e-02 2.5608e-01 -6.5104e-02 -4.9109e-02
|
|
-5.5301e-03 -6.5104e-02 2.8356e-01 -7.3056e-02
|
|
-3.9597e-02 -4.9109e-02 -7.3056e-02 1.8320e-01
|
|
```
|
|
|
|
## 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 Изучение управляющих конструкций
|
|
|
|
Цикл по перечислению:
|
|
|
|
```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
|
|
>> plot(D(1,:),B([2,4],1:6))
|
|
```
|
|
|
|

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

|
|
|
|
Функция расчета и построения круговой диаграммы:
|
|
|
|
```matlab
|
|
>>pie(C)
|
|
```
|
|
|
|

|
|
|
|
Функция расчета и построения диаграммы столбцов:
|
|
|
|
```matlab
|
|
>> bar(C)
|
|
```
|
|
|
|

|
|
|
|
## 12 Работа с текстовым редактором среды
|
|
|
|
Создала сценарий **Prog1.m**
|
|
|
|

|
|
|
|
Запустила программу из открытого файла на выполнение
|
|
|
|
```matlab
|
|
>> Prog1
|
|
D1 = 22
|
|
D2 =
|
|
|
|
18 22 26
|
|
|
|
D3 =
|
|
|
|
13 17 21
|
|
14 18 22
|
|
|
|
D4 =
|
|
|
|
19 20 21 22 23
|
|
|
|
D5 =
|
|
|
|
6 14 26
|
|
7 15 27
|
|
```
|
|
|
|
Запустила программу на выполнение вводом имени файла **Prog1** командной строке
|
|
|
|

|
|
|
|
## 13 Сохранение и загрузка области переменных
|
|
|
|
Создала файл Perem. Сохранила и загрузила область переменных
|
|
|
|

|