OGS
|
Definition at line 32 of file SmallDeformationLocalAssemblerFracture.h.
#include <SmallDeformationLocalAssemblerFracture.h>
Public Types | |
using | ShapeMatricesType |
using | NodalMatrixType = typename ShapeMatricesType::NodalMatrixType |
using | NodalVectorType = typename ShapeMatricesType::NodalVectorType |
using | ShapeMatrices = typename ShapeMatricesType::ShapeMatrices |
using | HMatricesType = HMatrixPolicyType<ShapeFunction, DisplacementDim> |
using | HMatrixType = typename HMatricesType::HMatrixType |
using | StiffnessMatrixType = typename HMatricesType::StiffnessMatrixType |
using | NodalForceVectorType = typename HMatricesType::NodalForceVectorType |
using | NodalDisplacementVectorType |
using | ForceVectorType = typename HMatricesType::ForceVectorType |
using | GlobalDimVectorType = Eigen::Matrix<double, DisplacementDim, 1> |
Public Member Functions | |
SmallDeformationLocalAssemblerFracture (SmallDeformationLocalAssemblerFracture const &)=delete | |
SmallDeformationLocalAssemblerFracture (SmallDeformationLocalAssemblerFracture &&)=delete | |
SmallDeformationLocalAssemblerFracture (MeshLib::Element const &e, std::size_t const n_variables, std::size_t const local_matrix_size, std::vector< unsigned > const &dofIndex_to_localIndex, NumLib::GenericIntegrationMethod const &integration_method, bool const is_axially_symmetric, SmallDeformationProcessData< DisplacementDim > &process_data) | |
void | assemble (double const, double const, std::vector< double > const &, std::vector< double > const &, std::vector< double > &, std::vector< double > &, std::vector< double > &) override |
void | assembleWithJacobian (double const t, double const dt, Eigen::VectorXd const &local_u, Eigen::VectorXd &local_b, Eigen::MatrixXd &local_J) override |
void | preTimestepConcrete (std::vector< double > const &, double const, double const) override |
void | computeSecondaryVariableConcreteWithVector (const double t, Eigen::VectorXd const &local_u) override |
Eigen::Map< const Eigen::RowVectorXd > | getShapeMatrix (const unsigned integration_point) const override |
Provides the shape matrix at the given integration point. | |
std::vector< double > const & | getIntPtSigma (const double, std::vector< GlobalVector * > const &, std::vector< NumLib::LocalToGlobalIndexMap const * > const &, std::vector< double > &cache) const override |
std::vector< double > const & | getIntPtEpsilon (const double, std::vector< GlobalVector * > const &, std::vector< NumLib::LocalToGlobalIndexMap const * > const &, std::vector< double > &cache) const override |
std::vector< double > const & | getIntPtFractureStress (const double t, std::vector< GlobalVector * > const &x, std::vector< NumLib::LocalToGlobalIndexMap const * > const &dof_table, std::vector< double > &cache) const override |
std::vector< double > const & | getIntPtFractureAperture (const double t, std::vector< GlobalVector * > const &x, std::vector< NumLib::LocalToGlobalIndexMap const * > const &dof_table, std::vector< double > &cache) const override |
Public Member Functions inherited from ProcessLib::LIE::SmallDeformation::SmallDeformationLocalAssemblerInterface | |
SmallDeformationLocalAssemblerInterface () | |
SmallDeformationLocalAssemblerInterface (std::size_t n_local_size, std::vector< unsigned > dofIndex_to_localIndex) | |
void | assembleWithJacobian (double const t, double const dt, std::vector< double > const &local_x_, std::vector< double > const &, std::vector< double > &local_b_data, std::vector< double > &local_Jac_data) override |
void | computeSecondaryVariableConcrete (double const t, double const, Eigen::VectorXd const &local_x, Eigen::VectorXd const &) override |
Public Member Functions inherited from ProcessLib::LocalAssemblerInterface | |
virtual | ~LocalAssemblerInterface ()=default |
virtual void | setInitialConditions (std::size_t const mesh_item_id, std::vector< NumLib::LocalToGlobalIndexMap const * > const &dof_tables, std::vector< GlobalVector * > const &x, double const t, int const process_id) |
virtual void | initialize (std::size_t const mesh_item_id, NumLib::LocalToGlobalIndexMap const &dof_table) |
virtual void | preAssemble (double const, double const, std::vector< double > const &) |
virtual void | assembleForStaggeredScheme (double const t, double const dt, Eigen::VectorXd const &local_x, Eigen::VectorXd const &local_x_prev, int const process_id, std::vector< double > &local_M_data, std::vector< double > &local_K_data, std::vector< double > &local_b_data) |
virtual void | assembleWithJacobianForStaggeredScheme (double const t, double const dt, Eigen::VectorXd const &local_x, Eigen::VectorXd const &local_x_prev, int const process_id, std::vector< double > &local_b_data, std::vector< double > &local_Jac_data) |
virtual void | computeSecondaryVariable (std::size_t const mesh_item_id, std::vector< NumLib::LocalToGlobalIndexMap const * > const &dof_tables, double const t, double const dt, std::vector< GlobalVector * > const &x, GlobalVector const &x_prev, int const process_id) |
virtual void | preTimestep (std::size_t const mesh_item_id, NumLib::LocalToGlobalIndexMap const &dof_table, GlobalVector const &x, double const t, double const delta_t) |
virtual void | postTimestep (std::size_t const mesh_item_id, std::vector< NumLib::LocalToGlobalIndexMap const * > const &dof_tables, std::vector< GlobalVector * > const &x, std::vector< GlobalVector * > const &x_prev, double const t, double const dt, int const process_id) |
void | postNonLinearSolver (std::size_t const mesh_item_id, std::vector< NumLib::LocalToGlobalIndexMap const * > const &dof_tables, std::vector< GlobalVector * > const &x, std::vector< GlobalVector * > const &x_prev, double const t, double const dt, int const process_id) |
virtual Eigen::Vector3d | getFlux (MathLib::Point3d const &, double const, std::vector< double > const &) const |
virtual Eigen::Vector3d | getFlux (MathLib::Point3d const &, double const, std::vector< std::vector< double > > const &) const |
Fits to staggered scheme. | |
Public Member Functions inherited from NumLib::ExtrapolatableElement | |
virtual | ~ExtrapolatableElement ()=default |
Private Types | |
using | IntegrationPointDataType |
Private Attributes | |
SmallDeformationProcessData< DisplacementDim > & | _process_data |
std::vector< FractureProperty * > | _fracture_props |
std::vector< JunctionProperty * > | _junction_props |
std::unordered_map< int, int > | _fracID_to_local |
FractureProperty const * | _fracture_property = nullptr |
std::vector< IntegrationPointDataType, Eigen::aligned_allocator< IntegrationPointDataType > > | _ip_data |
NumLib::GenericIntegrationMethod const & | _integration_method |
std::vector< ShapeMatrices, Eigen::aligned_allocator< typename ShapeMatricesType::ShapeMatrices > > | _shape_matrices |
MeshLib::Element const & | _element |
SecondaryData< typename ShapeMatrices::ShapeType > | _secondary_data |
Additional Inherited Members | |
Protected Member Functions inherited from ProcessLib::LIE::SmallDeformation::SmallDeformationLocalAssemblerInterface |
using ProcessLib::LIE::SmallDeformation::SmallDeformationLocalAssemblerFracture< ShapeFunction, DisplacementDim >::ForceVectorType = typename HMatricesType::ForceVectorType |
Definition at line 49 of file SmallDeformationLocalAssemblerFracture.h.
using ProcessLib::LIE::SmallDeformation::SmallDeformationLocalAssemblerFracture< ShapeFunction, DisplacementDim >::GlobalDimVectorType = Eigen::Matrix<double, DisplacementDim, 1> |
Definition at line 50 of file SmallDeformationLocalAssemblerFracture.h.
using ProcessLib::LIE::SmallDeformation::SmallDeformationLocalAssemblerFracture< ShapeFunction, DisplacementDim >::HMatricesType = HMatrixPolicyType<ShapeFunction, DisplacementDim> |
Definition at line 41 of file SmallDeformationLocalAssemblerFracture.h.
using ProcessLib::LIE::SmallDeformation::SmallDeformationLocalAssemblerFracture< ShapeFunction, DisplacementDim >::HMatrixType = typename HMatricesType::HMatrixType |
Definition at line 43 of file SmallDeformationLocalAssemblerFracture.h.
|
private |
Definition at line 147 of file SmallDeformationLocalAssemblerFracture.h.
using ProcessLib::LIE::SmallDeformation::SmallDeformationLocalAssemblerFracture< ShapeFunction, DisplacementDim >::NodalDisplacementVectorType |
Definition at line 46 of file SmallDeformationLocalAssemblerFracture.h.
using ProcessLib::LIE::SmallDeformation::SmallDeformationLocalAssemblerFracture< ShapeFunction, DisplacementDim >::NodalForceVectorType = typename HMatricesType::NodalForceVectorType |
Definition at line 45 of file SmallDeformationLocalAssemblerFracture.h.
using ProcessLib::LIE::SmallDeformation::SmallDeformationLocalAssemblerFracture< ShapeFunction, DisplacementDim >::NodalMatrixType = typename ShapeMatricesType::NodalMatrixType |
Definition at line 38 of file SmallDeformationLocalAssemblerFracture.h.
using ProcessLib::LIE::SmallDeformation::SmallDeformationLocalAssemblerFracture< ShapeFunction, DisplacementDim >::NodalVectorType = typename ShapeMatricesType::NodalVectorType |
Definition at line 39 of file SmallDeformationLocalAssemblerFracture.h.
using ProcessLib::LIE::SmallDeformation::SmallDeformationLocalAssemblerFracture< ShapeFunction, DisplacementDim >::ShapeMatrices = typename ShapeMatricesType::ShapeMatrices |
Definition at line 40 of file SmallDeformationLocalAssemblerFracture.h.
using ProcessLib::LIE::SmallDeformation::SmallDeformationLocalAssemblerFracture< ShapeFunction, DisplacementDim >::ShapeMatricesType |
Definition at line 36 of file SmallDeformationLocalAssemblerFracture.h.
using ProcessLib::LIE::SmallDeformation::SmallDeformationLocalAssemblerFracture< ShapeFunction, DisplacementDim >::StiffnessMatrixType = typename HMatricesType::StiffnessMatrixType |
Definition at line 44 of file SmallDeformationLocalAssemblerFracture.h.
|
delete |
|
delete |
ProcessLib::LIE::SmallDeformation::SmallDeformationLocalAssemblerFracture< ShapeFunction, DisplacementDim >::SmallDeformationLocalAssemblerFracture | ( | MeshLib::Element const & | e, |
std::size_t const | n_variables, | ||
std::size_t const | local_matrix_size, | ||
std::vector< unsigned > const & | dofIndex_to_localIndex, | ||
NumLib::GenericIntegrationMethod const & | integration_method, | ||
bool const | is_axially_symmetric, | ||
SmallDeformationProcessData< DisplacementDim > & | process_data ) |
Definition at line 31 of file SmallDeformationLocalAssemblerFracture-impl.h.
References ProcessLib::LIE::SmallDeformation::SmallDeformationLocalAssemblerFracture< ShapeFunction, DisplacementDim >::_element, ProcessLib::LIE::SmallDeformation::SmallDeformationLocalAssemblerFracture< ShapeFunction, DisplacementDim >::_fracID_to_local, ProcessLib::LIE::SmallDeformation::SmallDeformationLocalAssemblerFracture< ShapeFunction, DisplacementDim >::_fracture_property, ProcessLib::LIE::SmallDeformation::SmallDeformationLocalAssemblerFracture< ShapeFunction, DisplacementDim >::_fracture_props, ProcessLib::LIE::SmallDeformation::SmallDeformationLocalAssemblerFracture< ShapeFunction, DisplacementDim >::_integration_method, ProcessLib::LIE::SmallDeformation::SmallDeformationLocalAssemblerFracture< ShapeFunction, DisplacementDim >::_ip_data, ProcessLib::LIE::SmallDeformation::SmallDeformationLocalAssemblerFracture< ShapeFunction, DisplacementDim >::_junction_props, ProcessLib::LIE::SmallDeformation::SmallDeformationLocalAssemblerFracture< ShapeFunction, DisplacementDim >::_process_data, ProcessLib::LIE::SmallDeformation::SmallDeformationLocalAssemblerFracture< ShapeFunction, DisplacementDim >::_secondary_data, ProcessLib::LIE::SmallDeformation::SmallDeformationLocalAssemblerFracture< ShapeFunction, DisplacementDim >::_shape_matrices, ProcessLib::LIE::FractureProperty::aperture0, ProcessLib::computeHMatrix(), MeshLib::Element::getDimension(), MeshLib::Element::getID(), NumLib::GenericIntegrationMethod::getNumberOfPoints(), MathLib::WeightedPoint::getWeight(), NumLib::GenericIntegrationMethod::getWeightedPoint(), ProcessLib::LIE::SmallDeformation::SecondaryData< ShapeMatrixType >::N, ParameterLib::SpatialPosition::setElementID(), ProcessLib::LIE::SmallDeformation::SmallDeformationProcessData< DisplacementDim >::vec_ele_connected_fractureIDs, and ProcessLib::LIE::SmallDeformation::SmallDeformationProcessData< DisplacementDim >::vec_ele_connected_junctionIDs.
|
inlineoverridevirtual |
Reimplemented from ProcessLib::LocalAssemblerInterface.
Definition at line 66 of file SmallDeformationLocalAssemblerFracture.h.
References OGS_FATAL.
|
overridevirtual |
Reimplemented from ProcessLib::LIE::SmallDeformation::SmallDeformationLocalAssemblerInterface.
Definition at line 111 of file SmallDeformationLocalAssemblerFracture-impl.h.
References ProcessLib::LIE::computePhysicalCoordinates(), ProcessLib::LIE::duGlobalEnrichments(), ParameterLib::SpatialPosition::setElementID(), and ParameterLib::SpatialPosition::setIntegrationPoint().
|
overridevirtual |
Implements ProcessLib::LIE::SmallDeformation::SmallDeformationLocalAssemblerInterface.
Definition at line 245 of file SmallDeformationLocalAssemblerFracture-impl.h.
References ProcessLib::LIE::computePhysicalCoordinates(), ProcessLib::LIE::duGlobalEnrichments(), OGS_FATAL, ParameterLib::SpatialPosition::setElementID(), and ParameterLib::SpatialPosition::setIntegrationPoint().
|
inlineoverridevirtual |
Implements ProcessLib::LIE::SmallDeformation::SmallDeformationLocalAssemblerInterface.
Definition at line 118 of file SmallDeformationLocalAssemblerFracture.h.
|
overridevirtual |
Implements ProcessLib::LIE::SmallDeformation::SmallDeformationLocalAssemblerInterface.
Definition at line 377 of file SmallDeformationLocalAssemblerFracture-impl.h.
References ProcessLib::getIntegrationPointScalarData().
|
overridevirtual |
Implements ProcessLib::LIE::SmallDeformation::SmallDeformationLocalAssemblerInterface.
Definition at line 354 of file SmallDeformationLocalAssemblerFracture-impl.h.
References MathLib::createZeroedMatrix().
|
inlineoverridevirtual |
Implements ProcessLib::LIE::SmallDeformation::SmallDeformationLocalAssemblerInterface.
Definition at line 108 of file SmallDeformationLocalAssemblerFracture.h.
|
inlineoverridevirtual |
Provides the shape matrix at the given integration point.
Implements NumLib::ExtrapolatableElement.
Definition at line 99 of file SmallDeformationLocalAssemblerFracture.h.
References ProcessLib::LIE::SmallDeformation::SmallDeformationLocalAssemblerFracture< ShapeFunction, DisplacementDim >::_secondary_data, and ProcessLib::LIE::SmallDeformation::SecondaryData< ShapeMatrixType >::N.
|
inlineoverridevirtual |
Reimplemented from ProcessLib::LocalAssemblerInterface.
Definition at line 83 of file SmallDeformationLocalAssemblerFracture.h.
References ProcessLib::LIE::SmallDeformation::SmallDeformationLocalAssemblerFracture< ShapeFunction, DisplacementDim >::_integration_method, ProcessLib::LIE::SmallDeformation::SmallDeformationLocalAssemblerFracture< ShapeFunction, DisplacementDim >::_ip_data, and NumLib::GenericIntegrationMethod::getNumberOfPoints().
|
private |
|
private |
|
private |
|
private |
|
private |
Definition at line 153 of file SmallDeformationLocalAssemblerFracture.h.
Referenced by ProcessLib::LIE::SmallDeformation::SmallDeformationLocalAssemblerFracture< ShapeFunction, DisplacementDim >::SmallDeformationLocalAssemblerFracture(), and ProcessLib::LIE::SmallDeformation::SmallDeformationLocalAssemblerFracture< ShapeFunction, DisplacementDim >::preTimestepConcrete().
|
private |
Definition at line 151 of file SmallDeformationLocalAssemblerFracture.h.
Referenced by ProcessLib::LIE::SmallDeformation::SmallDeformationLocalAssemblerFracture< ShapeFunction, DisplacementDim >::SmallDeformationLocalAssemblerFracture(), and ProcessLib::LIE::SmallDeformation::SmallDeformationLocalAssemblerFracture< ShapeFunction, DisplacementDim >::preTimestepConcrete().
|
private |
|
private |
|
private |
Definition at line 158 of file SmallDeformationLocalAssemblerFracture.h.
Referenced by ProcessLib::LIE::SmallDeformation::SmallDeformationLocalAssemblerFracture< ShapeFunction, DisplacementDim >::SmallDeformationLocalAssemblerFracture(), and ProcessLib::LIE::SmallDeformation::SmallDeformationLocalAssemblerFracture< ShapeFunction, DisplacementDim >::getShapeMatrix().
|
private |