ASPECT
Public Member Functions | Static Public Member Functions | Private Member Functions | Private Attributes | List of all members
aspect::MaterialModel::Averaging< dim > Class Template Reference
Inheritance diagram for aspect::MaterialModel::Averaging< dim >:
Inheritance graph
[legend]

Public Member Functions

virtual void evaluate (const typename Interface< dim >::MaterialModelInputs &in, typename Interface< dim >::MaterialModelOutputs &out) const
 
virtual void parse_parameters (ParameterHandler &prm)
 
virtual bool is_compressible () const
 
virtual double reference_viscosity () const
 
- Public Member Functions inherited from aspect::MaterialModel::Interface< dim >
virtual ~Interface ()
 
virtual void initialize ()
 
virtual void update ()
 
virtual void evaluate (const MaterialModel::MaterialModelInputs< dim > &in, MaterialModel::MaterialModelOutputs< dim > &out) const =0
 
virtual void create_additional_named_outputs (MaterialModelOutputs &outputs) const
 
virtual void fill_additional_material_model_inputs (MaterialModel::MaterialModelInputs< dim > &input, const LinearAlgebra::BlockVector &solution, const FEValuesBase< dim > &fe_values, const Introspection< dim > &introspection) const
 
const NonlinearDependence::ModelDependenceget_model_dependence () const
 
- Public Member Functions inherited from aspect::SimulatorAccess< dim >
 SimulatorAccess ()
 
 SimulatorAccess (const Simulator< dim > &simulator_object)
 
virtual ~SimulatorAccess ()
 
virtual void initialize_simulator (const Simulator< dim > &simulator_object)
 
template<typename PostprocessorType >
PostprocessorType * find_postprocessor () const
 
const Introspection< dim > & introspection () const
 
const Simulator< dim > & get_simulator () const
 
const Parameters< dim > & get_parameters () const
 
SimulatorSignals< dim > & get_signals () const
 
MPI_Comm get_mpi_communicator () const
 
TimerOutputget_computing_timer () const
 
const ConditionalOStreamget_pcout () const
 
double get_time () const
 
double get_timestep () const
 
double get_old_timestep () const
 
unsigned int get_timestep_number () const
 
unsigned int get_nonlinear_iteration () const
 
const parallel::distributed::Triangulation< dim > & get_triangulation () const
 
double get_volume () const
 
const Mapping< dim > & get_mapping () const
 
std::string get_output_directory () const
 
bool include_adiabatic_heating () const
 
bool include_latent_heat () const
 
bool include_melt_transport () const
 
int get_stokes_velocity_degree () const
 
double get_adiabatic_surface_temperature () const
 
double get_surface_pressure () const
 
bool convert_output_to_years () const
 
unsigned int get_pre_refinement_step () const
 
unsigned int n_compositional_fields () const
 
void get_refinement_criteria (Vector< float > &estimated_error_per_cell) const
 
void get_artificial_viscosity (Vector< float > &viscosity_per_cell, const bool skip_interior_cells=false) const
 
void get_artificial_viscosity_composition (Vector< float > &viscosity_per_cell, const unsigned int compositional_variable) const
 
const LinearAlgebra::BlockVectorget_current_linearization_point () const
 
const LinearAlgebra::BlockVectorget_solution () const
 
const LinearAlgebra::BlockVectorget_old_solution () const
 
const LinearAlgebra::BlockVectorget_old_old_solution () const
 
const LinearAlgebra::BlockVectorget_reaction_vector () const
 
const LinearAlgebra::BlockVectorget_mesh_velocity () const
 
const DoFHandler< dim > & get_dof_handler () const
 
const FiniteElement< dim > & get_fe () const
 
const LinearAlgebra::BlockSparseMatrixget_system_matrix () const
 
const LinearAlgebra::BlockSparseMatrixget_system_preconditioner_matrix () const
 
const MaterialModel::Interface< dim > & get_material_model () const
 
