Go to the documentation of this file.00001
00002
00003
00004
00005
00006 #include "MOR_RythmosFullStateReconstructor.hpp"
00007
00008 #include "MOR_ReducedSpace.hpp"
00009
00010 #include "MOR_RythmosStepperFullStateWrapper.hpp"
00011
00012 namespace MOR {
00013
00014 RythmosFullStateReconstructor::RythmosFullStateReconstructor(
00015 const Teuchos::RCP<const ReducedSpace> &reducedSpace,
00016 const Teuchos::RCP<Rythmos::IntegrationObserverBase<double> > &decoratedObserver) :
00017 reducedSpace_(reducedSpace),
00018 decoratedObserver_(decoratedObserver)
00019 {
00020
00021 }
00022
00023 Teuchos::RCP<Rythmos::IntegrationObserverBase<double> > RythmosFullStateReconstructor::cloneIntegrationObserver() const {
00024 return Teuchos::null;
00025 }
00026
00027 void RythmosFullStateReconstructor::resetIntegrationObserver(const Rythmos::TimeRange<double> &integrationTimeDomain) {
00028 decoratedObserver_->resetIntegrationObserver(integrationTimeDomain);
00029 }
00030
00031 void RythmosFullStateReconstructor::observeStartTimeStep(
00032 const Rythmos::StepperBase<double> &stepper,
00033 const Rythmos::StepControlInfo<double> &stepCtrlInfo,
00034 const int timeStepIter) {
00035 const RythmosStepperFullStateWrapper fullStepper(Teuchos::rcpFromRef(stepper), reducedSpace_);
00036 decoratedObserver_->observeStartTimeStep(fullStepper, stepCtrlInfo, timeStepIter);
00037 }
00038
00039 void RythmosFullStateReconstructor::observeCompletedTimeStep(
00040 const Rythmos::StepperBase<double> &stepper,
00041 const Rythmos::StepControlInfo<double> &stepCtrlInfo,
00042 const int timeStepIter) {
00043 const RythmosStepperFullStateWrapper fullStepper(Teuchos::rcpFromRef(stepper), reducedSpace_);
00044 decoratedObserver_->observeCompletedTimeStep(fullStepper, stepCtrlInfo, timeStepIter);
00045 }
00046
00047 }