Plugins
ug::SmallStrainMechanics::RelativeDensityUpdater< TDomain > Class Template Reference

#include <damage.h>

Public Types

typedef contrained_dim_traits< dim >::contrained_side_type TContrainedSide
 
typedef contrained_dim_traits< dim >::contraining_side_type TContrainingSide
 
typedef grid_dim_traits< dim >::element_type TElem
 
typedef TDomain::grid_type TGrid
 
typedef TDomain::position_accessor_type TPositionAccessor
 
typedef grid_dim_traits< dim >::side_type TSide
 

Public Member Functions

 RelativeDensityUpdater ()
 
void set_debug (SmartPtr< GridFunctionDebugWriter< TDomain, CPUAlgebra > > spDebugWriter)
 
void set_disc_type (const std::string &type)
 
void set_enforce_local_required_beta (bool bEnforce)
 
void set_quad_rule (int quadRuleType)
 
std::vector< numbersolve (SmartPtr< GridFunction< TDomain, CPUAlgebra > > spChi, SmartPtr< GridFunction< TDomain, CPUAlgebra > > spDrivingForce, const number betaStar, const number etaChiStar, const number chiMin, const number dt, const int p, const number rho_target, const number MassTol)
 

Static Public Attributes

static const int dim = TDomain::dim
 

Protected Types

enum  DiscType { _LEAST_SQUARES_ , _TAYLOR_EXPANSION_ , _PARTIAL_INTEGRATION_ , _TAYLOR_DIRECT_ }
 

Protected Member Functions

number DLambda (size_t i)
 
number Lambda (size_t i, SmartPtr< GridFunction< TDomain, CPUAlgebra > > spF)
 
void write_debug (SmartPtr< GridFunction< TDomain, CPUAlgebra > > spGF, std::string name, int call, int iter)
 
void write_stencil_matrix_debug (SmartPtr< GridFunction< TDomain, CPUAlgebra > > spGF, std::string name, int call)
 

Protected Attributes

RevisionCounter m_ApproxSpaceRevision
 
bool m_bEnforceLocalRequiredBeta
 
int m_discType
 
int m_quadRuleType
 
SmartPtr< GridFunction< TDomain, CPUAlgebra > > m_spChiTrial
 
SmartPtr< GridFunctionDebugWriter< TDomain, CPUAlgebra > > m_spDebugWriter
 
SmartPtr< GridFunction< TDomain, CPUAlgebra > > m_spElemSize
 
SmartPtr< GridFunction< TDomain, CPUAlgebra > > m_spLaplaceChi
 
std::vector< std::vector< size_t > > m_vIndex
 
std::vector< std::vector< number > > m_vStencil
 

Member Typedef Documentation

◆ TContrainedSide

template<typename TDomain >
typedef contrained_dim_traits<dim>::contrained_side_type ug::SmallStrainMechanics::RelativeDensityUpdater< TDomain >::TContrainedSide

◆ TContrainingSide

template<typename TDomain >
typedef contrained_dim_traits<dim>::contraining_side_type ug::SmallStrainMechanics::RelativeDensityUpdater< TDomain >::TContrainingSide

◆ TElem

template<typename TDomain >
typedef grid_dim_traits<dim>::element_type ug::SmallStrainMechanics::RelativeDensityUpdater< TDomain >::TElem

◆ TGrid

template<typename TDomain >
typedef TDomain::grid_type ug::SmallStrainMechanics::RelativeDensityUpdater< TDomain >::TGrid

◆ TPositionAccessor

◆ TSide

template<typename TDomain >
typedef grid_dim_traits<dim>::side_type ug::SmallStrainMechanics::RelativeDensityUpdater< TDomain >::TSide

Member Enumeration Documentation

◆ DiscType

template<typename TDomain >
enum ug::SmallStrainMechanics::RelativeDensityUpdater::DiscType
protected
Enumerator
_LEAST_SQUARES_ 
_TAYLOR_EXPANSION_ 
_PARTIAL_INTEGRATION_ 
_TAYLOR_DIRECT_ 

Constructor & Destructor Documentation

◆ RelativeDensityUpdater()

template<typename TDomain >
ug::SmallStrainMechanics::RelativeDensityUpdater< TDomain >::RelativeDensityUpdater ( )
inline

Member Function Documentation

◆ DLambda()

