Class CBCD_NodeIndex

Inheritance Relationships

Base Type

Class Documentation

class CBCD_NodeIndex : public opensn::NodeIndex

Node index specific to CBCD FLUDS.

Does not support delayed nodes. Reclaims the delayed bit for indices.

  • Bit 63: Incoming/outgoing bit.

  • Bit 62: Boundary bit.

  • Bit 61: Local bit.

  • Bits 0-60: Index bits (capacity ~2.3e18).

Index bits

/ / / Index bit mask (1 at the last 61 bits).

Public Functions

constexpr CBCD_NodeIndex() = default

Default constructor.

inline constexpr CBCD_NodeIndex(const std::uint64_t &value)

Direct assign core value.

inline CBCD_NodeIndex(std::uint64_t index, bool is_outgoing, bool is_local)

Construct a non-boundary node index.

Parameters:
  • index – Index into the corresponding bank. Cannot exceed 2^61 - 1.

  • is_outgoing – Flag indicating if the node corresponds to an outgoing face.

  • is_local – Flag indicating if the index is in a local bank.

inline CBCD_NodeIndex(std::uint64_t index, bool is_outgoing)

Construct a boundary node index.

Parameters:
  • index – Index into the corresponding bank. Cannot exceed 2^61 - 1.

  • is_outgoing – Flag indicating if the node corresponds to an outgoing face.

inline bool IsLocal() const noexcept

Check if the current index corresponds to a local bank.

inline std::uint64_t GetIndex() const noexcept

Get the index into the bank.