Shamrock 2025.10.0
Astrophysical Code
Loading...
Searching...
No Matches
shamrock::solvergraph::IFieldSpan< T > Class Template Referenceabstract

Interface for a solver graph edge representing a field as spans. More...

#include <shamrock/include/shamrock/solvergraph/IFieldSpan.hpp>

Inheritance diagram for shamrock::solvergraph::IFieldSpan< T >:
Collaboration diagram for shamrock::solvergraph::IFieldSpan< T >:

Public Member Functions

virtual DDPatchDataFieldSpanPointer< T > & get_spans ()=0
 Get the DistributedData of spans attached to the underlying field.
virtual const DDPatchDataFieldSpanPointer< T > & get_spans () const =0
 Const variant of get_spans.
virtual void check_sizes (const shambase::DistributedData< u32 > &sizes) const =0
 Check that the sizes of the patches in the field match the given sizes.
virtual void ensure_sizes (const shambase::DistributedData< u32 > &sizes)=0
 Ensure that the sizes of the patches in the field match the given sizes (Can resize the underlying fields).
 IEdgeNamed (std::string name, std::string texsymbol)
Public Member Functions inherited from shamrock::solvergraph::IEdgeNamed
 IEdgeNamed (std::string name, std::string texsymbol)
virtual std::string _impl_get_dot_label () const
virtual std::string _impl_get_tex_symbol () const
Public Member Functions inherited from shamrock::solvergraph::IEdge
std::string get_label () const
std::string get_tex_symbol () const
Public Member Functions inherited from shambase::WithUUID< IEdge, u64 >
u64 get_uuid () const
 Get the uuid of the class.
 WithUUID ()
 Constructor of the class.
Public Member Functions inherited from shamrock::solvergraph::IFreeable
virtual void free_alloc ()=0
 Free allocated memory.
virtual ~IFreeable ()
 Virtual destructor.

Additional Inherited Members

Protected Attributes inherited from shambase::WithUUID< IEdge, u64 >
u64 uuid
 The unique identifier of the class.

Detailed Description

template<class T>
class shamrock::solvergraph::IFieldSpan< T >

Interface for a solver graph edge representing a field as spans.

Here a field refer to a field that is distributed over several patches.

Template Parameters
TThe primitive type of the field

Definition at line 37 of file IFieldSpan.hpp.

Member Function Documentation

◆ check_sizes()

◆ ensure_sizes()

template<class T>
virtual void shamrock::solvergraph::IFieldSpan< T >::ensure_sizes ( const shambase::DistributedData< u32 > & sizes)
pure virtual

◆ get_spans() [1/2]

template<class T>
virtual const DDPatchDataFieldSpanPointer< T > & shamrock::solvergraph::IFieldSpan< T >::get_spans ( ) const
pure virtual

◆ get_spans() [2/2]

◆ IEdgeNamed()

template<class T>
shamrock::solvergraph::IEdgeNamed::IEdgeNamed ( std::string name,
std::string texsymbol )
inline

Definition at line 28 of file IEdgeNamed.hpp.


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