preCICE v3.1.2
|
contains data mapping from points to meshes. More...
Namespaces | |
namespace | impl |
namespace | tests |
Classes | |
class | AxialGeoMultiscaleMapping |
Geometric multiscale mapping in axial direction. More... | |
class | BarycentricBaseMapping |
Base class for interpolation based mappings, where mapping is done using a geometry-based linear combination of input values. Subclasses differ by the way computeMapping() fills the _interpolations and by mesh tagging. Mapping itself is shared. More... | |
class | CompactPolynomialC0 |
Wendland radial basis function with compact support. More... | |
class | CompactPolynomialC2 |
Wendland radial basis function with compact support. More... | |
class | CompactPolynomialC4 |
Wendland radial basis function with compact support. More... | |
class | CompactPolynomialC6 |
Wendland radial basis function with compact support. More... | |
class | CompactPolynomialC8 |
Wendland radial basis function with compact support. More... | |
struct | CompactSupportBase |
Base class for RBF with compact support. More... | |
class | CompactThinPlateSplinesC2 |
Radial basis function with compact support. More... | |
struct | DefiniteFunction |
Base class for RBF functions to distinguish positive definite functions. More... | |
class | Gaussian |
Radial basis function with global and compact support. More... | |
class | GinkgoRadialBasisFctSolver |
class | InverseMultiquadrics |
Radial basis function with global support. More... | |
class | LinearCellInterpolationMapping |
Mapping using orthogonal projection to nearest triangle/edge/vertex and linear interpolation from projected point. More... | |
class | Mapping |
Abstract base class for mapping of data from one mesh to another. More... | |
class | MappingConfiguration |
Performs XML configuration and holds configured mappings. More... | |
class | Multiquadrics |
Radial basis function with global support. More... | |
class | NearestNeighborBaseMapping |
class | NearestNeighborGradientMapping |
Mapping using nearest neighboring vertices and their local gradient values. More... | |
class | NearestNeighborMapping |
Mapping using nearest neighboring vertices. More... | |
class | NearestProjectionMapping |
Mapping using orthogonal projection to nearest triangle/edge/vertex and linear interpolation from projected point. More... | |
struct | NoCompactSupportBase |
Base class for RBF without compact support. More... | |
class | PartitionOfUnityMapping |
class | PetRadialBasisFctMapping |
Mapping with radial basis functions using the Petsc library to solve the resulting system. More... | |
class | Polation |
Calculates the barycentric coordinates of a coordinate on the given vertex/edge/triangle and stores the corresponding weights If all barycentric coordinates are positive, the operation is interpolation. If not, it is an extrapolation. More... | |
class | RadialBasisFctBaseMapping |
Mapping with radial basis functions. More... | |
class | RadialBasisFctMapping |
Mapping with radial basis functions. More... | |
class | RadialBasisFctSolver |
struct | RadialBasisParameters |
Wrapper struct that is used to transfer RBF-specific parameters to the GPU. More... | |
class | RadialGeoMultiscaleMapping |
Geometric multiscale mapping in radial direction. More... | |
class | SphericalVertexCluster |
class | ThinPlateSplines |
Radial basis function with global support. More... | |
class | VolumeSplines |
Radial basis function with global support. More... | |
struct | WeightedElement |
Struct that contains weight and index of a vertex. More... | |
Typedefs | |
using | PtrMapping = std::shared_ptr<Mapping> |
using | PtrMappingConfiguration = std::shared_ptr<MappingConfiguration> |
Enumerations | |
enum class | Polynomial { ON , OFF , SEPARATE } |
How to handle the polynomial? More... | |
enum class | BasisFunction { WendlandC0 , WendlandC2 , WendlandC4 , WendlandC6 , WendlandC8 , ThinPlateSplines , Multiquadrics , InverseMultiquadrics , VolumeSplines , Gaussian , CompactThinPlateSplinesC2 } |
enum class | GinkgoSolverType { CG , GMRES , QR } |
enum class | GinkgoPreconditionerType { Jacobi , Cholesky , None } |
Functions | |
bool | operator< (Mapping::MeshRequirement lhs, Mapping::MeshRequirement rhs) |
std::ostream & | operator<< (std::ostream &out, Mapping::MeshRequirement val) |
std::ostream & | operator<< (std::ostream &os, const WeightedElement &w) |
Make the WeightedElement printable. | |
std::ostream & | operator<< (std::ostream &os, const Polation &p) |
Make the Polation class printable. | |
double | computeSquaredDifference (const std::array< double, 3 > &u, std::array< double, 3 > v, const std::array< bool, 3 > &activeAxis={{true, true, true}}) |
Deletes all dead directions from fullVector and returns a vector of reduced dimensionality. | |
template<typename IndexContainer > | |
constexpr void | reduceActiveAxis (const mesh::Mesh &mesh, const IndexContainer &IDs, std::array< bool, 3 > &axis) |
given the active axis, computes sets the axis with the lowest spatial expansion to dead | |
template<typename IndexContainer > | |
void | fillPolynomialEntries (Eigen::MatrixXd &matrix, const mesh::Mesh &mesh, const IndexContainer &IDs, Eigen::Index startIndex, std::array< bool, 3 > activeAxis) |
template<typename RADIAL_BASIS_FUNCTION_T , typename IndexContainer > | |
Eigen::MatrixXd | buildMatrixCLU (RADIAL_BASIS_FUNCTION_T basisFunction, const mesh::Mesh &inputMesh, const IndexContainer &inputIDs, std::array< bool, 3 > activeAxis, Polynomial polynomial) |
template<typename RADIAL_BASIS_FUNCTION_T , typename IndexContainer > | |
Eigen::MatrixXd | buildMatrixA (RADIAL_BASIS_FUNCTION_T basisFunction, const mesh::Mesh &inputMesh, const IndexContainer &inputIDs, const mesh::Mesh &outputMesh, const IndexContainer outputIDs, std::array< bool, 3 > activeAxis, Polynomial polynomial) |
Variables | |
const std::map< std::string, GinkgoSolverType > | solverTypeLookup |
const std::map< std::string, GinkgoPreconditionerType > | preconditionerTypeLookup |
const std::map< std::string, std::function< std::shared_ptr< gko::Executor >(const unsigned int, const bool)> > | ginkgoExecutorLookup |
Definition at line 11 of file SharedPointer.hpp.
Definition at line 12 of file SharedPointer.hpp.
|
strong |
Enumerator | |
---|---|
WendlandC0 | |
WendlandC2 | |
WendlandC4 | |
WendlandC6 | |
WendlandC8 | |
ThinPlateSplines | |
Multiquadrics | |
InverseMultiquadrics | |
VolumeSplines | |
Gaussian | |
CompactThinPlateSplinesC2 |
Definition at line 17 of file MappingConfigurationTypes.hpp.
|
strong |
Enumerator | |
---|---|
Jacobi | |
Cholesky | |
None |
Definition at line 60 of file GinkgoRadialBasisFctSolver.hpp.
|
strong |
Enumerator | |
---|---|
CG | |
GMRES | |
QR |
Definition at line 54 of file GinkgoRadialBasisFctSolver.hpp.
|
strong |
How to handle the polynomial?
ON: Include it in the system matrix OFF: Omit it altogether SEPARATE: Compute it separately using least-squares QR.
Enumerator | |
---|---|
ON | |
OFF | |
SEPARATE |
Definition at line 11 of file MappingConfigurationTypes.hpp.
Eigen::MatrixXd precice::mapping::buildMatrixA | ( | RADIAL_BASIS_FUNCTION_T | basisFunction, |
const mesh::Mesh & | inputMesh, | ||
const IndexContainer & | inputIDs, | ||
const mesh::Mesh & | outputMesh, | ||
const IndexContainer | outputIDs, | ||
std::array< bool, 3 > | activeAxis, | ||
Polynomial | polynomial ) |
Eigen::MatrixXd precice::mapping::buildMatrixCLU | ( | RADIAL_BASIS_FUNCTION_T | basisFunction, |
const mesh::Mesh & | inputMesh, | ||
const IndexContainer & | inputIDs, | ||
std::array< bool, 3 > | activeAxis, | ||
Polynomial | polynomial ) |
|
inline |
Deletes all dead directions from fullVector and returns a vector of reduced dimensionality.
Definition at line 78 of file RadialBasisFctSolver.hpp.
|
inline |
bool precice::mapping::operator< | ( | Mapping::MeshRequirement | lhs, |
Mapping::MeshRequirement | rhs ) |
Defines an ordering for MeshRequirement in terms of specificality
[in] | lhs | the left-hand side of the binary operator |
[in] | rhs | the right-hand side of the binary operator |
Definition at line 262 of file Mapping.cpp.
std::ostream & precice::mapping::operator<< | ( | std::ostream & | os, |
const Polation & | p ) |
Make the Polation class printable.
Definition at line 101 of file Polation.cpp.
std::ostream & precice::mapping::operator<< | ( | std::ostream & | os, |
const WeightedElement & | w ) |
Make the WeightedElement printable.
Definition at line 96 of file Polation.cpp.
std::ostream & precice::mapping::operator<< | ( | std::ostream & | out, |
Mapping::MeshRequirement | val ) |
Defines the output operation to streams
[in,out] | out | stream to output to. |
[in] | val | the value to output. |
Definition at line 275 of file Mapping.cpp.
|
constexpr |
given the active axis, computes sets the axis with the lowest spatial expansion to dead
Definition at line 93 of file RadialBasisFctSolver.hpp.
const std::map<std::string, std::function<std::shared_ptr<gko::Executor>(const unsigned int, const bool)> > precice::mapping::ginkgoExecutorLookup |
Definition at line 78 of file GinkgoRadialBasisFctSolver.hpp.
const std::map<std::string, GinkgoPreconditionerType> precice::mapping::preconditionerTypeLookup |
Definition at line 73 of file GinkgoRadialBasisFctSolver.hpp.
const std::map<std::string, GinkgoSolverType> precice::mapping::solverTypeLookup |
Definition at line 68 of file GinkgoRadialBasisFctSolver.hpp.