Peano
Loading...
Searching...
No Matches
ContextDynamicRupture< Shortcuts, basisSize, numberOfVariables, numberOfParameters, T > Class Template Reference

#include <ContextDynamicRupture.h>

Inheritance diagram for ContextDynamicRupture< Shortcuts, basisSize, numberOfVariables, numberOfParameters, T >:
Collaboration diagram for ContextDynamicRupture< Shortcuts, basisSize, numberOfVariables, numberOfParameters, T >:

Public Member Functions

 ContextDynamicRupture (std::string &topography_string, int coarsestMeshLevel, double coarsestMeshSize, double maxAdaptiveDepth, tarch::la::Vector< DIMENSIONS, double > _domainOffset, tarch::la::Vector< DIMENSIONS, double > _domainSize, T *_nodes, T *_dudx)
 
void initRuptureModel (std::string &filename_rupture_model)
 
bool riemannSolver (T *FL, T *FR, const T *const QL, const T *const QR, const double t, const double dt, const tarch::la::Vector< DIMENSIONS, double > &facePos, const tarch::la::Vector< DIMENSIONS, double > &cellSize, const int direction, bool isBoundaryFace, int faceIndex, int surface=2)
 
void initialStressTensor (T &sxx, T &syy, T &szz, T &sxy, T &sxz, T &syz, double *const x)
 
void preStress (T &T0_n, T &T0_m, T &T0_l, double *const x, double t, T *const l, T *const m, T *const n)
 
boxcar (T &f, double x, T w)
 
void tauStrength (T &tau_str, T sigma_n, T S, double *const x, double t)
 
void slipWeakening (T &v1, T &v2, T &Vel, T &tau1, T &tau2, T phi_1, T phi_2, T eta, T tau_str, T sigma_n)
 
void slipWeakeningFriction (T vn_p, T vn_m, T Tn_p, T Tn_m, T zn_p, T zn_m, T &vn_hat_p, T &vn_hat_m, T &Tn_hat_p, T &Tn_hat_m, T vm_p, T vm_m, T Tm_p, T Tm_m, T zl_p, T zl_m, T &vm_hat_p, T &vm_hat_m, T &Tm_hat_p, T &Tm_hat_m, T vl_p, T vl_m, T Tl_p, T Tl_m, T zm_p, T zm_m, T &vl_hat_p, T &vl_hat_m, T &Tl_hat_p, T &Tl_hat_m, T *const l, T *const m, T *const n, double *const x, T S, double t)
 
- Public Member Functions inherited from ContextCurvilinear< Shortcuts, basisSize, numberOfVariables+numberOfParameters, T >
 ContextCurvilinear (std::string &topography_string, int coarsestMeshLevel, double coarsestMeshSize, double maxAdaptiveDepth, tarch::la::Vector< DIMENSIONS, double > _domainOffset, tarch::la::Vector< DIMENSIONS, double > _domainSize, T *_nodes, T *_dudx)
 
toolbox::curvi::Root * getRoot ()
 
 ~ContextCurvilinear ()
 
void initUnknownsPatch (T *luh, const tarch::la::Vector< DIMENSIONS, double > &center, const tarch::la::Vector< DIMENSIONS, double > &dx, double t, double dt, std::function< void(const T *const x, const tarch::la::Vector< DIMENSIONS, double > &center, const double t, const double dt, T *Q)> initUnknownsPointwise)
 
void correctPointSourceLocation (double pointSourceLocation[][3])
 
void getElementSize (const T *const luh, tarch::la::Vector< DIMENSIONS, double > &dx)
 
void getElementCenter (const T *const luh, tarch::la::Vector< DIMENSIONS, double > &center)
 
toolbox::curvi::Interface * getInterface ()
 

Data Fields

double domainSize [DIMENSIONS]
 
easi::Component * model
 
S_c
 
mu_d
 
mu_s
 
t0_rupture
 
f_cy
 These define the position of the area with frictional cohesion.
 
f_wy
 
f_cz
 
f_wz
 
fault_position
 
toolbox::curvi::Coordinate fault_normal
 
- Data Fields inherited from ContextCurvilinear< Shortcuts, basisSize, numberOfVariables+numberOfParameters, T >
double max_dx
 

Additional Inherited Members

- Protected Attributes inherited from ContextCurvilinear< Shortcuts, basisSize, numberOfVariables+numberOfParameters, T >
toolbox::curvi::Interface * interface
 
