preCICE v3.2.0
Loading...
Searching...
No Matches
precice::mapping::Gaussian Class Reference

Radial basis function with global and compact support. More...

#include <BasisFunctions.hpp>

Inheritance diagram for precice::mapping::Gaussian:
[legend]
Collaboration diagram for precice::mapping::Gaussian:
[legend]

Public Member Functions

 Gaussian (const double shape, const double supportRadius=std::numeric_limits< double >::infinity())
double getSupportRadius () const
double evaluate (const double radius) const
PRECICE_HOST_DEVICE double operator() (const double radius, const RadialBasisParameters params) const
RadialBasisParameters getFunctionParameters ()

Static Public Attributes

static constexpr double cutoffThreshold = 1e-9
 Below that value the function is supposed to be zero. Defines the support radius if not explicitly given.

Private Attributes

double const _shape
double _supportRadius
 Either explicitly set (from cutoffThreshold) or computed supportRadius.
double _deltaY = 0
RadialBasisParameters _params

Additional Inherited Members

Static Public Member Functions inherited from precice::mapping::CompactSupportBase
static constexpr bool hasCompactSupport ()
Static Public Member Functions inherited from precice::mapping::DefiniteFunction< true >
static constexpr bool isStrictlyPositiveDefinite ()

Detailed Description

Radial basis function with global and compact support.

To be used as template parameter for RadialBasisFctMapping. Takes a shape parameter (shape > 0.0) on construction.

Evaluates to: exp(-1 * (shape * radius)^2).

Definition at line 237 of file BasisFunctions.hpp.

Constructor & Destructor Documentation

◆ Gaussian()

precice::mapping::Gaussian::Gaussian ( const double shape,
const double supportRadius = std::numeric_limits<double>::infinity() )
inline

Definition at line 240 of file BasisFunctions.hpp.

Here is the call graph for this function:

Member Function Documentation

◆ evaluate()

double precice::mapping::Gaussian::evaluate ( const double radius) const
inline

Definition at line 269 of file BasisFunctions.hpp.

Here is the call graph for this function:

◆ getFunctionParameters()

RadialBasisParameters precice::mapping::Gaussian::getFunctionParameters ( )
inline

Definition at line 285 of file BasisFunctions.hpp.

◆ getSupportRadius()

double precice::mapping::Gaussian::getSupportRadius ( ) const
inline

Definition at line 264 of file BasisFunctions.hpp.

◆ operator()()

PRECICE_HOST_DEVICE double precice::mapping::Gaussian::operator() ( const double radius,
const RadialBasisParameters params ) const
inline

Definition at line 274 of file BasisFunctions.hpp.

Here is the call graph for this function:

Member Data Documentation

◆ _deltaY

double precice::mapping::Gaussian::_deltaY = 0
private

Definition at line 300 of file BasisFunctions.hpp.

◆ _params

RadialBasisParameters precice::mapping::Gaussian::_params
private

Definition at line 302 of file BasisFunctions.hpp.

◆ _shape

double const precice::mapping::Gaussian::_shape
private

Definition at line 295 of file BasisFunctions.hpp.

◆ _supportRadius

double precice::mapping::Gaussian::_supportRadius
private

Either explicitly set (from cutoffThreshold) or computed supportRadius.

Definition at line 298 of file BasisFunctions.hpp.

◆ cutoffThreshold

double precice::mapping::Gaussian::cutoffThreshold = 1e-9
staticconstexpr

Below that value the function is supposed to be zero. Defines the support radius if not explicitly given.

Definition at line 292 of file BasisFunctions.hpp.


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