Проблемы реализации интегратора чехарды в C++C++

Программы на C++. Форум разработчиков
Anonymous
Проблемы реализации интегратора чехарды в C++

Сообщение Anonymous »

В настоящее время я пытаюсь реализовать интегратор чехарды как средство численного решения задачи двух тел. Это предназначено для целей Uni, и мне предоставили скелетный код, в котором было необходимо добавить вычисления для начального, финального и других шагов. Мой код не прошел тест из-за того, что он слишком далек от аналитических значений. Глядя на результаты теста, очевидно, что y-компонент вектора положения отличается в 2 раза. После долгих игр с этим я просто не могу найти основную проблему. Буду признателен, если кто-нибудь просмотрит код и поможет мне. Это код, и в конце добавлен тестовый вывод:
#include

ODESolverLeapfrog::ODESolverLeapfrog(const SetNorm &normalisation, std::vector &mass,
double t_final, double dt_initial, double dt_out) :
ODESolverSingleStepBase(normalisation, mass, t_final, dt_initial, dt_out) {
std::cout num_steps_++;
this->i_step_ = 0;

}

ODESolverLeapfrog::~ODESolverLeapfrog() {
std::cout

Подробнее здесь: https://stackoverflow.com/questions/791 ... rator-in-c

Вернуться в «C++»