preCICE v3.1.2
Searching...
No Matches
precice::mapping::Polation Class Reference

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

`#include <Polation.hpp>`

Collaboration diagram for precice::mapping::Polation:
[legend]

## Public Member Functions

Polation (const Eigen::VectorXd &location, const mesh::Vertex &element)
Calculate projection to a vertex. Weight is always 1.0.

Polation (const Eigen::VectorXd &location, const mesh::Edge &element)
Calculate projection to an edge.

Polation (const Eigen::VectorXd &location, const mesh::Triangle &element)
Calculate projection to a triangle.

Polation (const Eigen::VectorXd &location, const mesh::Tetrahedron &element)
Calculate projection to a tetrahedron.

const std::vector< WeightedElement > & getWeightedElements () const
Get the weights and indices of the calculated interpolation.

bool isInterpolation () const
Check whether all the weights are positive, which means it is interpolation.

double distance () const
Returns the projection distance.

## Private Attributes

std::vector< WeightedElement_weightedElements

double _distance

## Detailed Description

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.

Definition at line 24 of file Polation.hpp.

## ◆ Polation() [1/4]

 precice::mapping::Polation::Polation ( const Eigen::VectorXd & location, const mesh::Vertex & element )

Calculate projection to a vertex. Weight is always 1.0.

Definition at line 8 of file Polation.cpp.

Here is the call graph for this function:

## ◆ Polation() [2/4]

 precice::mapping::Polation::Polation ( const Eigen::VectorXd & location, const mesh::Edge & element )

Calculate projection to an edge.

Definition at line 15 of file Polation.cpp.

Here is the call graph for this function:

## ◆ Polation() [3/4]

 precice::mapping::Polation::Polation ( const Eigen::VectorXd & location, const mesh::Triangle & element )

Calculate projection to a triangle.

Definition at line 34 of file Polation.cpp.

Here is the call graph for this function:

## ◆ Polation() [4/4]

 precice::mapping::Polation::Polation ( const Eigen::VectorXd & location, const mesh::Tetrahedron & element )

Calculate projection to a tetrahedron.

Definition at line 57 of file Polation.cpp.

Here is the call graph for this function:

## ◆ distance()

 double precice::mapping::Polation::distance ( ) const

Returns the projection distance.

Definition at line 91 of file Polation.cpp.

## ◆ getWeightedElements()

 const std::vector< WeightedElement > & precice::mapping::Polation::getWeightedElements ( ) const

Get the weights and indices of the calculated interpolation.

Definition at line 81 of file Polation.cpp.

## ◆ isInterpolation()

 bool precice::mapping::Polation::isInterpolation ( ) const

Check whether all the weights are positive, which means it is interpolation.

Definition at line 86 of file Polation.cpp.

Here is the call graph for this function:

## ◆ _distance

 double precice::mapping::Polation::_distance
private

Definition at line 49 of file Polation.hpp.

## ◆ _weightedElements

 std::vector precice::mapping::Polation::_weightedElements
private

Definition at line 48 of file Polation.hpp.

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