|
| void | setName (std::string const &name) |
| | Set the name associated with this SparsityPattern which is used in the chai callback. More...
|
| |
|
| | SparsityPattern (INDEX_TYPE const nrows=0, ColTypeNC const ncols=0, INDEX_TYPE initialRowCapacity=0) |
| | Constructor. More...
|
| |
| | SparsityPattern (SparsityPattern const &src) |
| | Copy constructor, performs a deep copy. More...
|
| |
|
| SparsityPattern (SparsityPattern &&)=default |
| | Default move constructor, performs a shallow copy.
|
| |
|
| ~SparsityPattern () |
| | Destructor, frees the values, sizes and offsets Buffers.
|
| |
|
| SparsityPattern & | operator= (SparsityPattern const &src) |
| | Copy assignment operator, performs a deep copy. More...
|
| |
| SparsityPattern & | operator= (SparsityPattern &&src) |
| | Default move assignment operator, performs a shallow copy. More...
|
| |
| template<typename POLICY > |
| void | resizeFromRowCapacities (INDEX_TYPE const nRows, ColTypeNC const nCols, INDEX_TYPE const *const rowCapacities) |
| | Clears the matrix and creates a new matrix with the given number of rows and columns. More...
|
| |
|
| constexpr SparsityPatternView< COL_TYPE, INDEX_TYPE const, BUFFER_TYPE > | toView () const & |
| |
| constexpr SparsityPatternView< COL_TYPE, INDEX_TYPE const, BUFFER_TYPE > | toView () const &&=delete |
| | Overload for rvalues that is deleted. More...
|
| |
| LVARRAY_HOST_DEVICE constexpr SparsityPatternView< COL_TYPE const, INDEX_TYPE const, BUFFER_TYPE > | toViewConst () const & |
| |
| LVARRAY_HOST_DEVICE constexpr SparsityPatternView< COL_TYPE const, INDEX_TYPE const, BUFFER_TYPE > | toViewConst () const &&=delete |
| | Overload for rvalues that is deleted. More...
|
| |
|
| void | reserveRows (INDEX_TYPE const rowCapacity) |
| | Reserve space for the given number of rows. More...
|
| |
| void | reserveNonZeros (INDEX_TYPE const nnz) |
| | Reserve space to hold at least the given total number of non zero entries without reallocation. More...
|
| |
| void | reserveNonZeros (INDEX_TYPE const row, INDEX_TYPE const nnz) |
| | Reserve space to hold at least the given number of non zero entries in the given row without either reallocation or shifting the row offsets. More...
|
| |
| void | setRowCapacity (INDEX_TYPE const row, INDEX_TYPE newCapacity) |
| | Set the non zero capacity of the given row. More...
|
| |
| void | compress () |
| | Compress the SparsityPattern so that the non-zeros of each row are contiguous with no extra capacity in between. More...
|
| |
|
| void | resize (INDEX_TYPE const nRows, ColTypeNC const nCols, INDEX_TYPE const initialRowCapacity) |
| | Set the dimensions of the matrix. More...
|
| |
| void | appendRow (INDEX_TYPE const nzCapacity=0) |
| | Append a row with the given capacity. More...
|
| |
|
| bool | insertNonZero (INDEX_TYPE const row, COL_TYPE const col) |
| | Insert a non zero entry in the entry (row, col). More...
|
| |
| template<typename ITER > |
| INDEX_TYPE | insertNonZeros (INDEX_TYPE const row, ITER const first, ITER const last) |
| | Inserts multiple non-zero entries into the given row. More...
|
| |
| template<typename ITER > |
| INDEX_TYPE | removeNonZeros (INDEX_TYPE const row, ITER const first, ITER const last) const |
| | Remove multiple non-zero entries from the given row. More...
|
| |
|
| void | move (MemorySpace const space, bool const touch=true) const |
| | Move this ArrayOfSets to the given memory space. More...
|
| |
|
|
using | COL_TYPE_NC = std::remove_const_t< COL_TYPE > |
| |
|
using | ParentClass = ArrayOfSetsView< COL_TYPE, INDEX_TYPE, BUFFER_TYPE > |
| | An alias for the parent class.
|
| |
|
using | INDEX_TYPE_NC = typename ParentClass::INDEX_TYPE_NC |
| | Since INDEX_TYPE should always be const we need an alias for the non const version.
|
| |
|
using | SIZE_TYPE = std::conditional_t< CONST_SIZES, INDEX_TYPE const, INDEX_TYPE_NC > |
| | The type contained by the m_sizes buffer.
|
| |
|
using | ColType = COL_TYPE |
| | The integer type used to enumerate the columns.
|
| |
|
using | ColTypeNC = COL_TYPE_NC |
| |
|
using | IndexType = INDEX_TYPE |
| | The integer type used for indexing.
|
| |
|
using | ParentClass = ArrayOfArraysView< COL_TYPE, INDEX_TYPE, std::is_const< COL_TYPE >::value, BUFFER_TYPE > |
| | Alias for the parent class.
|
| |
|
using | INDEX_TYPE_NC = typename ParentClass::INDEX_TYPE_NC |
| | Since INDEX_TYPE should always be const we need an alias for the non const version.
|
| |
|
using | SIZE_TYPE = std::conditional_t< CONST_SIZES, INDEX_TYPE const, INDEX_TYPE_NC > |
| | The type contained by the m_sizes buffer.
|
| |
|
using | ValueType = COL_TYPE |
| | An alias for the type contained in the inner arrays.
|
| |
|
using | IndexType = INDEX_TYPE |
| | The integer type used for indexing.
|
| |
|
using | value_type = COL_TYPE |
| | An alias for the type contained in the inner arrays, here for stl compatability.
|
| |
|
using | size_type = INDEX_TYPE |
| | The integer type used for indexing, here for stl compatability.
|
| |
|
using | INDEX_TYPE_NC = std::remove_const_t< INDEX_TYPE > |
| | Since INDEX_TYPE should always be const we need an alias for the non const version.
|
| |
|
using | SIZE_TYPE = std::conditional_t< CONST_SIZES, INDEX_TYPE const, INDEX_TYPE_NC > |
| | The type contained by the m_sizes buffer.
|
| |
| using | PairOfBuffers = std::pair< BUFFER_TYPE< U > &, BUFFER_TYPE< U > const & > |
| | Alias for a std::pair of buffers. More...
|
| |
|
using | ValueType = COL_TYPE |
| | An alias for the type contained in the inner arrays.
|
| |
|
using | IndexType = INDEX_TYPE |
| | The integer type used for indexing.
|
| |
|
using | value_type = COL_TYPE |
| | An alias for the type contained in the inner arrays, here for stl compatability.
|
| |
|
using | size_type = INDEX_TYPE |
| | The integer type used for indexing, here for stl compatability.
|
| |
| | SparsityPatternView (bool) |
| | Protected constructor to be used by parent classes. More...
|
| |
| void | assimilate (SparsityPatternView &&src) |
| | Steal the resources of src, clearing it in the process. More...
|
| |
| template<class ... BUFFERS> |
| void | resize (INDEX_TYPE const nrows, COL_TYPE const ncols, INDEX_TYPE_NC initialRowCapacity, BUFFERS &... buffers) |
| | Resize the SparsityPattern to the given size. More...
|
| |
| | SparsityPatternView ()=default |
| | A constructor to create an uninitialized SparsityPatternView. More...
|
| |
| | SparsityPatternView (SparsityPatternView const &)=default |
| | Default copy constructor. More...
|
| |
| | SparsityPatternView (SparsityPatternView &&src) |
| | Move constructor. More...
|
| |
| LVARRAY_HOST_DEVICE constexpr | SparsityPatternView (INDEX_TYPE const nRows, COL_TYPE const nCols, BUFFER_TYPE< INDEX_TYPE > const &offsets, BUFFER_TYPE< SIZE_TYPE > const &nnz, BUFFER_TYPE< COL_TYPE > const &columns) |
| | Construct a new CRSMatrixView from the given buffers. More...
|
| |
| SparsityPatternView & | operator= (SparsityPatternView const &)=default |
| | Default copy assignment operator, this does a shallow copy. More...
|
| |
| SparsityPatternView & | operator= (SparsityPatternView &&src) |
| | Move assignment operator, this does a shallow copy. More...
|
| |
| LVARRAY_HOST_DEVICE constexpr SparsityPatternView< COL_TYPE, INDEX_TYPE const, BUFFER_TYPE > | toView () const |
| |
| LVARRAY_HOST_DEVICE constexpr SparsityPatternView< COL_TYPE const, INDEX_TYPE const, BUFFER_TYPE > | toViewConst () const |
| |
| LVARRAY_HOST_DEVICE constexpr INDEX_TYPE_NC const | numRows () const |
| |
| LVARRAY_HOST_DEVICE constexpr COL_TYPE const | numColumns () const |
| |
| LVARRAY_HOST_DEVICE INDEX_TYPE_NC | numNonZeros () const |
| |
| LVARRAY_HOST_DEVICE constexpr INDEX_TYPE_NC const | numNonZeros (INDEX_TYPE const row) const |
| |
| LVARRAY_HOST_DEVICE constexpr INDEX_TYPE_NC const | nonZeroCapacity () const |
| |
| LVARRAY_HOST_DEVICE constexpr INDEX_TYPE_NC const | nonZeroCapacity (INDEX_TYPE const row) const |
| |
| LVARRAY_HOST_DEVICE bool | empty () const |
| |
| LVARRAY_HOST_DEVICE constexpr bool | empty (INDEX_TYPE const row) const |
| |
| LVARRAY_HOST_DEVICE bool | empty (INDEX_TYPE const row, COL_TYPE const col) const |
| |
| LVARRAY_HOST_DEVICE constexpr ArraySlice< COL_TYPE const, 1, 0, INDEX_TYPE_NC > | getColumns (INDEX_TYPE const row) const |
| |
| LVARRAY_HOST_DEVICE constexpr INDEX_TYPE const * | getOffsets () const |
| |
| LVARRAY_HOST_DEVICE constexpr COL_TYPE const * | getColumns () const |
| |
| LVARRAY_HOST_DEVICE bool | insertNonZero (INDEX_TYPE const row, COL_TYPE const col) const |
| | Insert a non-zero entry at the given position. More...
|
| |
| template<typename ITER > |
| LVARRAY_HOST_DEVICE INDEX_TYPE_NC | insertNonZeros (INDEX_TYPE const row, ITER const first, ITER const last) const |
| | Inserts multiple non-zero entries into the given row. More...
|
| |
| LVARRAY_HOST_DEVICE bool | removeNonZero (INDEX_TYPE const row, COL_TYPE const col) const |
| | Remove a non-zero entry at the given position. More...
|
| |
| template<typename ITER > |
| DISABLE_HD_WARNING LVARRAY_HOST_DEVICE INDEX_TYPE_NC | removeNonZeros (INDEX_TYPE const row, ITER const first, ITER const last) const |
| | Remove multiple non-zero entries from the given row. More...
|
| |
| void | move (MemorySpace const space, bool const touch=true) const |
| | Move this ArrayOfSets to the given memory space. More...
|
| |
| | ArrayOfSetsView (bool) |
| | Protected constructor to be used by parent classes. More...
|
| |
| LVARRAY_HOST_DEVICE constexpr ArraySlice< COL_TYPE, 1, 0, INDEX_TYPE_NC > | getSetValues (INDEX_TYPE const i) const |
| |
| LVARRAY_HOST_DEVICE bool | insertIntoSetImpl (INDEX_TYPE const i, COL_TYPE const &value, CALLBACKS &&cbacks) const |
| | Helper function to insert a value into the given set. More...
|
| |
| LVARRAY_HOST_DEVICE INDEX_TYPE_NC | insertIntoSetImpl (INDEX_TYPE const i, ITER const first, ITER const last, CALLBACKS &&cbacks) const |
| | Inserts multiple values into the given set. More...
|
| |
| LVARRAY_HOST_DEVICE bool | removeFromSetImpl (INDEX_TYPE const i, COL_TYPE const &value, CALLBACKS &&cbacks) const |
| | Helper function to remove a value from the given set. More...
|
| |
| LVARRAY_HOST_DEVICE INDEX_TYPE_NC | removeFromSetImpl (INDEX_TYPE const i, ITER const first, ITER const last, CALLBACKS &&cbacks) const |
| | Removes multiple values from the given set. More...
|
| |
| | ArrayOfSetsView ()=default |
| | A constructor to create an uninitialized ArrayOfSetsView. More...
|
| |
|
| ArrayOfSetsView (ArrayOfSetsView const &)=default |
| | Default copy constructor. Performs a shallow copy and calls the chai::ManagedArray copy constructor.
|
| |
|
| ArrayOfSetsView (ArrayOfSetsView &&)=default |
| | Default move constructor.
|
| |
| LVARRAY_HOST_DEVICE constexpr | ArrayOfSetsView (INDEX_TYPE const numArrays, BUFFER_TYPE< INDEX_TYPE > const &offsets, BUFFER_TYPE< SIZE_TYPE > const &sizes, BUFFER_TYPE< COL_TYPE > const &values) |
| | Construct a new ArrayOfArraysView from the given buffers. More...
|
| |
| ArrayOfSetsView & | operator= (ArrayOfSetsView const &)=default |
| | Default copy assignment operator, this does a shallow copy. More...
|
| |
| ArrayOfSetsView & | operator= (ArrayOfSetsView &&)=default |
| | Default move assignment operator, this does a shallow copy. More...
|
| |
| LVARRAY_HOST_DEVICE constexpr ArrayOfSetsView< COL_TYPE, INDEX_TYPE const, BUFFER_TYPE > | toView () const |
| |
| LVARRAY_HOST_DEVICE constexpr ArrayOfSetsView< COL_TYPE const, INDEX_TYPE const, BUFFER_TYPE > | toViewConst () const |
| |
| LVARRAY_HOST_DEVICE constexpr ArrayOfArraysView< COL_TYPE const, INDEX_TYPE const, true, BUFFER_TYPE > | toArrayOfArraysView () const |
| |
| LVARRAY_HOST_DEVICE constexpr INDEX_TYPE_NC | sizeOfSet (INDEX_TYPE const i) const |
| |
| LVARRAY_HOST_DEVICE constexpr INDEX_TYPE_NC | capacityOfSet (INDEX_TYPE const i) const |
| |
| LVARRAY_HOST_DEVICE bool | contains (INDEX_TYPE const i, COL_TYPE const &value) const |
| |
| void | consistencyCheck () const |
| | Verify that the capacity of each set is greater than or equal to the size and that each set is sorted unique. More...
|
| |
| LVARRAY_HOST_DEVICE constexpr ArraySlice< COL_TYPE const, 1, 0, INDEX_TYPE_NC > | operator[] (INDEX_TYPE const i) const |
| |
| LVARRAY_HOST_DEVICE constexpr COL_TYPE const & | operator() (INDEX_TYPE const i, INDEX_TYPE const j) const |
| |
| LVARRAY_HOST_DEVICE bool | insertIntoSet (INDEX_TYPE const i, COL_TYPE const &value) const |
| | Insert a value into the given set. More...
|
| |
| LVARRAY_HOST_DEVICE INDEX_TYPE_NC | insertIntoSet (INDEX_TYPE const i, ITER const first, ITER const last) const |
| | Inserts multiple values into the given set. More...
|
| |
| LVARRAY_HOST_DEVICE bool | removeFromSet (INDEX_TYPE const i, COL_TYPE const &value) const |
| | Remove a value from the given set. More...
|
| |
| LVARRAY_HOST_DEVICE INDEX_TYPE_NC | removeFromSet (INDEX_TYPE const i, ITER const first, ITER const last) const |
| | Removes multiple values from the given set. More...
|
| |
| void | move (MemorySpace const space, bool const touch=true) const |
| | Move this ArrayOfSets to the given memory space. More...
|
| |
| | ArrayOfArraysView (bool) |
| | Protected constructor to be used by parent classes. More...
|
| |
| void | resize (INDEX_TYPE const newSize, INDEX_TYPE const defaultArrayCapacity=0) |
| | Set the number of arrays. More...
|
| |
| void | reserve (INDEX_TYPE const newCapacity) |
| | Reserve space for the given number of arrays. More...
|
| |
| void | reserveValues (INDEX_TYPE const newValueCapacity, BUFFERS &... buffers) |
| | Reserve space for the given number of values. More...
|
| |
| void | compress (BUFFERS &... buffers) |
| | Compress the arrays so that the values of each array are contiguous with no extra capacity in between. More...
|
| |
| void | resizeFromOffsets (INDEX_TYPE const numSubArrays, INDEX_TYPE const *const offsets, BUFFERS &... buffers) |
| | Clears the array and creates a new array with the given number of sub-arrays. More...
|
| |
| void | resizeFromCapacities (INDEX_TYPE const numSubArrays, INDEX_TYPE const *const capacities, BUFFERS &... buffers) |
| | Clears the array and creates a new array with the given number of sub-arrays. More...
|
| |
| void | assimilate (ArrayOfArraysView< COL_TYPE, INDEX_TYPE, CONST_SIZES, BUFFER_TYPE > &&src) |
| | Steal the resources of src, clearing it in the process. More...
|
| |
| void | resizeImpl (INDEX_TYPE const newSize, INDEX_TYPE const defaultArrayCapacity, BUFFERS &... buffers) |
| | Set the number of arrays. More...
|
| |
| void | free (BUFFERS &... buffers) |
| | Destroy all the objects held by this array and free all associated memory. More...
|
| |
| void | setEqualTo (INDEX_TYPE const srcNumArrays, INDEX_TYPE const srcMaxOffset, BUFFER_TYPE< INDEX_TYPE > const &srcOffsets, BUFFER_TYPE< INDEX_TYPE > const &srcSizes, BUFFER_TYPE< COL_TYPE > const &srcValues, PAIRS_OF_BUFFERS &&... pairs) |
| | Set this ArrayOfArraysView equal to the provided arrays. More...
|
| |
| void | setCapacityOfArray (INDEX_TYPE const i, INDEX_TYPE const newCapacity, BUFFERS &... buffers) |
| | Set the capacity of the given array. More...
|
| |
| void | setName (std::string const &name) |
| | Set the name to be displayed whenever the underlying Buffer's user call back is called. More...
|
| |
| | ArrayOfArraysView ()=default |
| | A constructor to create an uninitialized ArrayOfArraysView. More...
|
| |
| | ArrayOfArraysView (ArrayOfArraysView const &)=default |
| | Default copy constructor. More...
|
| |
| LVARRAY_HOST_DEVICE constexpr | ArrayOfArraysView (ArrayOfArraysView &&src) |
| | Default move constructor. More...
|
| |
| LVARRAY_HOST_DEVICE constexpr | ArrayOfArraysView (INDEX_TYPE const numArrays, BUFFER_TYPE< INDEX_TYPE > const &offsets, BUFFER_TYPE< SIZE_TYPE > const &sizes, BUFFER_TYPE< COL_TYPE > const &values) |
| | Construct a new ArrayOfArraysView from the given buffers. More...
|
| |
| ArrayOfArraysView & | operator= (ArrayOfArraysView const &)=default |
| | Default copy assignment operator. More...
|
| |
| LVARRAY_HOST_DEVICE ArrayOfArraysView & | operator= (ArrayOfArraysView &&src) |
| | Move assignment operator.. More...
|
| |
| LVARRAY_HOST_DEVICE constexpr ArrayOfArraysView< COL_TYPE, INDEX_TYPE const, CONST_SIZES, BUFFER_TYPE > | toView () const |
| |
| LVARRAY_HOST_DEVICE constexpr ArrayOfArraysView< COL_TYPE, INDEX_TYPE const, true, BUFFER_TYPE > | toViewConstSizes () const |
| |
| LVARRAY_HOST_DEVICE constexpr ArrayOfArraysView< COL_TYPE const, INDEX_TYPE const, true, BUFFER_TYPE > | toViewConst () const |
| |
| LVARRAY_HOST_DEVICE constexpr INDEX_TYPE_NC | size () const |
| |
| LVARRAY_HOST_DEVICE CONSTEXPR_WITHOUT_BOUNDS_CHECK INDEX_TYPE_NC | sizeOfArray (INDEX_TYPE const i) const |
| |
| LVARRAY_HOST_DEVICE constexpr SIZE_TYPE const * | getSizes () const |
| |
| LVARRAY_HOST_DEVICE constexpr INDEX_TYPE const * | getOffsets () const |
| |
| LVARRAY_HOST_DEVICE constexpr COL_TYPE const * | getValues () const |
| |
| LVARRAY_HOST_DEVICE CONSTEXPR_WITH_NDEBUG INDEX_TYPE_NC | capacity () const |
| |
| LVARRAY_HOST_DEVICE CONSTEXPR_WITHOUT_BOUNDS_CHECK INDEX_TYPE_NC | capacityOfArray (INDEX_TYPE const i) const |
| |
| LVARRAY_HOST_DEVICE constexpr INDEX_TYPE_NC | valueCapacity () const |
| |
| LVARRAY_HOST_DEVICE CONSTEXPR_WITHOUT_BOUNDS_CHECK ArraySlice< COL_TYPE, 1, 0, INDEX_TYPE_NC > | operator[] (INDEX_TYPE const i) const |
| |
| LVARRAY_HOST_DEVICE CONSTEXPR_WITHOUT_BOUNDS_CHECK COL_TYPE & | operator() (INDEX_TYPE const i, INDEX_TYPE const j) const |
| |
| LVARRAY_HOST_DEVICE void | emplaceBack (INDEX_TYPE const i, ARGS &&... args) const |
| | Append a value to an array. More...
|
| |
| LVARRAY_HOST_DEVICE void | emplaceBackAtomic (INDEX_TYPE const i, ARGS &&... args) const |
| | Append a value to an array in a thread safe manner. More...
|
| |
| LVARRAY_HOST_DEVICE void | appendToArray (INDEX_TYPE const i, ITER const first, ITER const last) const |
| | Append values to an array. More...
|
| |
| LVARRAY_HOST_DEVICE void | emplace (INDEX_TYPE const i, INDEX_TYPE const j, ARGS &&... args) const |
| | Insert a value into an array. More...
|
| |
| LVARRAY_HOST_DEVICE void | insertIntoArray (INDEX_TYPE const i, INDEX_TYPE const j, ITER const first, ITER const last) const |
| | Insert values into an array. More...
|
| |
| LVARRAY_HOST_DEVICE void | eraseFromArray (INDEX_TYPE const i, INDEX_TYPE const j, INDEX_TYPE const n=1) const |
| | Erase values from an array. More...
|
| |
| void | registerTouch (MemorySpace const space) const |
| | Touch the memory in space. More...
|
| |
| void | move (MemorySpace const space, bool touch=true) const |
| | Move this ArrayOfArrays to the given memory space. More...
|
| |
|
COL_TYPE_NC | m_numCols |
| | The number of columns in the matrix.
|
| |
|
INDEX_TYPE_NC | m_numArrays |
| | The number of arrays contained.
|
| |
| BUFFER_TYPE< INDEX_TYPE > | m_offsets |
| |
|
BUFFER_TYPE< SIZE_TYPE > | m_sizes |
| | Holds the size of each array.
|
| |
| BUFFER_TYPE< COL_TYPE > | m_values |
| |