Das System von ode $ f '(x, t) = f (x, t) $ muss folgende Signatur haben: hereErweiterung der Typ-Signatur des Systems bei Verwendung von `boost :: numeric :: odeint`
void sys(const state_type & /*x*/ , state_type & /*dxdt*/ , const double /*t*/)
{
// ...
}
es ist möglich, an folgende
void sys(const state_type & /*x*/ , state_type & /*dxdt*/ , const double /*t*/, void * params)
{
// do something with params now ...
}
Wie werden Sie die Parameter einstellen? Was ist mit 'boost :: bind'? Sie haben einige Beispiele auf der Seite, auf die Sie verweisen. Sie würden etwas wie boost :: bind (& fn, _1, _2, _3, & params) tun, um die Parameter zu binden und ihr die erforderliche Signatur zu geben. –
@ DanMašek 'params' sind so eingestellt, wie Sie es in Ihrer Antwort getan haben. Ich probiere es aus. Ich werde hier updaten, sobald es funktioniert. – Dilawar