OGS
NonLinearFbar.h File Reference

Detailed Description

Created on May 3, 2024, 10:47 AM

Definition in file NonLinearFbar.h.

#include <boost/algorithm/string/predicate.hpp>
#include <cmath>
#include <string_view>
#include <tuple>
#include "GMatrix.h"
#include "MathLib/KelvinVector.h"
#include "MathLib/VectorizedTensor.h"
#include "MeshLib/Elements/Element.h"
#include "NumLib/Fem/AverageGradShapeFunction.h"
#include "NumLib/Fem/InitShapeMatrices.h"
#include "NumLib/Fem/Integration/GenericIntegrationMethod.h"
Include dependency graph for NonLinearFbar.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Namespaces

namespace  ProcessLib
namespace  ProcessLib::NonLinearFbar

Enumerations

enum class  ProcessLib::NonLinearFbar::BarDetFType { ProcessLib::NonLinearFbar::ELEMENT_CENTER_VALUE , ProcessLib::NonLinearFbar::ELEMENT_AVERAGE , ProcessLib::NonLinearFbar::NONE }

Functions

BarDetFType ProcessLib::NonLinearFbar::convertStringToDetFBarType (std::string_view const bar_det_f_type_name)
template<int DisplacementDim, int NPOINTS, typename VectorTypeForFbar, typename GradientVectorType, typename DNDX_Type>
VectorTypeForFbar ProcessLib::NonLinearFbar::computeQVector (DNDX_Type const &dNdx, GradientVectorType const &F, bool const)
template<int DisplacementDim, typename GradientVectorType, typename VectorTypeForFbar, typename NodalVectorType, typename ShapeFunction, typename ShapeMatricesType, typename IpData>
std::tuple< double, VectorTypeForFbar > ProcessLib::NonLinearFbar::computeFBarInitialVariablesAverage (std::vector< IpData, Eigen::aligned_allocator< IpData > > const &ip_data, bool const compute_detF0_only, Eigen::VectorXd const &u, NumLib::GenericIntegrationMethod const &integration_method, MeshLib::Element const &element, bool const is_axially_symmetric)
template<int DisplacementDim, typename GradientVectorType, typename GradientMatrixType, typename VectorTypeForFbar, typename ShapeFunction, typename ShapeMatricesType>
std::tuple< double, VectorTypeForFbar > ProcessLib::NonLinearFbar::computeFBarInitialVariablesElementCenter (bool const compute_detF0_only, Eigen::VectorXd const &u, MeshLib::Element const &element, bool const is_axially_symmetric)
template<int DisplacementDim>
MathLib::KelvinVector::KelvinVectorType< DisplacementDim > ProcessLib::NonLinearFbar::identityForF (bool const is_axially_symmetric)
template<int DisplacementDim>
MathLib::KelvinVector::KelvinVectorType< DisplacementDim > ProcessLib::NonLinearFbar::compute2EPlusI (double const alpha_p2, MathLib::KelvinVector::KelvinVectorType< DisplacementDim > const &eps_bar, bool const is_axially_symmetric)