void compute_material_model_input_values (const LinearAlgebra::BlockVector &input_solution, const FEValuesBase< dim, dim > &input_finite_element_values, const typename DoFHandler< dim >::active_cell_iterator &cell, const bool compute_strainrate, MaterialModel::MaterialModelInputs< dim > &material_model_inputs) const
 
const GravityModel::Interface< dim > & get_gravity_model () const
 
const InitialTopographyModel::Interface< dim > & get_initial_topography_model () const
 
const GeometryModel::Interface< dim > & get_geometry_model () const
 
const AdiabaticConditions::Interface< dim > & get_adiabatic_conditions () const
 
bool has_boundary_temperature () const
 
DEAL_II_DEPRECATED const BoundaryTemperature::Interface< dim > & get_boundary_temperature () const
 
const BoundaryTemperature::Manager< dim > & get_boundary_temperature_manager () const
 
const BoundaryHeatFlux::Interface< dim > & get_boundary_heat_flux () const
 
bool has_boundary_composition () const
 
DEAL_II_DEPRECATED const BoundaryComposition::Interface< dim > & get_boundary_composition () const
 
const BoundaryComposition::Manager< dim > & get_boundary_composition_manager () const
 
const std::map< types::boundary_id, std::unique_ptr< BoundaryTraction::Interface< dim > > > & get_boundary_traction () const
 
DEAL_II_DEPRECATED const InitialTemperature::Interface< dim > & get_initial_temperature () const
 
const InitialTemperature::Manager< dim > & get_initial_temperature_manager () const
 
DEAL_II_DEPRECATED const InitialComposition::Interface< dim > & get_initial_composition () const
 
const InitialComposition::Manager< dim > & get_initial_composition_manager () const
 
const std::set< types::boundary_id > & get_fixed_temperature_boundary_indicators () const
 
const std::set< types::boundary_id > & get_fixed_heat_flux_boundary_indicators () const
 
const std::set< types::boundary_id > & get_fixed_composition_boundary_indicators () const
 
const std::set< types::boundary_id > & get_free_surface_boundary_indicators () const
 
DEAL_II_DEPRECATED const std::map< types::boundary_id, std::shared_ptr< BoundaryVelocity::Interface< dim > > > get_prescribed_boundary_velocity () const
 
const BoundaryVelocity::Manager< dim > & get_boundary_velocity_manager () const
 
const HeatingModel::Manager< dim > & get_heating_model_manager () const
 
const MeshRefinement::Manager< dim > & get_mesh_refinement_manager () const
 
const MeltHandler< dim > & get_melt_handler () const
 
const VolumeOfFluidHandler< dim > & get_volume_of_fluid_handler () const
 
const NewtonHandler< dim > & get_newton_handler () const
 
const WorldBuilder::World & get_world_builder () const
 
const FreeSurfaceHandler< dim > & get_free_surface_handler () const
 
const LateralAveraging< dim > & get_lateral_averaging () const
 
const ConstraintMatrix & get_current_constraints () const
 
bool simulator_is_initialized () const
 
double get_pressure_scaling () const
 
bool pressure_rhs_needs_compatibility_modification () const
 
bool model_has_prescribed_stokes_solution () const
 
TableHandlerget_statistics_object () const
 
template<typename PostprocessorType >
DEAL_II_DEPRECATED PostprocessorType * find_postprocessor () const
 
const Postprocess::Manager< dim > & get_postprocess_manager () const
 

Static Public Member Functions

static void declare_parameters (ParameterHandler &prm)
 
- Static Public Member Functions inherited from aspect::MaterialModel::Interface< dim >
static void declare_parameters (ParameterHandler &prm)
 
- Static Public Member Functions inherited from aspect::SimulatorAccess< dim >
static void get_composition_values_at_q_point (const std::vector< std::vector< double > > &composition_values, const unsigned int q, std::vector< double > &composition_values_at_q_point)
 

Private Member Functions

