preCICE v3.1.1
Loading...
Searching...
No Matches
Classes | Namespaces | Functions
Utils.hpp File Reference
#include <algorithm>
#include <array>
#include <mesh/Edge.hpp>
#include <mesh/Mesh.hpp>
#include <optional>
#include <utility>
Include dependency graph for Utils.hpp:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  precice::mesh::Chain< n >
 

Namespaces

namespace  precice
 Main namespace of the precice library.
 
namespace  precice::mapping
 contains data mapping from points to meshes.
 
namespace  precice::mesh
 provides Mesh, Data and primitives.
 

Functions

Vertexprecice::mesh::sharedVertex (Edge &a, Edge &b)
 
double precice::mesh::edgeLength (const Edge &e)
 
template<std::size_t n>
Chain< n > precice::mesh::asChain (std::array< mesh::Edge *, n > edges)
 
template<std::size_t n>
std::array< Vertex *, n > precice::mesh::vertexPtrsFor (Mesh &mesh, const std::array< int, n > &vertexIDs)
 Given a mesh and an array of vertexIDS, this function returns an array of pointers to vertices.
 
template<std::size_t n>
std::array< Eigen::VectorXd, n > precice::mesh::coordsFor (const Mesh &mesh, const std::array< int, n > &vertexIDs)
 Given a mesh and an array of vertexIDS, this function returns an array of coordinates of the vertices.
 
template<std::size_t n>
std::array< Eigen::VectorXd, n > precice::mesh::coordsFor (const std::array< Vertex *, n > &vertexPtrs)
 Given an array of vertex pointers, this function returns an array of coordinates of the vertices.
 
Eigen::VectorXd precice::mesh::integrateSurface (const PtrMesh &mesh, const Eigen::VectorXd &input)
 Given the data and the mesh, this function returns the surface integral. Assumes no overlap exists for the mesh.
 
Eigen::VectorXd precice::mesh::integrateVolume (const PtrMesh &mesh, const Eigen::VectorXd &input)
 Given the data and the mesh, this function returns the volume integral. Assumes no overlap exists for the mesh.
 
template<typename Container >
std::optional< std::size_tprecice::mesh::locateInvalidVertexID (const Mesh &mesh, const Container &container)