Потопахин Виталий Валерьевич 3 Задачи прикладного характера по информатике 3 миф-2, №2, 2000 8 Потопахин Виталий Валерьевич 8 решение

Вид материалаРешение

Содержание


МИФ-2, №3, 2001 Информатика 8-11 класс Потопахин Виталий Валерьевич Приближенное решение некоторых физических задач
Условие задачи
Подобный материал:
1   2   3   4   5   6   7   8   9   ...   21
^

МИФ-2, №3, 2001


Информатика 8-11 класс

Потопахин Виталий Валерьевич

Приближенное решение некоторых физических задач


Программирование – это, прежде всего, удобный инструмент решения различных прикладных задач из различных областей знания. Можно сказать, что программирование – это что-то вроде удобной кочерги, которой хорошо шевелить дрова в печке. Задание, которое вам предложено в этом номере журнала, невелико по размеру, но очень важно. Весь материал состоит из одной задачи из механики, разобранной подробно до алгоритма, а также одной задачи, предложенной для самостоятельного анализа. На их примере нужно попробовать применить алгоритмические знания для решения физической задачи, которая точными методами решается исключительно сложно. На нашем с вами уровне она не решается вовсе, так как описание движения тел в поле силы гравитации друг друга приводят к системе дифференциальных уравнений, которые мы с вами решать не умеем. Программистские умения помогут вам обойтись без высшей математики. В примере рассмотрено движение двух тел, но на самом деле количество тел участвующих в движении не играет роли.

^ Условие задачи

Найти закон движения двух тел, движущихся в поле тяготения друг друга. Назовём их тело А и тело В. Предположим, для упрощения ситуации, что в начальный момент движения тела находятся в покое и рассмотрим последующий процесс движения.

Решение

Во-первых, заметим что чем тела ближе друг к другу, тем больше сила взаимодействия и следовательно тем больше скорость движения тел. А так как движение тел происходит непрерывно, то сила, а с ней и ускорение, а следовательно и скорость изменяются непрерывно от точки к точке. А в известные нам законы движения скорость и ускорение входят как константы:

S = S0 + V0T - равномерное движение

S = S0 + V0T + (AT2)/2 - равноускоренное движение

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

Возьмём следующий закон движения: S = 1 + 5t + t2 пусть начальный момент времени t0 = 0 тогда S0 = 1. Пусть конечный момент времени t1 = 1 тогда S1 = 7 и S = S1 - S0 = 6. Теперь опустим ту часть закона движения которая отвечает за ускоренное движение. Получим S = 1 + 5t - это ничто иное как формула равномерного движения. При t0 = 0 и t1 = 1 получим S0 = 1 и S1 = 6, S = S1 - S0 = 5. Относительная погрешность (6-5)/6*100 = 16,6%

Теперь уменьшим временной интервал. Пусть t0 = 0 и t1 = 0,5. Тогда S0 = 1 и S1 = 3,75

S = S1 - S0 = 2,75 и относительная погрешность будет равна = 6,7%.

Заметим, что с уменьшением временного интервала относительная погрешность также уменьшается следовательно при достаточно маленьком временном интервале результаты расчётов по двум формулам будут практически совпадать.

Предположим, что устраивающая нас погрешность будет на временном интервале t, а процесс движения мы хотели бы наблюдать на интервале ]t0, t1[. Разобьём большой интервал ]t0, t1[ на маленькие интервалы каждый по t. Выше мы выяснили, что для таких интервалов можно считать тело движущимся равномерно, но закон равномерного движения от интервала к интервалу будет изменяться. А именно на каждом интервале нужно перерасчитывать скорость. Закон изменения скорости V=5t. Тогда для N-го интервала V=5Nt и закон движения S = 1 + (5Nt)*t.

Теперь вернёмся к исходной задаче. В ней переменными величинами являются не только скорость, но и ускорение, и сводить такое сложное движение к равномерному нецелесообразно. Допустим, что тела А и В движутся равноускоренно. Тогда вычислительная схема будет следующей:

Разобьём интервал наблюдения ]t0, t1[ на достаточно малые интервалы. Тогда начало и конец N-го интервала будут соответственно в точках Tн=(N-1) t и Tk = Nt При достижении текущим временем начальной точки очередного интервала необходимо произвести перерасчёт параметров закона движения. А именно нужно перевычислить скорость и ускорение: V0 - для текущего интервала равна Vk достигнутой на предыдущем интервале. Ускорение необходимо рассчитать.

Для первого тела a1 = (m2)/r2

Для второго тела a2 = (m1)/r2

При расчётах пройденного пути на каждом интервале будем пользоваться законом равноускоренного движения S = S0 + V0T + (AT2)/2

Алгоритм

Ввести начальные значения:

Векторы скорости тела 1 и тела 2 (пусть они движутся в начальный момент времени).

(Векторы скорости вводятся своими проекциями на оси координат.)

Массу тела 1 и тела 2.

Начальные координаты тела 1 и тела 2.

Исходное значение вектора ускорения = 0

Текущее время =0

Пока текущее время меньше конечного делать

Начало
  1. Если значение текущего времени находится в пределах очередного интервала то
    1. По известным значениям скорости, ускорения, времени и старых координат вычислить новые координаты.
    2. Увеличить текущее значение времени на t
  2. Если значение текущего времени перешло в новый интервал то:
    1. Вычислить новые значения ускорений.

Конец

Контрольное задание

Ниже приводится текст задания для самостоятельного решения. Вам необходимо решить эту задачу, оформить решение отдельно от решений по другим предметам и выслать в адрес Хабаровской краевой заочной физико-математической школы.

И8.1. Тело массы М неподвижно висит на пружине с коэффициентом упругости К. В момент времени t0 тело сместили на расстояние +x (пружину растянули). После чего тело было предоставлено само себе и начало совершать колебательное движение. Построить график изменения величины растяжения пружины в зависимости от времени. Силой трения во всех её проявлениях можно пренебречь.

Подсказки:

Движение тела будет происходить с переменным ускорением. Так как ускорение определяется равнодействующей двух сил, силы тяжести и силы Гука. Сила Гука определяется величиной деформации пружины и поэтому сила Гука будет переменной величиной, а следовательно переменной будет и создаваемое ей ускорение.

Однако, так как нас интересует не точный результат а приблизительный, то можно наблюдаемый интервал разбить на небольшие интервалы внутри которых силу Гука можно положить постоянной величиной.

Но в данной задаче может быть проще поступить немного иначе. Так как сила Гука пропорциональна деформации, то можно положить, что она изменяется не для любой величины деформации, а только тогда, когда величина деформации равная nx где n - это натуральное число.