include/meltpooldg/heat/heat_diffuse_operator.hpp Source File
|
Developer Documentation
|
heat_diffuse_operator.hpp
Go to the documentation of this file.
105 * We assume that the density and the specific heat capacity do not dependent on the temperature.
Definition boundary_conditions.hpp:17
A generic utility for managing simulation output data in the MeltPoolDG context.
Definition generic_data_out.hpp:32
Definition heat_diffuse_operator.hpp:111
void pre() final
Prepare for computations (e.g. update ghost values). Can be overridden by derived classes.
Definition heat_diffuse_operator.cpp:139
const VectorType & heat_source
Definition heat_diffuse_operator.hpp:135
dealii::AlignedVector< dealii::VectorizedArray< number > > conductivity_at_q
Definition heat_diffuse_operator.hpp:168
void create_rhs(VectorType &dst, const VectorType &src) const final
Definition heat_diffuse_operator.cpp:785
void rhs_cell_loop(const dealii::MatrixFree< dim, number > &matrix_free, VectorType &dst, const VectorType &src, std::pair< unsigned int, unsigned int > cell_range) const
Definition heat_diffuse_operator.cpp:395
dealii::AlignedVector< dealii::VectorizedArray< number > > rho_cp_at_q
Definition heat_diffuse_operator.hpp:171
const VectorType * level_set_as_heaviside
Definition heat_diffuse_operator.hpp:143
void rhs_cut_cell_loop(VectorType &dst) const
Definition heat_diffuse_operator.cpp:533
void vmult(VectorType &dst, const VectorType &src) const final
Definition heat_diffuse_operator.cpp:181
std::vector< bool > do_update_ghosts
Definition heat_diffuse_operator.hpp:175
const unsigned int heat_quad_idx
Definition heat_diffuse_operator.hpp:125
const unsigned int ls_dof_idx
Definition heat_diffuse_operator.hpp:142
void compute_inverse_diagonal_from_matrixfree(VectorType &diagonal) const final
Compute the inverse diagonal using matrix-free techniques.
Definition heat_diffuse_operator.cpp:273
const bool do_solidification
Definition heat_diffuse_operator.hpp:151
Evaporation::EvaporCoolingInterfaceFluxType evaporative_cooling_interface_flux_type
Definition heat_diffuse_operator.hpp:364
std::unique_ptr< Evaporation::EvaporativeCooling< number > > evaporative_cooling
Definition heat_diffuse_operator.hpp:148
std::tuple< dealii::VectorizedArray< number >, dealii::VectorizedArray< number >, dealii::VectorizedArray< number >, dealii::VectorizedArray< number > > get_material_parameters_and_derivatives(const FECellIntegrator< dim, 1, number > &T_eval, const FECellIntegrator< dim, 1, number > &heaviside_eval, unsigned int q) const
Definition heat_diffuse_operator.cpp:1172
void tangent_local_cell_operation(FECellIntegrator< dim, 1, number > &eval, FECellIntegrator< dim, 1, number > &T_new_eval, FECellIntegrator< dim, 1, number > &T_old_eval, FECellIntegrator< dim, dim, number > &vel_eval, FECellIntegrator< dim, 1, number > &heaviside_eval, FECellIntegrator< dim, 1, number > &heaviside_interpolated_eval, const std::unique_ptr< FECellIntegrator< dim, 1, number > > &mass_flux_eval, bool do_reinit_cells) const
Definition heat_diffuse_operator.cpp:957
const unsigned int heat_dof_idx
Definition heat_diffuse_operator.hpp:124
void internal_compute_diagonal_or_system_matrix(VectorType &diagonal, SparseMatrixType &system_matrix, const bool do_diagonal) const
Definition heat_diffuse_operator.cpp:299
void tangent_boundary_loop(const dealii::MatrixFree< dim, number > &matrix_free, VectorType &dst, const VectorType &src, std::pair< unsigned int, unsigned int > face_range) const
Definition heat_diffuse_operator.cpp:245
std::unique_ptr< const LevelSet::DeltaApproximationBase< number > > delta_phase_weighted
Definition heat_diffuse_operator.hpp:166
const Material< number > & material
Definition heat_diffuse_operator.hpp:123
bool do_level_set_temperature_gradient_interpolation
Definition heat_diffuse_operator.hpp:155
const VectorType & temperature_old
Definition heat_diffuse_operator.hpp:129
void attach_vectors(std::vector< VectorType * > &vectors)
Definition heat_diffuse_operator.cpp:810
const std::vector< std::tuple< const typename dealii::Triangulation< dim, dim >::cell_iterator, std::vector< dealii::Point< dim > >, std::vector< number > > > * surface_mesh_info
Definition heat_diffuse_operator.hpp:362
void register_evaporative_mass_flux(VectorType *evaporative_mass_flux_in, const unsigned int mass_flux_dof_idx_in, const Evaporation::EvaporationData< number > &evapor_data)
Definition heat_diffuse_operator.cpp:95
VectorType conductivity_vec
Definition heat_diffuse_operator.hpp:169
const VectorType & temperature
Definition heat_diffuse_operator.hpp:128
VectorType * evaporative_mass_flux
Definition heat_diffuse_operator.hpp:146
std::vector< dealii::types::boundary_id > bc_radiation_indices
Definition heat_diffuse_operator.hpp:132
const unsigned int heat_no_bc_dof_idx
Definition heat_diffuse_operator.hpp:126
const VectorType * velocity
Definition heat_diffuse_operator.hpp:139
void tangent_cell_loop(const dealii::MatrixFree< dim, number > &matrix_free, VectorType &dst, const VectorType &src, std::pair< unsigned int, unsigned int > cell_range) const
Definition heat_diffuse_operator.cpp:201
std::map< dealii::types::boundary_id, std::shared_ptr< dealii::Function< dim > > > neumann_bc
Definition heat_diffuse_operator.hpp:131
std::vector< dealii::types::boundary_id > bc_convection_indices
Definition heat_diffuse_operator.hpp:133
void distribute_constraints()
Definition heat_diffuse_operator.cpp:818
dealii::FullMatrix< number > ls_to_heat_grad_interpolation_matrix
Definition heat_diffuse_operator.hpp:154
const ScratchData< dim, dim, number > & scratch_data
Definition heat_diffuse_operator.hpp:121
const HeatData< number > & data
Definition heat_diffuse_operator.hpp:122
unsigned int mass_flux_dof_idx
Definition heat_diffuse_operator.hpp:147
void post() final
Finalize for computations (e.g. zero out ghost values). Can be overridden by derived classes.
Definition heat_diffuse_operator.cpp:161
VectorType evapor_heat_source
Definition heat_diffuse_operator.hpp:161
void register_surface_mesh(const std::vector< std::tuple< const typename dealii::Triangulation< dim, dim >::cell_iterator, std::vector< dealii::Point< dim > >, std::vector< number > > > &surface_mesh_info)
Definition heat_diffuse_operator.cpp:84
VectorType evapor_heat_source_projected
Definition heat_diffuse_operator.hpp:162
void attach_output_vectors(GenericDataOut< dim, number > &data_out) const
Definition heat_diffuse_operator.cpp:845
typename OperatorMatrixFree< dim, number >::VectorType VectorType
Definition heat_diffuse_operator.hpp:118
void reinit() final
Reinitialize data structures. Can be overridden by derived classes.
Definition heat_diffuse_operator.cpp:825
void compute_system_matrix_from_matrixfree(SparseMatrixType &system_matrix) const final
Compute a sparse matrix using matrix-free techniques.
Definition heat_diffuse_operator.cpp:288
dealii::AlignedVector< dealii::VectorizedArray< number > > q_vapor
Definition heat_diffuse_operator.hpp:163
void rhs_boundary_loop(const dealii::MatrixFree< dim, number > &matrix_free, VectorType &dst, const VectorType &src, std::pair< unsigned int, unsigned int > face_range) const
Definition heat_diffuse_operator.cpp:721
typename OperatorMatrixFree< dim, number >::SparseMatrixType SparseMatrixType
Definition heat_diffuse_operator.hpp:119
const unsigned int vel_dof_idx
Definition heat_diffuse_operator.hpp:138
void tangent_local_boundary_operation(FEFaceIntegrator< dim, 1, number > &face_eval, FEFaceIntegrator< dim, 1, number > &T_face_eval, bool do_reinit_face) const
Definition heat_diffuse_operator.cpp:1090
std::tuple< dealii::VectorizedArray< number >, dealii::VectorizedArray< number > > get_material_parameters(const FECellIntegrator< dim, 1, number > &T_eval, const FECellIntegrator< dim, 1, number > &heaviside_eval, unsigned int q) const
Definition heat_diffuse_operator.cpp:1135
VectorType rho_cp_vec
Definition heat_diffuse_operator.hpp:172
Definition material.hpp:96
Operator handling matrix-free computations.
Definition operator_base.hpp:190
dealii::TrilinosWrappers::SparseMatrix SparseMatrixType
Definition operator_base.hpp:194
dealii::LinearAlgebra::distributed::Vector< number > VectorType
Definition operator_base.hpp:192
Container for shared scratch data between operations/operators.
Definition scratch_data.hpp:61
Definition apparent_capacity.hpp:9
dealii::FEFaceEvaluation< dim, -1, 0, n_components, number, VectorizedArrayType > FEFaceIntegrator
Definition fe_integrator.hpp:22
dealii::FEEvaluation< dim, -1, 0, n_components, number, VectorizedArrayType > FECellIntegrator
Definition fe_integrator.hpp:14
Definition dealii_tensor.hpp:10
Definition heat_data.hpp:18
Generated by