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)
 ~ContextDynamicRupture ()
void 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 > &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]
AsagiReaderasagiReader
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
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 11 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 )

◆ ~ContextDynamicRupture()

template<class Shortcuts, int basisSize, int numberOfVariables, int numberOfParameters, typename T>
ContextDynamicRupture< Shortcuts, basisSize, numberOfVariables, numberOfParameters, T >::~ContextDynamicRupture ( )

Definition at line 65 of file ContextDynamicRupture.h.

References asagiReader.

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.

Referenced by tauStrength().

Here is the caller graph for this function:

◆ 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.

References model.

Referenced by preStress().

Here is the caller graph for this function:

◆ 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)

Definition at line 37 of file ContextDynamicRupture.h.

References asagiReader, f_cy, f_cz, f_wy, f_wz, model, mu_d, mu_s, S_c, and t0_rupture.

◆ 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 initialStressTensor(), model, and Numerics::rotateIntoOrthogonalBasis().

Referenced by slipWeakeningFriction().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ riemannSolver()

template<class Shortcuts, int basisSize, int numberOfVariables, int numberOfParameters, typename T>
void 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 > & 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.

Referenced by slipWeakeningFriction().

Here is the caller graph for this function:

◆ 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.

References preStress(), slipWeakening(), and tauStrength().

Referenced by riemannSolver().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ 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.

References boxcar(), f_cy, f_cz, f_wy, f_wz, model, mu_d, mu_s, and t0_rupture.

Referenced by slipWeakeningFriction().

Here is the call graph for this function:
Here is the caller graph for this function:

Field Documentation

◆ asagiReader

template<class Shortcuts, int basisSize, int numberOfVariables, int numberOfParameters, typename T>
AsagiReader* ContextDynamicRupture< Shortcuts, basisSize, numberOfVariables, numberOfParameters, T >::asagiReader

Definition at line 119 of file ContextDynamicRupture.h.

Referenced by initRuptureModel(), and ~ContextDynamicRupture().

◆ domainSize

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

Definition at line 117 of file ContextDynamicRupture.h.

Referenced by ContextDynamicRupture(), and riemannSolver().

◆ 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 140 of file ContextDynamicRupture.h.

Referenced by initRuptureModel(), and tauStrength().

◆ f_cz

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

Definition at line 142 of file ContextDynamicRupture.h.

Referenced by initRuptureModel(), and tauStrength().

◆ f_wy

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

Definition at line 141 of file ContextDynamicRupture.h.

Referenced by initRuptureModel(), and tauStrength().

◆ f_wz

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

Definition at line 143 of file ContextDynamicRupture.h.

Referenced by initRuptureModel(), and tauStrength().

◆ 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

Definition at line 124 of file ContextDynamicRupture.h.

Referenced by initRuptureModel(), and tauStrength().

◆ mu_s

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

Definition at line 125 of file ContextDynamicRupture.h.

Referenced by initRuptureModel(), and tauStrength().

◆ S_c

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

Definition at line 123 of file ContextDynamicRupture.h.

Referenced by initRuptureModel().

◆ t0_rupture

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

Definition at line 129 of file ContextDynamicRupture.h.

Referenced by initRuptureModel(), and tauStrength().


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