ВВЕДЕНИЕ
Для изучения строения вещества, так или иначе, используются различные столкновения. Например, для того, чтобы рассмотреть какой-то предмет, его облучают светом, или потоком электронов, и по рассеянию этого света, или потока электронов получают фотографию, или рентгеновский снимок, или изображение данного предмета в каком-либо физическом приборе. Таким образом, столкновение частиц – это то, что окружает нас и в быту, и в науке, и в технике, и в природе.
Рассмотрение процессов столкновения с помощью законов сохранения, позволяет получать результаты, независимо от того, что происходит в момент столкновения.
При столкновении тел, в общем случае, кинетическая энергия сталкивающихся тел не обязана быть равной кинетической энергии разлетающихся тел. Действительно, при столкновении тела взаимодействуют друг с другом, воздействуя друг на друга и совершая работу. Эта работа и может привести к изменению кинетической энергии каждого из тел. Кроме того, работа, которую совершает первое тело над вторым, может оказаться неравной работе, которую второе тело совершает над первым. Это может привести к тому, что механическая энергия может перейти в тепло, электромагнитное излучение, или даже породить новые частицы.
В данной курсовой работе будет рассмотрено взаимодействие тел в процессе столкновения, иными словами движение невзаимодействующих тел, которые меняют свое состояние только при соприкосновении, которое называется столкновением, или ударом.
1 ОПИСАНИЕ ПРЕДМЕТНОЙ ОБЛАСТИ
1.1 Постановка задачи
В ходе выполнения курсовой работы необходимо изучить физическое обоснование поведения двух тел (шаров) при упругом столкновении, а затем реализовать его в виде анимации с помощью программирования на языке С#.
1.2 Физическая модель задачи
Закон сохранения механической энергии и закон сохранения импульса позволяют находить решения механических задач в тех случаях, когда действующие силы неизвестны. Примером такого рода задач является ударное взаимодействие тел.
С ударным взаимодействием тел нередко приходится иметь дело в обыденной жизни, в технике и в физике.
Ударом (или столкновением) принято называть кратковременное взаимодействие тел, в результате которого их скорости испытывают значительные изменения. Во время столкновения тел между ними действуют кратковременные ударные силы, величина которых, как правило, неизвестна. Поэтому нельзя рассматривать ударное взаимодействие непосредственно с помощью законов Ньютона. Применение законов сохранения энергии и импульса во многих случаях позволяет исключить из рассмотрения сам процесс столкновения и получить связь между скоростями тел до и после столкновения, минуя все промежуточные значения этих величин.
В механике часто используются две модели ударного взаимодействия – абсолютно упругий и абсолютно неупругий удары.
Абсолютно неупругим ударом называют такое ударное взаимодействие, при котором тела соединяются (слипаются) друг с другом и движутся дальше как одно тело.
При абсолютно неупругом ударе механическая энергия не сохраняется. Она частично или полностью переходит во внутреннюю энергию тел (нагревание).
Абсолютно упругим ударом называется столкновение, при котором сохраняется механическая энергия системы тел.
Во многих случаях столкновения атомов, молекул и элементарных частиц подчиняются законам абсолютно упругого удара.
При абсолютно упругом ударе наряду с законом сохранения импульса выполняется закон сохранения механической энергии.
Простым примером абсолютно упругого столкновения может быть центральный удар двух бильярдных шаров, один из которых до столкновения находился в состоянии покоя.
2 АНАЛИЗ СУЩЕСТВУЮЩИХ СРЕДСТВ ДЛЯ РЕШЕНИЯ ЗАДАЧИ
Язык программирования определяет набор лексических, синтаксических и семантических правил, определяющих внешний вид программы и действия, которые выполнит исполнитель (обычно – ЭВМ) под её управлением.
Далее рассматриваются некоторые популярные языки программирования.
C# – объектно-ориентированный язык программирования. Язык имеет статическую типизацию, поддерживает полиморфизм, перегрузку операторов (в том числе операторов явного и неявного приведения типа), делегаты, атрибуты, события, свойства, обобщённые типы и методы, итераторы.
C# относится к семье языков с C-подобным синтаксисом, из них его синтаксис наиболее близок к C++ и Java.
Переняв многое от своих предшественников – языков C++, Pascal, Модула, Smalltalk и, в особенности, Java – С#, опираясь на практику их использования, исключает некоторые модели, зарекомендовавшие себя как проблематичные при разработке программных систем, например, C# в отличие от C++ не поддерживает множественное наследование классов (между тем допускается множественное наследование интерфейсов).
C# разрабатывался как язык программирования прикладного уровня для CLR и, как таковой, зависит, прежде всего, от возможностей самой CLR. Это касается, прежде всего, системы типов C#, которая отражает BCL. Присутствие или отсутствие тех или иных выразительных особенностей языка диктуется тем, может ли конкретная языковая особенность быть транслирована в соответствующие конструкции CLR. Так, с развитием CLR от версии 1.1 к 2.0 значительно обогатился и сам C#.
Подобного взаимодействия следует ожидать и в дальнейшем (однако, эта закономерность была нарушена с выходом C# 3.0, представляющего собой расширения языка, не опирающиеся на расширения платформы .NET). CLR предоставляет C#, как и всем другим .NET-ориентированным языкам, многие возможности, которых лишены «классические» языки программирования. Например, Сборка мусора не реализована в самом C#, а производится CLR для программ, написанных на C# точно так же, как это делается для программ на VB.NET, J# и др.
Достоинства языка программирования C#:
– подлинная объектная ориентированность;
– компонентно-ориентированное программирование;
– безопасный по сравнению с языками C и C++ код;
– унифицированная система типизации;
– поддержка событийно-ориентированного программирования;
– «родной» язык для создания приложений в среде .NET;
– объединение лучших идей современных языков программирования: Java, C++, Visual Basic и др.
3 ОПИСАНИЕ РАЗРАБОТАННОГО ПРИЛОЖЕНИЯ
3.1 Структура программного комплекса
Разработанное приложение выполняет анимацию движения шаров с их упругим столкновением.
В разработанной программе для реализации имитации движения необходимо ввести с клавиатуры количество шаров, их радиус и выбрать скорость их перемещения с помощью бегунка.
СКРИНШОТЫ РАБОТЫ ПРОГРАММЫ



ЗАКЛЮЧЕНИЕ
В ходе выполнения курсового проекта были получены практические навыки разработки приложений на языке C++, реализующих анимацию движения шаров, а также был углублен практический опыт разработки программного обеспечения в среде Microsoft Visual Studio. Был осмыслен прикладной характер тех знаний, которые были получены на лекциях и практических занятиях. Данной курсовой работой можно подвести итог тому, что было сделано в ходе изучения дисциплины.
В рамках выполнения курсовой работы было разработано приложение, реализующее анимацию движения тел. Данное приложение позволяет осуществлять выбор количества, радиуса и скорости взаимодействующих тел.
В ходе проектирования приложения был проведен анализ поставленной задачи, на основе которого была продумана реализация анимации и интерфейс пользователя. После этого была написана и отлажена программа, реализующая требуемый функционал.
Приложение имеет простой и понятный интерфейс, который позволяет пользователям без труда работать с данным приложением.
Данная курсовая работа помогла освоить не только практические, но и теоретические знания.