double nodes [basisSize]
 
double dudx [basisSize][basisSize]
 
double domainOffset [3]
 
const int meshLevel
 

Detailed Description

template<class Shortcuts, int basisSize, int numberOfVariables, int numberOfParameters, typename T>
class ContextDynamicRupture< Shortcuts, basisSize, numberOfVariables, numberOfParameters, T >

Definition at line 9 of file ContextDynamicRupture.h.

Constructor & Destructor Documentation

◆ ContextDynamicRupture()

template<class Shortcuts , int basisSize, int numberOfVariables, int numberOfParameters, typename T >
ContextDynamicRupture< Shortcuts, basisSize, numberOfVariables, numberOfParameters, T >::ContextDynamicRupture ( std::string & topography_string,
int coarsestMeshLevel,
double coarsestMeshSize,
double maxAdaptiveDepth,
tarch::la::Vector< DIMENSIONS, double > _domainOffset,
tarch::la::Vector< DIMENSIONS, double > _domainSize,
T * _nodes,
T * _dudx )

Member Function Documentation

◆ boxcar()

template<class Shortcuts , int basisSize, int numberOfVariables, int numberOfParameters, typename T >
T ContextDynamicRupture< Shortcuts, basisSize, numberOfVariables, numberOfParameters, T >::boxcar ( T & f,
double x,
T w )

Definition at line 122 of file dynamicRupture.h.

◆ initialStressTensor()

template<class Shortcuts , int basisSize, int numberOfVariables, int numberOfParameters, typename T >
void ContextDynamicRupture< Shortcuts, basisSize, numberOfVariables, numberOfParameters, T >::initialStressTensor ( T & sxx,
T & syy,
T & szz,
T & sxy,
T & sxz,
T & syz,
double *const x )

Definition at line 10 of file dynamicRupture.h.

◆ initRuptureModel()

template<class Shortcuts , int basisSize, int numberOfVariables, int numberOfParameters, typename T >
void ContextDynamicRupture< Shortcuts, basisSize, numberOfVariables, numberOfParameters, T >::initRuptureModel ( std::string & filename_rupture_model)

◆ preStress()

template<class Shortcuts , int basisSize, int numberOfVariables, int numberOfParameters, typename T >
void ContextDynamicRupture< Shortcuts, basisSize, numberOfVariables, numberOfParameters, T >::preStress ( T & T0_n,
T & T0_m,
T & T0_l,
double *const x,
double t,
T *const l,
T *const m,
T *const n )

Definition at line 37 of file dynamicRupture.h.

References Numerics::rotateIntoOrthogonalBasis().

Here is the call graph for this function:

◆ riemannSolver()

template<class Shortcuts , int basisSize, int numberOfVariables, int numberOfParameters, typename T >
bool ContextDynamicRupture< Shortcuts, basisSize, numberOfVariables, numberOfParameters, T >::riemannSolver ( T * FL,
T * FR,
const T *const QL,
const T *const QR,
const double t,
const double dt,
const tarch::la::Vector< DIMENSIONS, double > & facePos,
const tarch::la::Vector< DIMENSIONS, double > & cellSize,
const int direction,
bool isBoundaryFace,
int faceIndex,
int surface = 2 )

◆ slipWeakening()

template<class Shortcuts , int basisSize, int numberOfVariables, int numberOfParameters, typename T >
void ContextDynamicRupture< Shortcuts, basisSize, numberOfVariables, numberOfParameters, T >::slipWeakening ( T & v1,
T & v2,
T & Vel,
T & tau1,
T & tau2,
T phi_1,
T phi_2,
T eta,
T tau_str,
T sigma_n )

Definition at line 141 of file dynamicRupture.h.

◆ slipWeakeningFriction()

template<class Shortcuts , int basisSize, int numberOfVariables, int numberOfParameters, typename T >
void ContextDynamicRupture< Shortcuts, basisSize, numberOfVariables, numberOfParameters, T >::slipWeakeningFriction ( T vn_p,
T vn_m,
T Tn_p,
T Tn_m,
T zn_p,
T zn_m,
T & vn_hat_p,
T & vn_hat_m,
T & Tn_hat_p,
T & Tn_hat_m,
T vm_p,
T vm_m,
T Tm_p,
T Tm_m,
T zl_p,
T zl_m,
T & vm_hat_p,
T & vm_hat_m,
T & Tm_hat_p,
T & Tm_hat_m,
T vl_p,
T vl_m,
T Tl_p,
T Tl_m,
T zm_p,
T zm_m,
T & vl_hat_p,
T & vl_hat_m,
T & Tl_hat_p,
T & Tl_hat_m,
T *const l,
T *const m,
T *const n,
double *const x,
T S,
double t )

