waves
Basic FE playground
SpectralApproach< Scalar, Device > Class Template Reference

A class that constructs realization(s) of Gaussian or exponential scalar random field based on the spectral approach. More...

#include <wSpectralApproach.h>

Public Types

typedef Teuchos::ScalarTraits< Scalar >::coordinateType MeshScalar
 

Public Member Functions

 SpectralApproach (Kokkos::View< Scalar **, Kokkos::LayoutLeft, Device > _Z, Kokkos::View< Scalar **, Kokkos::LayoutLeft, Device > _Phi, MeshScalar _a=20, MeshScalar _r=8, size_t _muw=512, bool Gaussian=true)
 
KOKKOS_INLINE_FUNCTION Scalar operator() (const MeshScalar x, const MeshScalar y) const
 

Public Attributes

Kokkos::View< Scalar **, Kokkos::LayoutLeft, Device > Z
 
Kokkos::View< Scalar **, Kokkos::LayoutLeft, Device > Phi
 
Kokkos::View< MeshScalar *, Kokkos::LayoutLeft, Device > w
 
Kokkos::View< MeshScalar *, Kokkos::LayoutLeft, Device > S
 
MeshScalar a
 
MeshScalar r
 
MeshScalar Dw
 
size_t muw
 

Detailed Description

template<typename Scalar, typename Device>
class SpectralApproach< Scalar, Device >

A class that constructs realization(s) of Gaussian or exponential scalar random field based on the spectral approach.

Member Typedef Documentation

◆ MeshScalar

template<typename Scalar , typename Device >
typedef Teuchos::ScalarTraits<Scalar>::coordinateType SpectralApproach< Scalar, Device >::MeshScalar

Constructor & Destructor Documentation

◆ SpectralApproach()

template<typename Scalar , typename Device >
SpectralApproach< Scalar, Device >::SpectralApproach ( Kokkos::View< Scalar **, Kokkos::LayoutLeft, Device >  _Z,
Kokkos::View< Scalar **, Kokkos::LayoutLeft, Device >  _Phi,
MeshScalar  _a = 20,
MeshScalar  _r = 8,
size_t  _muw = 512,
bool  Gaussian = true 
)
inline

Member Function Documentation

◆ operator()()

template<typename Scalar , typename Device >
KOKKOS_INLINE_FUNCTION Scalar SpectralApproach< Scalar, Device >::operator() ( const MeshScalar  x,
const MeshScalar  y 
) const
inline

Member Data Documentation

◆ a

template<typename Scalar , typename Device >
MeshScalar SpectralApproach< Scalar, Device >::a

◆ Dw

template<typename Scalar , typename Device >
MeshScalar SpectralApproach< Scalar, Device >::Dw

◆ muw

template<typename Scalar , typename Device >
size_t SpectralApproach< Scalar, Device >::muw

◆ Phi

template<typename Scalar , typename Device >
Kokkos::View<Scalar **, Kokkos::LayoutLeft, Device> SpectralApproach< Scalar, Device >::Phi

◆ r

template<typename Scalar , typename Device >
MeshScalar SpectralApproach< Scalar, Device >::r

◆ S

template<typename Scalar , typename Device >
Kokkos::View<MeshScalar *, Kokkos::LayoutLeft, Device> SpectralApproach< Scalar, Device >::S

◆ w

template<typename Scalar , typename Device >
Kokkos::View<MeshScalar *, Kokkos::LayoutLeft, Device> SpectralApproach< Scalar, Device >::w

◆ Z

template<typename Scalar , typename Device >
Kokkos::View<Scalar **, Kokkos::LayoutLeft, Device> SpectralApproach< Scalar, Device >::Z

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