AveragingOperation parse_averaging_operation_name (const std::string &s)
 
void average (const AveragingOperation averaging_operation, const std::vector< Point< dim > > &position, std::vector< double > &values_out) const
 

Private Attributes

double bell_shape_limit
 
AveragingOperation averaging_operation
 
std::shared_ptr< MaterialModel::Interface< dim > > base_model
 

Additional Inherited Members

- Public Types inherited from aspect::MaterialModel::Interface< dim >
typedef MaterialModel::MaterialModelInputs< dim > MaterialModelInputs
 
typedef MaterialModel::MaterialModelOutputs< dim > MaterialModelOutputs
 
- Protected Attributes inherited from aspect::MaterialModel::Interface< dim >
NonlinearDependence::ModelDependence model_dependence
 

Detailed Description

template<int dim>
class aspect::MaterialModel::Averaging< dim >

A material model that applies an average of the quadrature points in a cell to a ''base model'' chosen from any of the other available material models.

Definition at line 97 of file averaging.h.

Member Function Documentation

§ evaluate()

template<int dim>
virtual void aspect::MaterialModel::Averaging< dim >::evaluate ( const typename Interface< dim >::MaterialModelInputs in,
typename Interface< dim >::MaterialModelOutputs out 
) const
virtual

Function to compute the material properties in out given the inputs in in.

§ declare_parameters()

template<int dim>
static void aspect::MaterialModel::Averaging< dim >::declare_parameters ( ParameterHandler prm)
static

Method to declare parameters related to depth-dependent model

§ parse_parameters()

template<int dim>
virtual void aspect::MaterialModel::Averaging< dim >::parse_parameters ( ParameterHandler prm)
virtual

Method to parse parameters related to depth-dependent model

Reimplemented from aspect::MaterialModel::Interface< dim >.

§ is_compressible()

template<int dim>
virtual bool aspect::MaterialModel::Averaging< dim >::is_compressible ( ) const
virtual

Method that indicates whether material is compressible. Depth dependent model is compressible if and only if base model is compressible.

Implements aspect::MaterialModel::Interface< dim >.

§ reference_viscosity()

template<int dim>
virtual double aspect::MaterialModel::Averaging< dim >::reference_viscosity ( ) const
virtual

Method to calculate reference viscosity for the depth-dependent model. The reference viscosity is determined by evaluating the depth-dependent part of the viscosity at the mean depth of the model.

Implements aspect::MaterialModel::Interface< dim >.

§ parse_averaging_operation_name()

template<int dim>
AveragingOperation aspect::MaterialModel::Averaging< dim >::parse_averaging_operation_name ( const std::string &  s)
private

Parse a string representing one of the options returned by get_averaging_operation_names(), and return the corresponding AveragingOperation value.

§ average()

template<int dim>
void aspect::MaterialModel::Averaging< dim >::average ( const AveragingOperation  averaging_operation,
const std::vector< Point< dim > > &  position,
std::vector< double > &  values_out 
) const
private

Given the averaging operation, a description of where the quadrature points are located on the given cell, and a mapping, perform this operation on all elements of the values structure.

Member Data Documentation

§ bell_shape_limit

template<int dim>
double aspect::MaterialModel::Averaging< dim >::bell_shape_limit
private

The bell shape limit variable stores the maximum extend of the bell shape for the Normalized Weighed Distance (NWD) averages.

Definition at line 158 of file averaging.h.

§ averaging_operation

template<int dim>
AveragingOperation aspect::MaterialModel::Averaging< dim >::averaging_operation
private

The averaging operation variable stores the chosen averaging operation.

Definition at line 163 of file averaging.h.

§ base_model

template<int dim>
std::shared_ptr<MaterialModel::Interface<dim> > aspect::MaterialModel::Averaging< dim >::base_model
private

Pointer to the material model used as the base model

Definition at line 167 of file averaging.h.


The documentation for this class was generated from the following file: