Сравнить коммиты
3 Коммитов
main
...
e3ec2efaf0
| Автор | SHA1 | Дата | |
|---|---|---|---|
|
|
e3ec2efaf0 | ||
|
|
9823c0070b | ||
|
|
905bf95cea |
37
README.md
37
README.md
@@ -2,53 +2,42 @@
|
||||
|
||||
[Репозиторий с методическими указаниями и заданиями.](http://uit.mpei.ru/git/main/it)
|
||||
|
||||
**Работы проверяются только после того, как закоммичены по правилам ниже.**
|
||||
|
||||
## Работа с Git
|
||||
|
||||
**Работы проверяются только после того, как закоммичены по правилам ниже.**
|
||||
|
||||
[Лабораторная работа про Git второго семестра][gitlab]
|
||||
поможет вспомнить, как работать с Git.
|
||||
|
||||
[gitlab]: http://uit.mpei.ru/git/main/cs/src/branch/main/labs/lab02
|
||||
|
||||
1. Один раз в начале семестра
|
||||
1. В начале семестра
|
||||
создать на сервере копию этого репозитория («форкнуть» его), нажав *Fork*.
|
||||
Получится репозиторий-форк `http://uit.mpei.ru/git/IvanovII/it-labs`,
|
||||
где `IvanovII` — ваше имя пользователя.
|
||||
|
||||
2. В начале каждого занятия:
|
||||
|
||||
1. Настроить Git, чтобы не было проблем с вводом пароля:
|
||||
|
||||
```sh
|
||||
git config --global credential.helper ""
|
||||
git config --global core.askpass ""
|
||||
```
|
||||
|
||||
2. Клонировать свой форк на рабочий стол
|
||||
Клонировать свой форк на рабочий стол
|
||||
(`IvanovII` заменить на свое имя пользователя):
|
||||
|
||||
```sh
|
||||
git clone http://uit.mpei.ru/git/IvanovII/it-labs.git
|
||||
```
|
||||
|
||||
Не клонируйте на диск L (students) в компьютерном классе —
|
||||
не будет работать Git.
|
||||
|
||||
Не клонируйте в папку, в пути к которой есть русские буквы и пробелы —
|
||||
не будет работать Octave.
|
||||
|
||||
3. Перейти в клонированную папку и настроить имя пользователя и почту,
|
||||
чтобы у коммитов был правильный автор:
|
||||
Перебазировать свой форк на исходный репозиторий ("апстрим"):
|
||||
|
||||
```sh
|
||||
cd it-labs
|
||||
git config user.name "Иванов И. И."
|
||||
git config user.email "IvanovII@mpei.ru"
|
||||
# Первую команду нужно запускать только один раз,
|
||||
# иначе будет ошибка "error: remote upstream already exists".
|
||||
git remote add upstream http://uit.mpei.ru/git/main/it-labs.git
|
||||
git fetch upstream
|
||||
git stash push
|
||||
git rebase upstream/main
|
||||
git stash pop
|
||||
```
|
||||
|
||||
Если вы работаете со своего компьютера, а не с лабораторного,
|
||||
то все эти шаги нужно сделать один раз, а не каждое занятие.
|
||||
Перебазировать нужно, чтобы подтянуть из исходного репозитория обновления.
|
||||
|
||||
3. После того, как отчет написан, закоммитить его как `TEMAn/report.md`.
|
||||
|
||||
|
||||
Двоичные данные
ТЕМА1/assets/figure0.PNG
Обычный файл
Двоичные данные
ТЕМА1/assets/figure0.PNG
Обычный файл
Двоичный файл не отображается.
|
После Ширина: | Высота: | Размер: 1.7 KiB |
Двоичные данные
ТЕМА1/assets/figure1.PNG
Обычный файл
Двоичные данные
ТЕМА1/assets/figure1.PNG
Обычный файл
Двоичный файл не отображается.
|
После Ширина: | Высота: | Размер: 7.0 KiB |
Двоичные данные
ТЕМА1/assets/figure2.PNG
Обычный файл
Двоичные данные
ТЕМА1/assets/figure2.PNG
Обычный файл
Двоичный файл не отображается.
|
После Ширина: | Высота: | Размер: 33 KiB |
528
ТЕМА1/report.md
Обычный файл
528
ТЕМА1/report.md
Обычный файл
@@ -0,0 +1,528 @@
|
||||
# Отчет по теме 1
|
||||
|
||||
Бакайкин Константин, А-03-24
|
||||
|
||||
## 1 Изучение среды GNU Octave
|
||||
|
||||
## 2 Настройка текущего каталога
|
||||
|
||||
Нажал на окно рядом с *Текущая папка:* и установил путь к папке ТЕМА1:
|
||||
|
||||

|
||||
|
||||
## 3 Настройка отображения
|
||||
|
||||
Нажал в главном меню предложение *Окно* и отметил соответсвующие закладки галочками:
|
||||
|
||||

|
||||
|
||||
## 4 Настройка пути
|
||||
|
||||
Установил путь к папкам ТЕМА1 и ТЕМА2. отобразил список файлов размещенных в текущей папке:
|
||||
|
||||

|
||||
|
||||
## 5 Изучение работы системы помощи
|
||||
|
||||
3 способа взаимодействия с системой помощи:
|
||||
|
||||
В главном меню выберите предложения «Справка» + « Документация» + « На диске»
|
||||
|
||||
Ввод в командную строк help randn
|
||||
|
||||
В главном меню выберите предложения «Справка» + «Пакеты Octave»
|
||||
|
||||
## 6 Создание матриц и векторов
|
||||
|
||||
Сделали матрицу А с нормально распределенными числами (4x6)
|
||||
|
||||
```matlab
|
||||
>> A=randn(4,6)
|
||||
A =
|
||||
|
||||
-0.456910 -0.555566 0.803093 1.569653 1.325472 0.133544
|
||||
-0.131904 0.021183 -0.091582 -0.414840 -0.421469 0.738983
|
||||
1.719014 1.723503 -0.504743 0.441674 1.797601 0.923687
|
||||
0.098965 -0.027680 -0.561811 1.605313 0.690128 -0.632586
|
||||
```
|
||||
|
||||
Сделали матрицу B с равномерно распределенными числами (4x7) с диапозоном от 0 до 1
|
||||
|
||||
```matlab
|
||||
>> B=rand(4,7)
|
||||
B =
|
||||
|
||||
0.192067 0.555502 0.968665 0.070620 0.934708 0.829136 0.549038
|
||||
0.203313 0.102147 0.412080 0.391154 0.428950 0.947358 0.237762
|
||||
0.228346 0.378330 0.344054 0.906633 0.035163 0.529538 0.953942
|
||||
0.629267 0.367450 0.452845 0.043022 0.242846 0.928494 0.528300
|
||||
```
|
||||
|
||||
Сделали вектор С с целыми числами от 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
|
||||
```
|
||||
|
||||
Сделали символьный вектор H
|
||||
|
||||
```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 столбцами (D)
|
||||
|
||||
```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
|
||||
|
||||
```
|
||||
|
||||
Перемножили матрицу B и матрицу A с транспонированием матрицы В (Создали новую матрицу E)
|
||||
|
||||
```matlab
|
||||
>> E=B'*A
|
||||
E =
|
||||
|
||||
0.340231 0.273738 -0.333158 1.328161 1.013639 -0.011252
|
||||
0.419431 0.335428 0.039368 1.586541 1.626924 0.266684
|
||||
0.139301 0.051015 0.312117 2.228439 2.041252 0.465214
|
||||
1.478911 1.530446 -0.460895 0.418082 1.588201 1.108717
|
||||
-0.399179 -0.456324 0.557192 1.694596 1.288944 0.320670
|
||||
0.498371 0.446388 -0.209806 2.632862 2.292394 0.712582
|
||||
1.409900 1.329509 -0.359147 2.032585 2.706928 0.795971
|
||||
|
||||
```
|
||||
|
||||
Создали матрицу путем «горизонтального» соединения матриц А и В (Создали матрицу F)
|
||||
|
||||
```matlab
|
||||
>> F=[A,B]
|
||||
F =
|
||||
|
||||
Columns 1 through 12:
|
||||
|
||||
-0.456910 -0.555566 0.803093 1.569653 1.325472 0.133544 0.192067 0.555502 0.968665 0.070620 0.934708 0.829136
|
||||
-0.131904 0.021183 -0.091582 -0.414840 -0.421469 0.738983 0.203313 0.102147 0.412080 0.391154 0.428950 0.947358
|
||||
1.719014 1.723503 -0.504743 0.441674 1.797601 0.923687 0.228346 0.378330 0.344054 0.906633 0.035163 0.529538
|
||||
0.098965 -0.027680 -0.561811 1.605313 0.690128 -0.632586 0.629267 0.367450 0.452845 0.043022 0.242846 0.928494
|
||||
|
||||
Column 13:
|
||||
|
||||
0.549038
|
||||
0.237762
|
||||
0.953942
|
||||
0.528300
|
||||
|
||||
```
|
||||
|
||||
Поэлементно перемножили матрицы A и D (Создали матрицу G)
|
||||
|
||||
```matlab
|
||||
>> G=A.*D
|
||||
G =
|
||||
|
||||
-1.8276 -4.4445 9.6371 25.1145 26.5094 3.2051
|
||||
-0.6595 0.1906 -1.1906 -7.0523 -8.8509 18.4746
|
||||
10.3141 17.2350 -7.0664 7.9501 39.5472 24.0159
|
||||
0.6928 -0.3045 -8.4272 30.5010 15.8729 -17.0798
|
||||
```
|
||||
|
||||
Поэлементно поделили элементы матрицы G на 4.5 (Создали матрицу М)
|
||||
|
||||
```matlab
|
||||
>> M=G./4.5
|
||||
M =
|
||||
|
||||
-0.406143 -0.987673 2.141582 5.580990 5.890988 0.712235
|
||||
-0.146560 0.042365 -0.264571 -1.567174 -1.966856 4.105459
|
||||
2.292018 3.830007 -1.570313 1.766696 8.788273 5.336857
|
||||
0.153945 -0.067662 -1.872702 6.777990 3.527320 -3.795516
|
||||
|
||||
```
|
||||
|
||||
Поэлементно возвели в степень элементы матрицы D (Создали матрицу DDD)
|
||||
|
||||
```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 и с элементами которые меньше или равны 20 (Создали матрицу DL)
|
||||
|
||||
```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 Изучение стандартных функций
|
||||
|
||||
Математические функции (корень, натуральный логарифм, синус матрицы B)
|
||||
|
||||
```matlab
|
||||
>> B1=sqrt(B)
|
||||
B1 =
|
||||
|
||||
0.4383 0.7453 0.9842 0.2657 0.9668 0.9106 0.7410
|
||||
0.4509 0.3196 0.6419 0.6254 0.6549 0.9733 0.4876
|
||||
0.4779 0.6151 0.5866 0.9522 0.1875 0.7277 0.9767
|
||||
0.7933 0.6062 0.6729 0.2074 0.4928 0.9636 0.7268
|
||||
|
||||
>> B2=log(B)
|
||||
B2 =
|
||||
|
||||
-1.649914 -0.587884 -0.031837 -2.650442 -0.067521 -0.187371 -0.599588
|
||||
-1.593011 -2.281345 -0.886537 -0.938654 -0.846414 -0.054078 -1.436486
|
||||
-1.476893 -0.971988 -1.066957 -0.098017 -3.347759 -0.635749 -0.047152
|
||||
-0.463199 -1.001169 -0.792205 -3.146051 -1.415328 -0.074191 -0.638091
|
||||
|
||||
>> B3=sin(B)
|
||||
B3 =
|
||||
|
||||
0.190888 0.527370 0.824130 0.070561 0.804426 0.737348 0.521867
|
||||
0.201915 0.101969 0.400516 0.381255 0.415917 0.811876 0.235528
|
||||
0.226367 0.369369 0.337306 0.787433 0.035156 0.505135 0.815702
|
||||
0.588552 0.359236 0.437526 0.043008 0.240466 0.800719 0.504066
|
||||
```
|
||||
|
||||
Операции с матрицами
|
||||
|
||||
-длина матрицы(кол-во столбцов)
|
||||
|
||||
```matlab
|
||||
>> k=length(B1)
|
||||
k = 7
|
||||
|
||||
```
|
||||
|
||||
-размер матрицы (строкиXстолбцы)
|
||||
|
||||
```matlab
|
||||
>> nm=size(B1)
|
||||
nm =
|
||||
|
||||
4 7
|
||||
|
||||
```
|
||||
|
||||
-количество элементов матрицы
|
||||
|
||||
```matlab
|
||||
>> elem=numel(B1)
|
||||
elem = 28
|
||||
|
||||
```
|
||||
|
||||
|
||||
```matlab
|
||||
>> 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
|
||||
|
||||
```
|
||||
|
||||
```matlab
|
||||
>> FF=ones(2,4)
|
||||
FF =
|
||||
|
||||
1 1 1 1
|
||||
1 1 1 1
|
||||
|
||||
```
|
||||
|
||||
```matlab
|
||||
>> 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
|
||||
|
||||
```
|
||||
|
||||
```matlab
|
||||
>> B1D=diag(B1)
|
||||
B1D =
|
||||
|
||||
0.4383
|
||||
0.3196
|
||||
0.5866
|
||||
0.2074
|
||||
|
||||
```
|
||||
|
||||
```matlab
|
||||
>> DB=diag(B1D)
|
||||
DB =
|
||||
|
||||
Diagonal Matrix
|
||||
|
||||
0.4383 0 0 0
|
||||
0 0.3196 0 0
|
||||
0 0 0.5866 0
|
||||
0 0 0 0.2074
|
||||
|
||||
```
|
||||
|
||||
```matlab
|
||||
>> BS1=sort(B)
|
||||
BS1 =
|
||||
|
||||
0.192067 0.102147 0.344054 0.043022 0.035163 0.529538 0.237762
|
||||
0.203313 0.367450 0.412080 0.070620 0.242846 0.829136 0.528300
|
||||
0.228346 0.378330 0.452845 0.391154 0.428950 0.928494 0.549038
|
||||
0.629267 0.555502 0.968665 0.906633 0.934708 0.947358 0.953942
|
||||
|
||||
```
|
||||
|
||||
```matlab
|
||||
>> BS2 = sortrows(B,2)
|
||||
BS2 =
|
||||
|
||||
0.203313 0.102147 0.412080 0.391154 0.428950 0.947358 0.237762
|
||||
0.629267 0.367450 0.452845 0.043022 0.242846 0.928494 0.528300
|
||||
0.228346 0.378330 0.344054 0.906633 0.035163 0.529538 0.953942
|
||||
0.192067 0.555502 0.968665 0.070620 0.934708 0.829136 0.549038
|
||||
|
||||
```
|
||||
|
||||
```matlab
|
||||
>> DS1=sum(D)
|
||||
DS1 =
|
||||
|
||||
22 38 54 70 86 102
|
||||
|
||||
```
|
||||
|
||||
```matlab
|
||||
>> DS2=sum(D,2)
|
||||
DS2 =
|
||||
|
||||
84
|
||||
90
|
||||
96
|
||||
102
|
||||
|
||||
```
|
||||
|
||||
```matlab
|
||||
>> DP1=prod(D)
|
||||
DP1 =
|
||||
|
||||
840 7920 32760 93024 212520 421200
|
||||
|
||||
```
|
||||
|
||||
```matlab
|
||||
>> dt=det(A*A')
|
||||
dt = 47.415
|
||||
|
||||
```
|
||||
|
||||
```matlab
|
||||
>> dinv=inv(A*A')
|
||||
dinv =
|
||||
|
||||
3.1251e-01 5.8486e-02 8.0228e-03 -2.1952e-01
|
||||
5.8486e-02 2.4673e+00 -6.1622e-02 8.8955e-01
|
||||
8.0228e-03 -6.1622e-02 1.0567e-01 -7.8216e-02
|
||||
-2.1952e-01 8.8955e-01 -7.8216e-02 7.9417e-01
|
||||
|
||||
```
|
||||
## 9 Изучили работу с индексацией элементов матриц.
|
||||
|
||||
```matlab
|
||||
>> D1=D(3,5)
|
||||
D1 = 22
|
||||
|
||||
```
|
||||
|
||||
|
||||
|
||||
```matlab
|
||||
>> D2=D(3,4:end)
|
||||
D2 =
|
||||
|
||||
18 22 26
|
||||
|
||||
```
|
||||
|
||||
```matlab
|
||||
>> D3=D(2:3,3:5)
|
||||
D3 =
|
||||
|
||||
13 17 21
|
||||
14 18 22
|
||||
|
||||
```
|
||||
|
||||
```matlab
|
||||
>> D4=D(16:20)
|
||||
D4 =
|
||||
|
||||
19 20 21 22 23
|
||||
|
||||
```
|
||||
|
||||
```matlab
|
||||
>> 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>>
|
||||
|
||||
```
|
||||
Ссылка в новой задаче
Block a user