Задания к практическим занятиям (ММ РУиС)
Содержание |
Занятие 1
Тема занятия: Использование системы контроля версий. Доплеровский сдвиг частоты навигационного сигнала.
Цели занятия:
- Создать студенческие репозитории (хранилища) на Google Code.
- Познакомить студентов с системой контроля версий Subversion (SVN), включая программы-клиенты
- Познакомить студентов с MATLAB/Octave: интерфейс, переменные, векторы, матрицы, вывод графиков, написание скриптов.
- Привести пример решения детерминированной математической задачи с помощью компьютерной модели.
Задача 1.1 Использование системы контроля версий
При выполнении практических и лабораторных заданий, а так же домашней подготовке к ним, студенты должны пользоваться личным репозиторием SVN. Для простоты и общности предлагается создавать проекты на Google Code. Это бесплатный сервис для создания собственных репозиториев различных систем контроля версий. Из плюсов - простота, бесплатность, доступность. Минус - ограничение на лицензирование.
Шаг 1. Регистрация аккаунта на googlecode.com
- Переходим на страницу https://googlecode.com.
- Если уже авторизован другой пользователь - нажимаем кнопку Sign out в правом верхнем углу.
- Переходим на страницу авторизации путем нажатия кнопки Sign in в правом верхнем углу, либо Sign in to create a project по центру.
- Выбираем Create an account (если в памяти браузера остались данные о старом пользователе, то потребуется более длинная цепочка Manage accounts on this device > Add account > Create an account)
- В поле First Name и Last Name студент указывает имя и фамилию соответственно (транслитом, как в загранпаспорте), либо произвольную информацию по собственному усмотрению.
- Имя почтового ящика указывается по шаблону:
er09.ivanov.ii@gmail.com
, где09
- номер потока,ivanov
- фамилия студент,ii
- инициалы имени и отчества студента. - Пароль выбирается студентом
- Данные о Дне рождения, телефоне, другом почтовом ящике, стране указываются по желанию студента.
- Подтверждается согласие с Google Terms of Service и Privacy Policy путем отметки check-box'а, после чего осуществляется переход на следующую страницу кнопкой Next step.
- Выбор аватара можно пропустить нажатием кнопки Next step.
Аккаунт создан.
Шаг 2. Создание репозитория
Репозиторий, хранилище - место, где хранятся и поддерживаются какие-либо данные. В рамках курса ММ РТУиС каждый студент будет использовать личный репозиторий системы контроля версий SVN, предоставляемый сервисом Google Code.
- Возвращаемся на страницу https://googlecode.com. Выбираем Create a new project.
- Заполняем поля:
- Project name:
mm-er09-ivanov-ii
, гдеmm
- математическое моделирование,09
- номер потока,ivanov
- фамилия студента,ii
- инициалы имени и отчества - Project summary: "Modeling of radio systems and signals" (или другое по собственному усмотрению)
- Description: "Modeling of radio systems and signals: master course" (или другое по собственному усмотрению)
- Version control system: Subversion
- Source code license: на усмотрение студента
- Project label(s): matlab, radio, signals (или другое по собственному усмотрению)
- Ввести капчу
- Project name:
- Создать репозиторий нажатием кнопки Create project
Шаг 3. Пригласить преподавателей участвовать в проекте
Системы контроля версий созданы не только и не столько для того, чтобы иметь всю историю изменения проекта, а для совместной работы над ним группой. Пригласим поучаствовать во вновь созданном проекте преподавателей.
- На странице проекта выбираем Project Home > People > Add member.
- Вводим адреса электронной почты gmail преподавателей, например,
korogodin_iv@gmail.com
. - Не изменяем статус - Commiter, нажимаем кнопку Add members
Аккаунты преподавателей добавились в список Project People, теперь они могут следить за проектом, вносить в него правки при необходимости.
Шаг 4. Получить рабочую копию на локальный компьютер
Для загрузки рабочей копии проекта с сервера на локальный компьютер используется команда svn checkout
. Рабочие каталоги пользователей следует размещать в директории /home/student/Modeling
. Пример команды (консоль для ввода открывается по нажатию клавиши клавиатуры F12):
где mm-er09-ivanov-ii
- название проекта, er09.ivanov.ii
- логин пользователя.
Подсмотреть синтаксис команды можно на веб-странице проекта на вкладке Source > Checkout
Шаг 5. Создать структуру каталогов и сделать первый коммит
В каталоге проекта будут храниться файлы всех практических и лабораторных занятий: отчеты, скрипты, графики.
Заготовим структуру каталогов:
..../1
..../2
..../3
..../4
/praxis
......./1
......./2
......./3
......./4
......./5
......./6
......./7
......./8
Добавляем каталоги под контроль версий с помощью команды svn add
или кнопки Add в контекстном меню RabbitVCS (вызывается нажатием правой кнопки на каталогах в файловом менеджере Dolphin).
RabbitVCS - графический интерфейс к программе subversion, установленный в наших лабораториях. Популярный аналог для систем семейства Windows - TortoiseSVN.
После выполнения команды Add файлы (каталоги в нашем случае) добавляются в рабочую копию проекта. Командой svn commit
(или аналогичной кнопкой в RabbitVCS) производится так называемый "коммит" - добавление новой ревизии на сервер путем отправки туда вашей рабочей копии. Теперь в веб-интерфейсе на вкладке Source > Browse (или после выполнения соответствующих команд SVN или RabbitVCS) можно наблюдать появление новой ревизии и состояние проекта, ей соответствующее. При этом вы имеете возможность просмотреть и предыдущие ревизии, а если понадобиться - получить их на свой компьютер.
Задача 1.2 Расчет доплеровского сдвига навигационного сигнала
Автомобильный навигатор является классическим радиоприемным устройством класса аппаратура потребителей спутниковых радионавигационных систем. В процессе своей работы он принимает сигналы от навигационных спутников, оценивает их параметры, выделяет навигационное сообщение, заложенное в сигналах, и, в итоге, решает навигационную задачу - определяет своё местоположение.