continuity of normal velocity

continuity of normal stress

continuity of normal velocity

Definition at line 163 of file dynamicRupture.h.

◆ tauStrength()

template<class Shortcuts , int basisSize, int numberOfVariables, int numberOfParameters, typename T >
void ContextDynamicRupture< Shortcuts, basisSize, numberOfVariables, numberOfParameters, T >::tauStrength ( T & tau_str,
T sigma_n,
T S,
double *const x,
double t )

Definition at line 75 of file dynamicRupture.h.

Field Documentation

◆ domainSize

template<class Shortcuts , int basisSize, int numberOfVariables, int numberOfParameters, typename T >
double ContextDynamicRupture< Shortcuts, basisSize, numberOfVariables, numberOfParameters, T >::domainSize[DIMENSIONS]

◆ f_cy

template<class Shortcuts , int basisSize, int numberOfVariables, int numberOfParameters, typename T >
T ContextDynamicRupture< Shortcuts, basisSize, numberOfVariables, numberOfParameters, T >::f_cy

These define the position of the area with frictional cohesion.

Specifically, these define a rectangle of size 2*f_wy x 2*f_wz in the y-z axis centered around the point f_cy x f_cz. If within this rectangle, frictional cohesion applies, otherwise it does not. i.e. if -f_wy < y - f_cy < f_wy and -f_wz < z - f_cz < f_wz, frictional cohesion applies.

Definition at line 179 of file ContextDynamicRupture.h.

Referenced by ContextDynamicRupture< Shortcuts, basisSize, numberOfVariables, numberOfParameters, T >::initRuptureModel().

◆ f_cz

template<class Shortcuts , int basisSize, int numberOfVariables, int numberOfParameters, typename T >
T ContextDynamicRupture< Shortcuts, basisSize, numberOfVariables, numberOfParameters, T >::f_cz

◆ f_wy

template<class Shortcuts , int basisSize, int numberOfVariables, int numberOfParameters, typename T >
T ContextDynamicRupture< Shortcuts, basisSize, numberOfVariables, numberOfParameters, T >::f_wy

◆ f_wz

template<class Shortcuts , int basisSize, int numberOfVariables, int numberOfParameters, typename T >
T ContextDynamicRupture< Shortcuts, basisSize, numberOfVariables, numberOfParameters, T >::f_wz

◆ fault_normal

template<class Shortcuts , int basisSize, int numberOfVariables, int numberOfParameters, typename T >
toolbox::curvi::Coordinate ContextDynamicRupture< Shortcuts, basisSize, numberOfVariables, numberOfParameters, T >::fault_normal

◆ fault_position

template<class Shortcuts , int basisSize, int numberOfVariables, int numberOfParameters, typename T >
T ContextDynamicRupture< Shortcuts, basisSize, numberOfVariables, numberOfParameters, T >::fault_position

◆ model

template<class Shortcuts , int basisSize, int numberOfVariables, int numberOfParameters, typename T >
easi::Component* ContextDynamicRupture< Shortcuts, basisSize, numberOfVariables, numberOfParameters, T >::model

◆ mu_d

template<class Shortcuts , int basisSize, int numberOfVariables, int numberOfParameters, typename T >
T ContextDynamicRupture< Shortcuts, basisSize, numberOfVariables, numberOfParameters, T >::mu_d

◆ mu_s

template<class Shortcuts , int basisSize, int numberOfVariables, int numberOfParameters, typename T >
T ContextDynamicRupture< Shortcuts, basisSize, numberOfVariables, numberOfParameters, T >::mu_s

◆ S_c

template<class Shortcuts , int basisSize, int numberOfVariables, int numberOfParameters, typename T >
T ContextDynamicRupture< Shortcuts, basisSize, numberOfVariables, numberOfParameters, T >::S_c

◆ t0_rupture

template<class Shortcuts , int basisSize, int numberOfVariables, int numberOfParameters, typename T >
T ContextDynamicRupture< Shortcuts, basisSize, numberOfVariables, numberOfParameters, T >::t0_rupture

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