SheafSystem
0.0.0.0
|
A bounded domain for ternary_index objects. More...
#include <ternary_index_space.h>
Public Member Functions | |
bool | invariant () const |
Class invariant. More... | |
ternary_index_space () | |
Creates an instance with bound (0,0,0). More... | |
ternary_index_space (unary_index xi_size, unary_index xj_size, unary_index xk_size) | |
Creates an instance with bound (xi_size, xj_size, xk_size). More... | |
void | put_bounds (unary_index xi_size, unary_index xj_size, unary_index xk_size) |
Sets i_size = xi_size, j_size = xj_size, k_size = xk_size and recomputes size. More... | |
ternary_index_space (unary_index xl) | |
Conversion from unary_index; interpreted as cube. More... | |
ternary_index_space | operator+ (const ternary_index_space &xother) const |
Sum. More... | |
ternary_index_space | operator* (const ternary_index_space &xother) const |
Cartesian product. More... | |
bool | contains (const ternary_index &xindex) const |
True if xindex is in this space. More... | |
bool | contains (const unary_index &xindex) const |
True if xindex is in this space. More... | |
unary_index | to_row_major_offset (const ternary_index &xindex) const |
Converts xindex to a unary_index using row-major ordering. More... | |
unary_index | to_row_major_offset (const unary_index xi, const unary_index xj, const unary_index xk) const |
Converts (xi, xj, xk) to a unary_index using row-major ordering. More... | |
ternary_index | from_row_major_offset (const unary_index &xindex) const |
Converts xindex to a ternary_index using row-major ordering. More... | |
unary_index | to_col_major_offset (const ternary_index &xindex) const |
Converts xindex to a unary_index using col-major ordering. More... | |
unary_index | to_col_major_offset (const unary_index xi, const unary_index xj, const unary_index xk) const |
Converts xindex to a unary_index using col-major ordering. More... | |
ternary_index | from_col_major_offset (const unary_index &xindex) const |
Converts xindex to a ternary_index using col-major ordering. More... | |
ragged_array< unary_index > * | neighbor_list () const |
Create a ragged array containing the row major offsets of the neighbors of each index in the index space. More... | |
Public Attributes | |
unary_index | i_size |
Upper bound for the first index. More... | |
unary_index | j_size |
Upper bound for the second index. More... | |
unary_index | k_size |
Upper bound for the third index. More... | |
unary_index | size |
Number in the space. More... | |
A bounded domain for ternary_index objects.
Definition at line 41 of file ternary_index_space.h.
|
inline |
Creates an instance with bound (0,0,0).
Definition at line 80 of file ternary_index_space.h.
|
inline |
Creates an instance with bound (xi_size, xj_size, xk_size).
Definition at line 103 of file ternary_index_space.h.
|
inline |
Conversion from unary_index; interpreted as cube.
Definition at line 156 of file ternary_index_space.h.
|
inline |
True if xindex is in this space.
Definition at line 229 of file ternary_index_space.h.
References fiber_bundle::ternary_index::i, fiber_bundle::ternary_index::j, and fiber_bundle::ternary_index::k.
|
inline |
True if xindex is in this space.
Definition at line 255 of file ternary_index_space.h.
|
inline |
Converts xindex to a ternary_index using col-major ordering.
Definition at line 381 of file ternary_index_space.h.
|
inline |
Converts xindex to a ternary_index using row-major ordering.
Definition at line 315 of file ternary_index_space.h.
|
inline |
Class invariant.
Definition at line 67 of file ternary_index_space.h.
sheaf::ragged_array< unary_index > * fiber_bundle::ternary_index_space::neighbor_list | ( | ) | const |
Create a ragged array containing the row major offsets of the neighbors of each index in the index space.
Definition at line 32 of file ternary_index_space.cc.
References fiber_bundle::ternary_index::i, fiber_bundle::ternary_index::j, fiber_bundle::ternary_index::k, sheaf::ragged_array< T >::new_back_row(), fiber_bundle::operator<<(), sheaf::ragged_array< T >::push_back(), and sheaf::ragged_array< T >::row_ct().
|
inline |
Cartesian product.
Definition at line 204 of file ternary_index_space.h.
|
inline |
Sum.
Definition at line 179 of file ternary_index_space.h.
|
inline |
Sets i_size = xi_size, j_size = xj_size, k_size = xk_size and recomputes size.
Definition at line 130 of file ternary_index_space.h.
|
inline |
Converts xindex to a unary_index using col-major ordering.
Definition at line 341 of file ternary_index_space.h.
References fiber_bundle::ternary_index::i, fiber_bundle::ternary_index::j, and fiber_bundle::ternary_index::k.
|
inline |
Converts xindex to a unary_index using col-major ordering.
Definition at line 361 of file ternary_index_space.h.
|
inline |
Converts xindex to a unary_index using row-major ordering.
Definition at line 275 of file ternary_index_space.h.
References fiber_bundle::ternary_index::i, fiber_bundle::ternary_index::j, and fiber_bundle::ternary_index::k.
Referenced by fiber_bundle::point_block_crg_interval::get_private_data().
|
inline |
Converts (xi, xj, xk) to a unary_index using row-major ordering.
Definition at line 295 of file ternary_index_space.h.
unary_index fiber_bundle::ternary_index_space::i_size |
Upper bound for the first index.
Definition at line 47 of file ternary_index_space.h.
Referenced by operator*(), operator+(), and fiber_bundle::operator<<().
unary_index fiber_bundle::ternary_index_space::j_size |
Upper bound for the second index.
Definition at line 52 of file ternary_index_space.h.
Referenced by operator*(), operator+(), and fiber_bundle::operator<<().
unary_index fiber_bundle::ternary_index_space::k_size |
Upper bound for the third index.
Definition at line 57 of file ternary_index_space.h.
Referenced by operator*(), operator+(), and fiber_bundle::operator<<().
unary_index fiber_bundle::ternary_index_space::size |
Number in the space.
Definition at line 62 of file ternary_index_space.h.
Referenced by fiber_bundle::operator<<().