Шарик движется в жидкости.

Сообщение №29038 от Вопрос 03 декабря 2003 г. 20:25
Тема: Шарик движется в жидкости.

Маленький покоившийся заряженный шарик начал (под действием эл.поля) двигаться в жидкости.
На него действуют электрическое поле, слабо зависящее от места,
и сила сопротивления жидкости, пропорциональная полю.
Как численно рассчитать его траекторию?
Есть метод Эйлера:
x(t+dt) = x(t) + v(t)dt,
v(t+dt) = v(t) + a(x(t),v(t))dt.
Он не годится: при мелком шаге dt он медленный,
а при большом - неустойчивый,
так как вначале ускорение велико и получается огромная скорость,
новое ускорение (из-за силы сопротивления) становится огромным и отрицательным.
Шарик просто откидывается назад и колеблется туда-сюда..
На самом деле шарик должен плавно разгоняться, не достигая больших скоростей.
В литературе я нашел штук 40 других методов, большинство показались мне очень сложными.
Боюсь, что большинство из них будут тоже неустойчивыми при вязком трении.
Есть ли более быстрый, чем у Эйлера, но устойчивый и простой численный метод для этого случая?



Отклики на это сообщение:

> Маленький покоившийся заряженный шарик начал (под действием эл.поля) двигаться в жидкости.
> На него действуют электрическое поле, слабо зависящее от места,
> и сила сопротивления жидкости, пропорциональная полю.
> Как численно рассчитать его траекторию?
> Есть метод Эйлера:
> x(t+dt) = x(t) + v(t)dt,
> v(t+dt) = v(t) + a(x(t),v(t))dt.
> Он не годится: при мелком шаге dt он медленный,
> а при большом - неустойчивый,
> так как вначале ускорение велико и получается огромная скорость,
> новое ускорение (из-за силы сопротивления) становится огромным и отрицательным.
> Шарик просто откидывается назад и колеблется туда-сюда..
> На самом деле шарик должен плавно разгоняться, не достигая больших скоростей.
> В литературе я нашел штук 40 других методов, большинство показались мне очень сложными.
> Боюсь, что большинство из них будут тоже неустойчивыми при вязком трении.
> Есть ли более быстрый, чем у Эйлера, но устойчивый и простой численный метод для этого случая?
Попробуйте при иттерациях при вычислении скорости подставлять не только что вычисленное в первой строчке x(t+dt) а старое x(t) как у Вас и написано. Это может кардинально повлиять на устойчивость.


> > Маленький покоившийся заряженный шарик начал (под действием эл.поля) двигаться в жидкости.
> > На него действуют электрическое поле, слабо зависящее от места,
> > и сила сопротивления жидкости, пропорциональная полю.
> > Как численно рассчитать его траекторию?
> > Есть метод Эйлера:
> > x(t+dt) = x(t) + v(t)dt,
> > v(t+dt) = v(t) + a(x(t),v(t))dt.
> > Он не годится: при мелком шаге dt он медленный,
> > а при большом - неустойчивый,
> > так как вначале ускорение велико и получается огромная скорость,
> > новое ускорение (из-за силы сопротивления) становится огромным и отрицательным.
> > Шарик просто откидывается назад и колеблется туда-сюда..
> > На самом деле шарик должен плавно разгоняться, не достигая больших скоростей.
> > В литературе я нашел штук 40 других методов, большинство показались мне очень сложными.
> > Боюсь, что большинство из них будут тоже неустойчивыми при вязком трении.
> > Есть ли более быстрый, чем у Эйлера, но устойчивый и простой численный метод для этого случая?
> Попробуйте при иттерациях при вычислении скорости подставлять не только что вычисленное в первой строчке x(t+dt) а старое x(t) как у Вас и написано. Это может кардинально повлиять на устойчивость.

Спасибо, попрбую.


> Спасибо, попрбую.

Избыточное цитирование. Малоинформативное сообщение.


Физика в анимациях - Купить диск - Тесты по физике - Графики on-line

Реклама:
Rambler's Top100