Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

End Sub. 17. Выйдите из среды Visual Basic




Next

17. Выйдите из среды Visual Basic.

18. Выйдите из режима конструктора.

19. Проверьте работоспособность приложения, щелкнув по кнопке «Пуск». Попробуйте поменять число оборотов в ячейке E2, также пронаблюдав результаты изменений.

20. Переименуйте Лист1 в «Движение планет».

21. Сохраните изменения в книге.

22. Перейдите на Лист 2 для выполнения следующего задания лабораторной работы.

 

Задание 2. Модель центрального, абсолютно упругого удара

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

Разработать модель центрального, абсолютного упругого удара двух шариков. Из курса физики известно, что при таком ударе двух тел массой M1 и M2, движущихся со скоростями V1 и V2, соответственно, выполняются законы сохранения импульса:

и закон сохранения энергии:

где U1 и U2 – скорости тел после соударения.

Совместное решение этих двух уравнений позволяет определить сначала значение скорости U1:

а затем и U2:

U2 = V1 + U1 – V2.

Используя эти соотношения, построить модель движения шариков в замкнутом объеме. Шарики имеют определенные начальные скорости и при соударении друг с другом меняют их в соответствии с вышеприведенными формулами. Для того, чтобы соударения происходили многократно, движения шариков ограничены боковыми стенками, при ударе о которые, шарики изменяют свою скорость по направлению, сохраняя ее по величине.

Ход работы.

1. Переименуйте Лист2 в «Упругий удар».

2. Заполните ячейки A1:F2, как на Рис.20.4.

3. В ячейке A5 запишите формулу: «=A1», а в ячейке C5 – «=C1».

4. В ячейке G2 введите формулу, вычисляющую разность между начальным и конечным положением шариков: «=F2 – E2»

5. В ячейках B5 и D5 будет показываться местоположение шариков, вычисляемое в программном коде. Сейчас введите сюда значения из ячеек E2 и F2 (Рис.20.5).

6. В ячейке A4 введите пояснение «1 шар», в ячейке C4 – «2 шар» (Рис.20.5).

Теперь необходимо построить диаграмму таким образом, чтобы получить на ней изображение обоих шариков, положение которых будет зависеть:

· от координат X, находящихся в ячейках B5 и D5;

· от координат Y, равных 2;

· от размеров, зависящих от массы (A5 и C5). Для этого:

7. Выделите диапазон ячеек A5:D5.

8. С помощью Мастера диаграмм выберите тип диаграммы – «Пузырьковая».

9. На шаге 2 построения диаграммы укажите источник данных рядов – «в строках» и перейдите на вкладку «Ряд».

10. Для значения ряда «Ряд 1» установите следующие параметры (Рис.20.6):

· Значения X: = Лист2!$B$5

· Значения Y: = {2}

· Размеры: = Лист2!$A$5

11. Нажмите кнопку «Добавить» под окном «Ряд».

12. Для значения ряда «Ряд 2» установите следующие параметры (Рис.20.7):

· Значения X: = Лист2!$D$5

· Значения Y: = {2}

· Размеры: = Лист2!$C$5

13. В следующем окне, на Шаге 3, уберите легенду и ось значений Y.

14. Введите название диаграммы – «Модель абсолютно упругого удара».

15. Расположите диаграмму на имеющемся листе и настройте ее по своему вкусу.

16. Установите для оси X (подведя курсор мыши к линии OX, щелкнув правой клавишей мыши и выбрав в контекстном меню команду «Формат оси») минимальное и максимальное значение шкалы соответственно 0 и 10, отказавшись от режима «Авто» для этих параметров. Примерный результат – на Рис.20.8.

17. Расположите на Листе «Упругий удар» элемент управления – командную кнопку CommandButton1 (Рис.20.9) и измените ее свойства:

· Caption = «Старт»

· Font, BackColor – по своему усмотрению

18. Напишем следующий программный код для щелчка по кнопке (необходимые комментарии приведены после знака апострофа):

Private Sub CommandButton1_Click()

'получим начальные координаты шариков

xx1 = Cells(2, 5) ' из ячейки E2

xx2 = Cells(2, 6) 'из ячейки F2

'начальные скорости обозначим через dx1 и dx2

'Координату шарика через промежуток времени t

'будем вычислять по известной формуле X=Xo+V*t

'Если t=1/10, тогда dx = v/10. Отсюда:

dx1 = Cells(2, 2) / 10

dx2 = Cells(2, 4) / 10

'Передадим начальные в координаты в текущие, используемые для вычисления

x1 = xx1

x2 = xx2

m1 = Cells(2, 1) 'получим массы шариков из ячеек A2

m2 = Cells(2, 3) 'и С2

'Рассчитаем цикл на 100 раз, принимая то,

'что увеличение счетчика на 1 - это увеличение

'времени на 1/10 с, т.е. в течение 10 условных секунд

For i = 1 To 100

'Первый шарик не должен улететь налево, т.е. если он

'приблизился к левой стенке (координата 0), его скорость

'должна поменяться по знаку, а чтобы шарик не "влипал" в стенку,

'запретим приближаться к ней ближе, чем на 0,5

If x1 <= 0.5 Then dx1 = Abs(x1)

'Для второго шарика "опасна" правая стенка с координатой 10,

'и учетом "влипания" получаем 9,5

If x2 >= 9.5 Then dx2 = -1 * Abs(dx2)

'Если первый шарик (левый) приблизился ко второму менее,

'чем на 1 (размеры шариков), то скорости шариков меняются

'в соответствии с формулами

If x1 >= x2 - 1 Then

a = dx1 ' - это скорость V1 перед ударом

dx1 = (dx1 * (m1 - m2) + 2 * dx2 * m2) / (m1 + m2) ' - это U1

dx2 = a + dx1 - dx2 ' - это U2




Поделиться с друзьями:


Дата добавления: 2014-12-23; Просмотров: 542; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.011 сек.