runOndselPiston, runPiston execute correctly
This commit is contained in:
@@ -6,28 +6,28 @@
|
||||
|
||||
using namespace MbD;
|
||||
|
||||
void MbD::IntegratorInterface::initializeGlobally()
|
||||
void IntegratorInterface::initializeGlobally()
|
||||
{
|
||||
tstart = system->startTime();
|
||||
hout = system->outputStepSize();
|
||||
hmax = system->maxStepSize();
|
||||
hmin = system->minStepSize();
|
||||
tout = system->firstOutputTime();
|
||||
tend = system->endTime();
|
||||
direction = (tstart < tend) ? 1.0 : -1.0;
|
||||
tstart = system->startTime();
|
||||
hout = system->outputStepSize();
|
||||
hmax = system->maxStepSize();
|
||||
hmin = system->minStepSize();
|
||||
tout = system->firstOutputTime();
|
||||
tend = system->endTime();
|
||||
direction = (tstart < tend) ? 1.0 : -1.0;
|
||||
}
|
||||
|
||||
void MbD::IntegratorInterface::setSystem(Solver* sys)
|
||||
void IntegratorInterface::setSystem(Solver* sys)
|
||||
{
|
||||
system = static_cast<SystemSolver*>(sys);
|
||||
}
|
||||
|
||||
void MbD::IntegratorInterface::logString(std::string& str)
|
||||
void IntegratorInterface::logString(std::string& str)
|
||||
{
|
||||
system->logString(str);
|
||||
}
|
||||
|
||||
void MbD::IntegratorInterface::run()
|
||||
void IntegratorInterface::run()
|
||||
{
|
||||
this->preRun();
|
||||
this->initializeLocally();
|
||||
@@ -40,12 +40,37 @@ void MbD::IntegratorInterface::run()
|
||||
this->postRun();
|
||||
}
|
||||
|
||||
int MbD::IntegratorInterface::orderMax()
|
||||
int IntegratorInterface::orderMax()
|
||||
{
|
||||
return system->orderMax;
|
||||
}
|
||||
|
||||
void MbD::IntegratorInterface::incrementTime(double tnew)
|
||||
void IntegratorInterface::incrementTime(double tnew)
|
||||
{
|
||||
system->settime(tnew);
|
||||
}
|
||||
|
||||
void IntegratorInterface::postFirstStep()
|
||||
{
|
||||
assert(false); //Not used.
|
||||
//system->postFirstStep();
|
||||
//if (integrator->istep > 0) {
|
||||
// //"Noise make checking at the start unreliable."
|
||||
// this->checkForDiscontinuity();
|
||||
//}
|
||||
//this->checkForOutputThrough(integrator->t);
|
||||
}
|
||||
|
||||
void IntegratorInterface::interpolateAt(double tArg)
|
||||
{
|
||||
//"Interpolate for system state at tArg and leave system in that state."
|
||||
assert(false);
|
||||
//auto yout = integrator->yDerivat(0, tArg);
|
||||
//auto ydotout = integrator->yDerivat(1, tArg);
|
||||
//auto yddotout = integrator->yDerivat(2, tArg);
|
||||
//system->time(tArg);
|
||||
//system->y(yout);
|
||||
//system->ydot(ydotout);
|
||||
//system->yddot(yddotout);
|
||||
//system->simUpdateAll();
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user