MRMD 0.4.0
Multi Resolution Molecular Dynamics
Loading...
Searching...
No Matches
mrmd::weighting_function::Slab Class Reference

#include <weighting_function/Slab.hpp>

Public Types

enum class  InterfaceType { SMOOTH , ABRUPT }
 

Public Member Functions

KOKKOS_INLINE_FUNCTION bool isInATRegion (const real_t &x, const real_t &, const real_t &) const
 
KOKKOS_INLINE_FUNCTION bool isInHYRegion (const real_t &x, const real_t &, const real_t &) const
 
KOKKOS_INLINE_FUNCTION bool isInCGRegion (const real_t &x, const real_t &, const real_t &) const
 
KOKKOS_INLINE_FUNCTION void setWeightInHY (real_t &dx, real_t &absDx, real_t &lambda, real_t &modulatedLambda, real_t &gradLambdaX, real_t &gradLambdaY, real_t &gradLambdaZ) const
 
KOKKOS_INLINE_FUNCTION void setSmoothWeightInHY (real_t &dx, real_t &absDx, real_t &lambda, real_t &modulatedLambda, real_t &gradLambdaX, real_t &gradLambdaY, real_t &gradLambdaZ) const
 
KOKKOS_INLINE_FUNCTION void setAbruptWeightInHY (real_t &lambda, real_t &modulatedLambda, real_t &gradLambdaX, real_t &gradLambdaY, real_t &gradLambdaZ) const
 
KOKKOS_INLINE_FUNCTION void setWeightInAT (real_t &lambda, real_t &modulatedLambda, real_t &gradLambdaX, real_t &gradLambdaY, real_t &gradLambdaZ) const
 
KOKKOS_INLINE_FUNCTION void setWeightInCG (real_t &lambda, real_t &modulatedLambda, real_t &gradLambdaX, real_t &gradLambdaY, real_t &gradLambdaZ) const
 
KOKKOS_INLINE_FUNCTION void operator() (const real_t x, const real_t, const real_t, real_t &lambda, real_t &modulatedLambda, real_t &gradLambdaX, real_t &gradLambdaY, real_t &gradLambdaZ) const
 
 Slab (const Point3D &center, const real_t atomisticRegionDiameter, const real_t hybridRegionDiameter, const idx_t nu, const InterfaceType interfaceType=InterfaceType::SMOOTH)
 

Member Enumeration Documentation

◆ InterfaceType

Enumerator
SMOOTH 
ABRUPT 

Constructor & Destructor Documentation

◆ Slab()

mrmd::weighting_function::Slab::Slab ( const Point3D &  center,
const real_t  atomisticRegionDiameter,
const real_t  hybridRegionDiameter,
const idx_t  nu,
const InterfaceType  interfaceType = InterfaceType::SMOOTH 
)
inline

Member Function Documentation

◆ isInATRegion()

KOKKOS_INLINE_FUNCTION bool mrmd::weighting_function::Slab::isInATRegion ( const real_t &  x,
const real_t &  ,
const real_t &   
) const
inline

◆ isInCGRegion()

KOKKOS_INLINE_FUNCTION bool mrmd::weighting_function::Slab::isInCGRegion ( const real_t &  x,
const real_t &  ,
const real_t &   
) const
inline

◆ isInHYRegion()

KOKKOS_INLINE_FUNCTION bool mrmd::weighting_function::Slab::isInHYRegion ( const real_t &  x,
const real_t &  ,
const real_t &   
) const
inline

◆ operator()()

KOKKOS_INLINE_FUNCTION void mrmd::weighting_function::Slab::operator() ( const real_t  x,
const real_t  ,
const real_t  ,
real_t &  lambda,
real_t &  modulatedLambda,
real_t &  gradLambdaX,
real_t &  gradLambdaY,
real_t &  gradLambdaZ 
) const
inline

◆ setAbruptWeightInHY()

KOKKOS_INLINE_FUNCTION void mrmd::weighting_function::Slab::setAbruptWeightInHY ( real_t &  lambda,
real_t &  modulatedLambda,
real_t &  gradLambdaX,
real_t &  gradLambdaY,
real_t &  gradLambdaZ 
) const
inline

◆ setSmoothWeightInHY()

KOKKOS_INLINE_FUNCTION void mrmd::weighting_function::Slab::setSmoothWeightInHY ( real_t &  dx,
real_t &  absDx,
real_t &  lambda,
real_t &  modulatedLambda,
real_t &  gradLambdaX,
real_t &  gradLambdaY,
real_t &  gradLambdaZ 
) const
inline

◆ setWeightInAT()

KOKKOS_INLINE_FUNCTION void mrmd::weighting_function::Slab::setWeightInAT ( real_t &  lambda,
real_t &  modulatedLambda,
real_t &  gradLambdaX,
real_t &  gradLambdaY,
real_t &  gradLambdaZ 
) const
inline

◆ setWeightInCG()

KOKKOS_INLINE_FUNCTION void mrmd::weighting_function::Slab::setWeightInCG ( real_t &  lambda,
real_t &  modulatedLambda,
real_t &  gradLambdaX,
real_t &  gradLambdaY,
real_t &  gradLambdaZ 
) const
inline

◆ setWeightInHY()

KOKKOS_INLINE_FUNCTION void mrmd::weighting_function::Slab::setWeightInHY ( real_t &  dx,
real_t &  absDx,
real_t &  lambda,
real_t &  modulatedLambda,
real_t &  gradLambdaX,
real_t &  gradLambdaY,
real_t &  gradLambdaZ 
) const
inline

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