решение дифференциальных уравнений в матрично-векторной форме с использованием odeint в c ++ - PullRequest
0 голосов
/ 31 декабря 2018

Я пытаюсь решить ряд линейных обыкновенных дифференциальных уравнений (ODE) в матричной форме, используя ODEINT, который является одним из пакетов Boost.

Проблема, которую я пытаюсь решить, имеет следующий вид(в формате MATLAB):

dxdt(1:10) = A1*x(1:10) + B1;

dxdt(11:20) = A2*x(11:20) + B2;

, где A1 и A2 - постоянные матрицы, а B1 и B2 - постоянные векторы;«x» - это состояния, которые нужно решить, а «dxdt» - производные по времени от состояний «x».Мой вопрос, как запрограммировать его на C ++, используя ODEINT.Я попробовал несколько вещей, которые я нашел в интернете, но не смог найти никакого правильного способа сделать это.Любая помощь будет оценена.

...