Численное решение уравнения движения python

Рейтинг: 0Ответов: 1Опубликовано: 04.06.2023

имеется следующее уравнение:

![введите сюда описание изображения

Есть начальные условия x = -2, v = 0. Необходимо найти t, за которое x обнулится. Я использовал примитивный способ, при котором считается, что за малый промежуток времени Δt скорость постоянна, тогда Δx += v * Δt. Таким способом можно найти решение t, но точность не очень хорошая.

Далее, я захотел выразить dt и посчитать интеграл и получил это:

введите сюда описание изображения

введите сюда описание изображения

Я более - менее знаком с методами численного интегрирования, но как считать интеграл с двойным дифференциалом не понятно.

Можете ли Вы мне что - то посоветовать с математикой или какие - нибудь функции численного интегрирования в python?

Ответы

▲ 2

Кратко: никогда. Ни при каком t>=0 x не станет нулевым.

Почему? Потому что начальное x меньше нуля. Ускорение тоже меньше нуля по той же причине. Скорость при отрицательном ускорении тоже становится отрицательной. С течением времени ускорение стремится к нулю, скорость приобретает постоянное отрицательное значение, так что...

График решения имеет примерно такой вид:

введите сюда описание изображения

Если немного подумаете, то увидите, что и при t<0 x никогда не станет нулевым. Пусть это будет для вас домашним заданием...