22 #ifndef _aspect_postprocess_visualization_h 23 #define _aspect_postprocess_visualization_h 29 #include <deal.II/base/thread_management.h> 30 #include <deal.II/numerics/data_postprocessor.h> 31 #include <deal.II/base/data_out_base.h> 32 #include <deal.II/numerics/data_out.h> 40 namespace VisualizationPostprocessors
47 const unsigned int N = quantities.size();
48 const unsigned int M = quantities[0].size();
49 for (
unsigned int m=0; m<M; ++m)
52 for (
unsigned int q=0; q<N; ++q)
53 sum += quantities[q](m);
56 for (
unsigned int q=0; q<N; ++q)
178 std::list<std::string>
203 void save (std::map<std::string, std::string> &status_strings)
const;
217 void load (
const std::map<std::string, std::string> &status_strings);
275 std::pair<std::string, std::unique_ptr<Vector<float>>>
276 execute ()
const = 0;
328 std::pair<std::string,std::string>
329 execute (TableHandler &statistics)
override;
357 register_visualization_postprocessor (
const std::string &name,
358 const std::string &description,
359 void (*declare_parameters_function) (ParameterHandler &),
369 std::list<std::string>
388 void save (std::map<std::string, std::string> &status_strings)
const override;
393 void load (
const std::map<std::string, std::string> &status_strings)
override;
399 template <
class Archive>
400 void serialize (Archive &ar,
const unsigned int version);
419 bool output_pointwise_stress_and_strain()
const;
426 <<
"Could not find entry <" 428 <<
"> among the names of registered postprocessors.");
576 void set_last_output_time (
const double current_time);
582 void mesh_changed_signal ();
591 void writer (
const std::string &filename,
592 const std::string &temporary_filename,
593 const std::string &file_contents);
599 std::list<std::unique_ptr<VisualizationPostprocessors::Interface<dim>>>
postprocessors;
625 template <
class Archive>
626 void serialize (Archive &ar,
const unsigned int version);
702 template <
typename DataOutType>
703 void write_description_files (
const DataOutType &data_out,
704 const std::string &solution_file_prefix,
705 const std::vector<std::string> &filenames,
718 template <
typename DataOutType>
719 std::string write_data_out_data(DataOutType &data_out,
721 const std::map<std::string,std::string> &visualization_field_names_and_units)
const;
732 #define ASPECT_REGISTER_VISUALIZATION_POSTPROCESSOR(classname,name,description) \ 733 template class classname<2>; \ 734 template class classname<3>; \ 735 namespace ASPECT_REGISTER_VISUALIZATION_POSTPROCESSOR_ ## classname \ 737 aspect::internal::Plugins::RegisterHelper<aspect::Postprocess::VisualizationPostprocessors::Interface<2>,classname<2>> \ 738 dummy_ ## classname ## _2d (&aspect::Postprocess::Visualization<2>::register_visualization_postprocessor, \ 739 name, description); \ 740 aspect::internal::Plugins::RegisterHelper<aspect::Postprocess::VisualizationPostprocessors::Interface<3>,classname<3>> \ 741 dummy_ ## classname ## _3d (&aspect::Postprocess::Visualization<3>::register_visualization_postprocessor, \ 742 name, description); \ unsigned int output_file_number
virtual void parse_parameters(ParameterHandler &prm)
void write_plugin_graph(std::ostream &output_stream)
virtual void save(std::map< std::string, std::string > &status_strings) const
std::vector< XDMFEntry > xdmf_entries
std::string temporary_output_location
bool output_mesh_velocity
OutputHistory face_output_history
virtual std::string get_physical_units() const
unsigned int maximum_timesteps_between_outputs
std::vector< std::pair< double, std::string > > times_and_pvtu_names
bool write_higher_order_output
virtual std::list< std::string > required_other_postprocessors() const
std::string last_mesh_file_name
bool write_in_background_thread
bool output_undeformed_mesh
std::list< std::unique_ptr< VisualizationPostprocessors::Interface< dim > > > postprocessors
OutputHistory cell_output_history
Interface(const std::string &physical_units="")
void average_quantities(std::vector< Vector< double >> &quantities)
bool pointwise_stress_and_strain
std::vector< std::vector< std::string > > output_file_names_by_timestep
const std::string physical_units
bool output_mesh_displacement
void average(const AveragingOperation operation, const typename DoFHandler< dim >::active_cell_iterator &cell, const Quadrature< dim > &quadrature_formula, const Mapping< dim > &mapping, const MaterialProperties::Property &requested_properties, MaterialModelOutputs< dim > &values_out)
bool output_base_variables_on_mesh_surface
unsigned int last_output_timestep
std::string output_format
static void declare_parameters(ParameterHandler &prm)
virtual void load(const std::map< std::string, std::string > &status_strings)
std::thread background_thread
DeclException1(ProbabilityFunctionNegative, Point< dim >,<< "Your probability density function in the particle generator " "returned a negative probability density for the following position: "<< arg1<< ". Please check your function expression.")