9 #ifndef Tempus_SolutionStateMetaData_impl_hpp 
   10 #define Tempus_SolutionStateMetaData_impl_hpp 
   12 #include "Tempus_config.hpp" 
   17 template<
class Scalar>
 
   27    nConsecutiveFailures_(0),
 
   33    computeNorms_  (false),
 
   36    outputScreen_  (false),
 
   38    isInterpolated_(false),
 
   42 template<
class Scalar>
 
   47   const Scalar errorAbs,
 
   48   const Scalar errorRel,
 
   51   const int    nRunningFailures,
 
   52   const int    nConsecutiveFailures,
 
   56   const Scalar dxNormL2Rel,
 
   57   const Scalar dxNormL2Abs,
 
   58   const bool   computeNorms,
 
   59   const Status solutionStatus,
 
   61   const bool   outputScreen,
 
   63   const bool   isInterpolated,
 
   64   const Scalar accuracy)
 
   71    nFailures_     (nFailures),
 
   72    nRunningFailures_(nRunningFailures),
 
   73    nConsecutiveFailures_(nConsecutiveFailures),
 
   77    dxNormL2Rel_   (dxNormL2Rel),
 
   78    dxNormL2Abs_   (dxNormL2Abs),
 
   79    computeNorms_  (computeNorms),
 
   80    solutionStatus_(solutionStatus),
 
   82    outputScreen_  (outputScreen),
 
   84    isInterpolated_(isInterpolated),
 
   88 template<
class Scalar>
 
   93    errorAbs_      (ssmd.errorAbs_),
 
   94    errorRel_      (ssmd.errorRel_),
 
   96    nFailures_     (ssmd.nFailures_),
 
   97    nRunningFailures_(ssmd.nRunningFailures_),
 
   98    nConsecutiveFailures_(ssmd.nConsecutiveFailures_),
 
   99    tolRel_        (ssmd.tolRel_),
 
  100    tolAbs_        (ssmd.tolAbs_),
 
  101    dxNormL2Rel_   (ssmd.dxNormL2Rel_),
 
  102    dxNormL2Abs_   (ssmd.dxNormL2Abs_),
 
  103    computeNorms_  (ssmd.computeNorms_),
 
  104    solutionStatus_(ssmd.solutionStatus_),
 
  105    output_        (ssmd.output_),
 
  106    outputScreen_  (ssmd.outputScreen_),
 
  107    isSynced_      (ssmd.isSynced_),
 
  108    isInterpolated_(ssmd.isInterpolated_),
 
  109    accuracy_      (ssmd.accuracy_)
 
  113 template<
class Scalar>
 
  116   Teuchos::RCP<SolutionStateMetaData<Scalar> > md =
 
  126       nConsecutiveFailures_,
 
  144 template<
class Scalar>
 
  149   iStep_          = ssmd->iStep_;
 
  151   errorAbs_       = ssmd->errorAbs_;
 
  152   errorRel_       = ssmd->errorRel_;
 
  153   order_          = ssmd->order_;
 
  154   nFailures_      = ssmd->nFailures_;
 
  155   nRunningFailures_= ssmd->nRunningFailures_;
 
  156   nConsecutiveFailures_ = ssmd->nConsecutiveFailures_;
 
  157   tolRel_         = ssmd->tolRel_,
 
  158   tolAbs_         = ssmd->tolAbs_,
 
  159   xNormL2_        = ssmd->xNormL2_,
 
  160   dxNormL2Rel_    = ssmd->dxNormL2Rel_,
 
  161   dxNormL2Abs_    = ssmd->dxNormL2Abs_,
 
  162   computeNorms_   = ssmd->computeNorms_,
 
  163   solutionStatus_ = ssmd->solutionStatus_;
 
  164   output_         = ssmd->output_;
 
  165   outputScreen_   = ssmd->outputScreen_;
 
  166   isSynced_       = ssmd->isSynced_;
 
  167   isInterpolated_ = ssmd->isInterpolated_;
 
  168   accuracy_       = ssmd->accuracy_;
 
  172 template<
class Scalar>
 
  175   std::string name = 
"Tempus::SolutionStateMetaData";
 
  180 template<
class Scalar>
 
  182    Teuchos::FancyOStream               &out,
 
  183    const Teuchos::EVerbosityLevel      verbLevel)
 const 
  185   if (verbLevel == Teuchos::VERB_EXTREME) {
 
  186     out << description() << 
"::describe:" << std::endl
 
  187         << 
"time           = " << time_ << std::endl
 
  188         << 
"iStep          = " << iStep_ << std::endl
 
  189         << 
"dt             = " << dt_ << std::endl
 
  190         << 
"errorAbs       = " << errorAbs_ << std::endl
 
  191         << 
"errorRel       = " << errorRel_ << std::endl
 
  192         << 
"order          = " << order_ << std::endl
 
  193         << 
"nFailures      = " << nFailures_ << std::endl
 
  194         << 
"nRunningFailures = " << nRunningFailures_<< std::endl
 
  195         << 
"nConsecutiveFailures = " << nConsecutiveFailures_ << std::endl
 
  196         << 
"tolRel         = " << tolRel_ << std::endl
 
  197         << 
"tolAbs         = " << tolAbs_ << std::endl
 
  198         << 
"xNormL2        = " << xNormL2_ << std::endl
 
  199         << 
"dxNormL2Rel    = " << dxNormL2Rel_ << std::endl
 
  200         << 
"dxNormL2Abs    = " << dxNormL2Abs_ << std::endl
 
  201         << 
"computeNorms   = " << computeNorms_ << std::endl
 
  202         << 
"solutionStatus = " << 
toString(solutionStatus_) << std::endl
 
  203         << 
"output         = " << output_ << std::endl
 
  204         << 
"outputScreen   = " << outputScreen_ << std::endl
 
  205         << 
"isSynced       = " << isSynced_ << std::endl
 
  206         << 
"isInterpolated = " << isInterpolated_ << std::endl
 
  207         << 
"accuracy       = " << accuracy_ << std::endl;
 
  212 #endif // Tempus_SolutionStateMetaData_impl_hpp 
const std::string toString(const Status status)
Convert Status to string. 
 
Status
Status for the Integrator, the Stepper and the SolutionState.