template<typename TDomain >
number ug::SmallStrainMechanics::RelativeDensityUpdater< TDomain >::DLambda ( size_t  i)
inlineprotected

◆ Lambda()

◆ set_debug()

template<typename TDomain >
void ug::SmallStrainMechanics::RelativeDensityUpdater< TDomain >::set_debug ( SmartPtr< GridFunctionDebugWriter< TDomain, CPUAlgebra > >  spDebugWriter)

◆ set_disc_type()

template<typename TDomain >
void ug::SmallStrainMechanics::RelativeDensityUpdater< TDomain >::set_disc_type ( const std::string &  type)

References ug::TrimString(), type(), UG_LOG, and UG_THROW.

◆ set_enforce_local_required_beta()

template<typename TDomain >
void ug::SmallStrainMechanics::RelativeDensityUpdater< TDomain >::set_enforce_local_required_beta ( bool  bEnforce)
inline

◆ set_quad_rule()

template<typename TDomain >
void ug::SmallStrainMechanics::RelativeDensityUpdater< TDomain >::set_quad_rule ( int  quadRuleType)
inline

◆ solve()

template<typename TDomain >
std::vector< number > ug::SmallStrainMechanics::RelativeDensityUpdater< TDomain >::solve ( SmartPtr< GridFunction< TDomain, CPUAlgebra > >  spChi,
SmartPtr< GridFunction< TDomain, CPUAlgebra > >  spDrivingForce,
const number  betaStar,
const number  etaChiStar,
const number  chiMin,
const number  dt,
const int  p,
const number  rho_target,
const number  MassTol 
)

◆ write_debug()

template<typename TDomain >
void ug::SmallStrainMechanics::RelativeDensityUpdater< TDomain >::write_debug ( SmartPtr< GridFunction< TDomain, CPUAlgebra > >  spGF,
std::string  name,
int  call,
int  iter 
)
protected

◆ write_stencil_matrix_debug()

template<typename TDomain >
void ug::SmallStrainMechanics::RelativeDensityUpdater< TDomain >::write_stencil_matrix_debug ( SmartPtr< GridFunction< TDomain, CPUAlgebra > >  spGF,
std::string  name,
int  call 
)
protected

Member Data Documentation

◆ dim

template<typename TDomain >
const int ug::SmallStrainMechanics::RelativeDensityUpdater< TDomain >::dim = TDomain::dim
static

◆ m_ApproxSpaceRevision

template<typename TDomain >
RevisionCounter ug::SmallStrainMechanics::RelativeDensityUpdater< TDomain >::m_ApproxSpaceRevision
protected

◆ m_bEnforceLocalRequiredBeta

template<typename TDomain >
bool ug::SmallStrainMechanics::RelativeDensityUpdater< TDomain >::m_bEnforceLocalRequiredBeta
protected

◆ m_discType

template<typename TDomain >
int ug::SmallStrainMechanics::RelativeDensityUpdater< TDomain >::m_discType
protected

◆ m_quadRuleType

template<typename TDomain >
int ug::SmallStrainMechanics::RelativeDensityUpdater< TDomain >::m_quadRuleType
protected

◆ m_spChiTrial

template<typename TDomain >
SmartPtr<GridFunction<TDomain, CPUAlgebra> > ug::SmallStrainMechanics::RelativeDensityUpdater< TDomain >::m_spChiTrial
protected

◆ m_spDebugWriter

template<typename TDomain >
SmartPtr<GridFunctionDebugWriter<TDomain, CPUAlgebra> > ug::SmallStrainMechanics::RelativeDensityUpdater< TDomain >::m_spDebugWriter
protected

◆ m_spElemSize

template<typename TDomain >
SmartPtr<GridFunction<TDomain, CPUAlgebra> > ug::SmallStrainMechanics::RelativeDensityUpdater< TDomain >::m_spElemSize
protected

◆ m_spLaplaceChi

template<typename TDomain >
SmartPtr<GridFunction<TDomain, CPUAlgebra> > ug::SmallStrainMechanics::RelativeDensityUpdater< TDomain >::m_spLaplaceChi
protected

◆ m_vIndex

template<typename TDomain >
std::vector< std::vector<size_t> > ug::SmallStrainMechanics::RelativeDensityUpdater< TDomain >::m_vIndex
protected

◆ m_vStencil


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