XGC1
|
#include <col_grid_matrix.hpp>
Public Types | |
using | index_type = typename GridMatrix< Device >::index_type |
using | value_type = typename GridMatrix< Device >::value_type |
using | host_type = typename GridMatrix< Device >::host_type |
using | device = typename GridMatrix< Device >::device |
using | values_array_t = typename GridMatrix< Device >::values_array_t |
using | const_values_array_t = typename GridMatrix< Device >::const_values_array_t |
using | internal_values_array_t = Kokkos::DualView< value_type ***, Kokkos::LayoutRight, Device > |
using | vector_view_t = typename GridMatrix< Device >::vector_view_t |
using | const_vector_view_t = typename GridMatrix< Device >::const_vector_view_t |
using | vector_h_view_t = typename GridMatrix< Device >::vector_h_view_t |
using | const_vector_h_view_t = typename GridMatrix< Device >::const_vector_h_view_t |
using | vector_dualview_t = typename GridMatrix< Device >::vector_dualview_t |
using | const_vector_dualview_t = typename GridMatrix< Device >::const_vector_dualview_t |
![]() | |
using | index_type = int |
using | host_type = HostType |
using | device = Device |
using | value_type = double |
using | values_array_t = Kokkos::View< value_type ***, Kokkos::LayoutRight, Device, Kokkos::MemoryTraits< Kokkos::Unmanaged > > |
using | const_values_array_t = Kokkos::View< const value_type ***, Kokkos::LayoutRight, Device, Kokkos::MemoryTraits< Kokkos::Unmanaged > > |
using | vector_view_t = Kokkos::View< value_type ****, Kokkos::LayoutRight, Device > |
using | const_vector_view_t = Kokkos::View< const value_type ****, Kokkos::LayoutRight, Device > |
using | vector_h_view_t = Kokkos::View< value_type ****, Kokkos::LayoutRight, host_type > |
using | const_vector_h_view_t = Kokkos::View< const value_type ****, Kokkos::LayoutRight, host_type > |
using | vector_dualview_t = Kokkos::DualView< value_type ****, Kokkos::LayoutRight, Device > |
using | const_vector_dualview_t = Kokkos::DualView< const value_type ****, Kokkos::LayoutRight, Device > |
Public Member Functions | |
CSCMatrix (size_type n_nodes, index_type num_species, int nvr, int nvz) | |
const_values_array_t | get_const_values () const override |
values_array_t | get_values () override |
void | subtract_from_identity () override |
void | add_identity_multiply (const_vector_view_t dist_col, vector_view_t dist_iter) const override |
void | apply_solve (const_vector_h_view_t b_h, vector_h_view_t x_h, const_vector_view_t b, vector_view_t x) const override |
![]() | |
GridMatrix (size_type n_nodes, int n_species) | |
virtual | ~GridMatrix () |
Kokkos::View< index_type **, device >::HostMirror | host_index_map_LU () |
Kokkos::View< index_type **, device > | device_index_map_LU () const |
index_type | get_num_nonzeros () const |
index_type | get_num_rows () const |
Protected Member Functions | |
void | setup_sparsity () |
Protected Attributes | |
index_type | nvz_ |
index_type | nvr_ |
internal_values_array_t | values_ |
Kokkos::View< index_type *, device > | central_locs_ |
Kokkos::View< int *, host_type > | LU_rowindx_ |
Kokkos::View< int *, host_type > | LU_colptr_ |
![]() | |
Kokkos::DualView< index_type **, device > | index_map_ |
const index_type | num_species_ |
const index_type | num_nodes_ |
const size_type | batch_size_ |
index_type | num_rows_ |
index_type | nnz_ |
using Collisions::CSCMatrix< Device >::const_values_array_t = typename GridMatrix<Device>::const_values_array_t |
using Collisions::CSCMatrix< Device >::const_vector_dualview_t = typename GridMatrix<Device>::const_vector_dualview_t |
using Collisions::CSCMatrix< Device >::const_vector_h_view_t = typename GridMatrix<Device>::const_vector_h_view_t |
using Collisions::CSCMatrix< Device >::const_vector_view_t = typename GridMatrix<Device>::const_vector_view_t |
using Collisions::CSCMatrix< Device >::device = typename GridMatrix<Device>::device |
using Collisions::CSCMatrix< Device >::host_type = typename GridMatrix<Device>::host_type |
using Collisions::CSCMatrix< Device >::index_type = typename GridMatrix<Device>::index_type |
using Collisions::CSCMatrix< Device >::internal_values_array_t = Kokkos::DualView<value_type***, Kokkos::LayoutRight, Device> |
using Collisions::CSCMatrix< Device >::value_type = typename GridMatrix<Device>::value_type |
using Collisions::CSCMatrix< Device >::values_array_t = typename GridMatrix<Device>::values_array_t |
using Collisions::CSCMatrix< Device >::vector_dualview_t = typename GridMatrix<Device>::vector_dualview_t |
using Collisions::CSCMatrix< Device >::vector_h_view_t = typename GridMatrix<Device>::vector_h_view_t |
using Collisions::CSCMatrix< Device >::vector_view_t = typename GridMatrix<Device>::vector_view_t |
|
inline |
|
overridevirtual |
|
overridevirtual |
|
overridevirtual |
Implements Collisions::GridMatrix< Device >.
|
overridevirtual |
Implements Collisions::GridMatrix< Device >.
|
protected |
|
overridevirtual |
Subtracts the matrix from the identity: M <- I - M.
Implements Collisions::GridMatrix< Device >.
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |