preCICE v3.1.2
|
Main namespace of the precice library. More...
Namespaces | |
namespace | acceleration |
contains implementations of acceleration schemes. | |
namespace | action |
contains actions to modify exchanged data. | |
namespace | com |
contains the data communication abstraction layer. | |
namespace | config |
namespace | constants |
contains names for files and common value types. | |
namespace | cplscheme |
contains implementations of coupling schemes for coupled simulations. | |
namespace | detail |
namespace | impl |
namespace | io |
provides Import and Export of the coupling mesh and data. | |
namespace | logging |
contains the logging framework. | |
namespace | m2n |
contains the logic of the parallel communication between participants. | |
namespace | mapping |
contains data mapping from points to meshes. | |
namespace | math |
provides general mathematical constants and functions. | |
namespace | mesh |
provides Mesh, Data and primitives. | |
namespace | partition |
contains the partitioning of distributed meshes. | |
namespace | profiling |
contains profiling utilities. | |
namespace | query |
contains geometrical queries. | |
namespace | testing |
contains the testing framework. | |
namespace | time |
contains the time interpolation logic. | |
namespace | tooling |
Contains the preCICE tooling API. | |
namespace | utils |
contains precice-related utilities. | |
namespace | xml |
contains the XML configuration parser. | |
Classes | |
class | Participant |
Main Application Programming Interface of preCICE. Include using #include <precice/precice.hpp> . More... | |
class | span |
A C++ 11 implementation of the non-owning C++20 std::span type. More... | |
Typedefs | |
using | EdgeID = int |
using | TriangleID = int |
using | TetrahedronID = int |
using | DataID = int |
using | MeshID = int |
using | Rank = int |
using | string_view = ::precice::span<const char> |
forwards-compatible typedef for C++17 std::string_view. | |
using | byte = unsigned char |
using | VertexID = int |
Functions | |
template<typename ElementType , std::size_t Extent> | |
constexpr span< ElementType, Extent > | make_span (span< ElementType, Extent > s) noexcept |
template<typename T , std::size_t N> | |
constexpr span< T, N > | make_span (T(&arr)[N]) noexcept |
template<typename T , std::size_t N> | |
PRECICE_SPAN_ARRAY_CONSTEXPR span< T, N > | make_span (std::array< T, N > &arr) noexcept |
template<typename T , std::size_t N> | |
PRECICE_SPAN_ARRAY_CONSTEXPR span< const T, N > | make_span (const std::array< T, N > &arr) noexcept |
template<typename Container > | |
constexpr span< typenamestd::remove_reference< decltype(*detail::data(std::declval< Container & >()))>::type | make_span (Container &cont) |
template<typename Container > | |
constexpr span< const typename Container::value_type > | make_span (const Container &cont) |
template<typename ElementType , std::size_t Extent> | |
span< const byte,((Extent==dynamic_extent) ? dynamic_extent :sizeof(ElementType) *Extent)> | as_bytes (span< ElementType, Extent > s) noexcept |
template<class ElementType , size_t Extent, typename std::enable_if<!std::is_const< ElementType >::value, int >::type = 0> | |
span< byte,((Extent==dynamic_extent) ? dynamic_extent :sizeof(ElementType) *Extent)> | as_writable_bytes (span< ElementType, Extent > s) noexcept |
template<std::size_t N, typename E , std::size_t S> | |
constexpr auto | get (span< E, S > s) -> decltype(s[N]) |
std::string | getVersionInformation () |
Returns information on the version of preCICE. | |
template<typename T > | |
auto | refToSpan (T &element) |
Wraps a single element into a span. | |
Variables | |
bool | syncMode = false |
Enabled further inter- and intra-solver synchronisation. | |
PRECICE_SPAN_INLINE_VAR constexpr std::size_t | dynamic_extent = SIZE_MAX |
Main namespace of the precice library.
Generic test function that is called from the tests for MPIPortsCommunication, MPIDirectCommunication and SocketCommunication
forward declarations.
using precice::byte = unsigned char |
using precice::DataID = int |
using precice::EdgeID = int |
using precice::MeshID = int |
using precice::Rank = int |
using precice::string_view = ::precice::span<const char> |
forwards-compatible typedef for C++17 std::string_view.
The string_view is a read-only view into sequence of characters.
A good mental model for this type is a struct containing a pointer and a size like the following:
It can be constructed from:
In practise, using a function such as Participant::getMeshDimensions() that expects a string_view looks like this:
You can directly pass the string literal:
Or you can pass something string-like:
Definition at line 63 of file Participant.hpp.
using precice::TetrahedronID = int |
using precice::TriangleID = int |
using precice::VertexID = int |
Type used identify a vertex on a mesh.
These IDs are always bound to a mesh. Using a VertexID on another mesh is not allowed and not guaranteed to result in an error. The only valid way of receiving these IDs are by using setMeshVertex(), setMeshVertices(), getMeshVertexIDsAndCoordinates().
There is no guarantee on the values of vertex IDs. Do not rely on them to start at zero or be continuous.
|
noexcept |
|
noexcept |
|
constexpr |
PRECICE_API std::string precice::getVersionInformation | ( | ) |
Returns information on the version of preCICE.
Returns a semicolon-separated C-string containing:
1) the version of preCICE 2) the revision information of preCICE 3) the configuration of preCICE including MPI, PETSC, PYTHON
Definition at line 70 of file Tooling.cpp.
|
constexpr |
|
noexcept |
|
constexpr |
|
constexprnoexcept |
|
noexcept |
|
constexprnoexcept |
auto precice::refToSpan | ( | T & | element | ) |
Wraps a single element into a span.
Definition at line 9 of file span_tools.hpp.
|
constexpr |
|
extern |
Enabled further inter- and intra-solver synchronisation.
Definition at line 17 of file PartitionOfUnityMapping.hpp.