1 #ifndef __PHYSICS_POST__     2 #define __PHYSICS_POST__     4 #include <deal.II/numerics/data_postprocessor.h>     6 #include "physics/physics.h"     7 #include "physics/model.h"    10 namespace Postprocess {
    24 template <
int dim, 
int nstate>
    32     std::shared_ptr < Physics::ModelBase<dim, nstate, double > > 
model;
    35     std::shared_ptr < Physics::PhysicsBase<dim, nstate, double > > 
physics;
    38     virtual void evaluate_vector_field (
const dealii::DataPostprocessorInputs::Vector<dim> &inputs, std::vector<dealii::Vector<double>> &computed_quantities) 
const override;
    40     virtual void evaluate_scalar_field (
const dealii::DataPostprocessorInputs::Scalar<dim> &inputs, std::vector<dealii::Vector<double>> &computed_quantities) 
const override;
    42     virtual std::vector<std::string> get_names () 
const override;
    44     virtual std::vector<dealii::DataComponentInterpretation::DataComponentInterpretation> get_data_component_interpretation () 
const override;
    46     virtual dealii::UpdateFlags get_needed_update_flags () 
const override;
 Postprocessor to output solution and other values computed by associated physics. ...
Files for the baseline physics. 
Main parameter class that contains the various other sub-parameter classes. 
std::shared_ptr< Physics::ModelBase< dim, nstate, double > > model
Model passed to create_Physics. 
std::shared_ptr< Physics::PhysicsBase< dim, nstate, double > > physics
Physics that the post-processor will use to evaluate derived data types. 
static std::unique_ptr< dealii::DataPostprocessor< dim > > create_Postprocessor(const Parameters::AllParameters *const parameters_input)
Create the post-processor with the correct template parameters.