Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Гафаров_Отчет.doc
Скачиваний:
3
Добавлен:
11.03.2015
Размер:
1.09 Mб
Скачать

МИНОБРНАУКИ РОССИИ

Федеральное государственное бюджетное образовательное

учреждение высшего профессионального образования

«Ижевский государственный технический университет»

Кафедра «Вычислительная техника»

ОТЧЕТ

по лабораторным работам №1-4

по дисциплине «Технология разработки ПО»

Выполнил:

студент группы М01-784-1 Полин А.Ю.

Проверил:

к.т.н., доцент Гафаров Р.М.

Ижевск 2011

Лабораторная работа № 1 «Технология разработки по при структурном подходе»

1 Постановка задачи

Разработать программную модель мяча, подпрыгивающего на рельефной поверхности под действием сил гравитации.

2 Цель работы

Изучить технологию разработки ПО при структурном подходе. Применить полученные знания на практике, разработав программу.

3 Проектирование ПО при структурном подходе

В данном разделе представлены проектные решения по разработанной при структурном подходе системе.

3.1 Предпроектные исследования предметной области. Математическая модель

Сила тяжести(тяготения) - гравитационная сила притяжения, существующая на поверхности любой планеты или другого небесного тела. На Земле она действует на каждое свободно движущееся тело с ускорением, равным 9,8.

На рисунке 3.1 представлена траектория движения тела под действием силы тяжести.

Рисунок 3.1 – Движение тела под действием силы тяжести.

Координаты материальной точки (x,y) в момент времениt, можно определить следующим образом:

(3.1)

где - значение скорости материальной точки в момент времениt0;

αугол между горизонтом и вектором;

g – ускорение свободного падения = 9.8.

Значения координат вектора скорости в момент времениtвыражаются следующим образом:

(3.2)

Движение мяча, подпрыгивающего на рельефной поверхности можно представить в виде множества отдельных движений, каждое из которых легко описывается формулами 3.1 и 3.2.

В случае абсолютно упругого удара кинетическая энергия тела остается неизменной, т.е. скорость мяча до столкновения равна скорости мяча после столкновения.

Рассмотрим математическую модель мяча, представленного кругом, отскакивающего от некоторой точки пространства. На рисунке 3.2 штриховой линией показана траектория движения центра круга, при движении по параболе и отскоке после столкновения с некоторой точкой.

Рисунок 3.2 – Нахождение угла отскока в локальной системе координат

Для определения угла падения α1необходимо вычислить координаты вектора. Затем необходимо вычислить координаты вектораперпендикулярного вектору, и исходящего из центра круга. После этого необходимо определить угол от векторак векторупо следующей формуле:

(3.3)

Зная значение угла падения α1 можно рассчитать угол отскокаα2по следующей формуле:

(3.4)

Найденное значение угла отскока α2 в общем случае не может подставляться в формулы 3.1 и 3.2 для решения поставленной задачи, т.к. система координат, в которой было найдено значение угла отскока, является локальной, т.е. она может быть произвольно ориентирована относительно декартовой системы координат. Представление движения мяча в виде множества движений по параболе возможно только при использовании общей для всех движений системы координат. На рисунке 3.3 приведен возможный вариант расположения локальной системы координат относительно декартовой системы координат.

Рисунок 3.3 – Нахождение угла между осью абсцисс и локальной системой координат

Угол βравен углу от ортак вектору, найти который можно по формуле 3.3. Уголα, с учетом ориентации локальной системы координат относительно декартовой системы координат, можно найти по следующей формуле:

(3.5)

Также для решения поставленной задачи необходимо определить способ нахождения расстояния от поверхности. Расстояние от поверхности до центра мяча равно минимальному из расстояний от точек поверхности до центра мяча. Расстояние от i-точки поверхности можно вычислить следующим образом:

(3.6)

Если Min(Si) меньше или равно радиусу мяча, то произошло столкновение и необходимо начать новое движение по параболе.