8#include <compile_time_options.h>
11#include <deal.II/base/parameter_acceptor.h>
37 template <
typename Description,
int dim,
typename Number =
double>
59 using curl_type = dealii::Tensor<1, dim == 2 ? 1 : dim, T>;
77 const std::string &subsection =
"/Postprocessor");
93 return quantities_.size();
101 return component_names_;
141 bool recompute_bounds_;
144 std::vector<std::string> schlieren_quantities_;
145 std::vector<std::string> vorticity_quantities_;
153 const MPI_Comm &mpi_communicator_;
155 dealii::SmartPointer<const HyperbolicSystem> hyperbolic_system_;
156 dealii::SmartPointer<const OfflineData<dim, Number>> offline_data_;
158 std::vector<std::string> component_names_;
159 std::vector<std::pair<
bool ,
unsigned int>> schlieren_indices_;
160 std::vector<std::pair<
bool ,
unsigned int>> vorticity_indices_;
162 mutable std::vector<std::pair<Number, Number>> bounds_;
163 mutable std::vector<ScalarVector> quantities_;
const std::vector< std::string > component_names() const
Vectors::ScalarVector< Number > ScalarVector
typename Description::HyperbolicSystem HyperbolicSystem
typename Description::template HyperbolicSystemView< dim, Number > View
void reset_bounds() const
dealii::Tensor< 1, dim==2 ? 1 :dim, T > curl_type
unsigned int n_quantities() const
typename View::state_type state_type
dealii::Tensor< 1, dim, T > grad_type
static constexpr auto problem_dimension
void compute(const StateVector &state_vector) const
typename View::StateVector StateVector
Postprocessor(const MPI_Comm &mpi_communicator, const HyperbolicSystem &hyperbolic_system, const OfflineData< dim, Number > &offline_data, const std::string &subsection="/Postprocessor")
#define ACCESSOR_READ_ONLY(member)
dealii::LinearAlgebra::distributed::Vector< Number > ScalarVector
std::tuple< MultiComponentVector< Number, problem_dim >, MultiComponentVector< Number, prec_dim >, BlockVector< Number > > StateVector
Euler::HyperbolicSystem HyperbolicSystem