8 #include <ginkgo/ginkgo.hpp> 
   10 #include "../fem/slimfem/src/SF_base.h" 
   15 #include "../../physics/electric.cc" 
   35       mat1.
init(n_g, n_g, n_l, n_l, 0, n_l);
 
   36       mat2.
init(n_g, n_g, n_l, n_l, 0, n_l);
 
   43       for (
size_t r = 0; r < n_g; r++) {
 
   44         for (
size_t c = 0; c < n_g; c++) {
 
   50         mat1.
set_value(mat_rows, mat_cols, mat_vals, 
false);
 
   51         mat2.
set_value(mat_rows, mat_cols, mat_vals, 
false);
 
   58       mat_g = 
new SF::ginkgo_matrix<int, double>();
 
   59       mat_p = 
new SF::petsc_matrix<int, double>();
 
   61       vec_p = 
new SF::petsc_vector<int, double>();
 
   62       vec_g = 
new SF::ginkgo_matrix<int, double>();
 
   67       return  {{mat_g, mat_p},{vec_g, vec_p}};
 
   92           std::cout << 
"\033[32m[SUCCESS]\033[0m  " << str << std::endl;
 
   96           std::cout << 
"\033[31m[FAILURE]\033[0m  " << str << std::endl;
 
  101 int main(
int argc, 
char** argv)
 
  104   MPI_Init(&argc, &argv);
 
  107   MPI_Comm_size(comm, &size); MPI_Comm_rank(comm, &rank);
 
  110   PetscInitialize( &argc, &argv, (
char *)0, 
"" );
 
#define SF_COMM
the default SlimFem MPI communicator
virtual void init(T iNRows, T iNCols, T ilrows, T ilcols, T loc_offset, T mxent)
virtual void set_value(T row_idx, T col_idx, S val, bool add)=0
void fill_matrices_same_random(SF::abstract_matrix< int, double > &mat1, SF::abstract_matrix< int, double > &mat2)
std::tuple< auto, auto > generate_random_petsc_ginkgo_matrices()
void assertTrue(bool cond_bool, std::string str)
Tissue level electrics, main Electrics physics class.
class TestGinkgo main(int argc, char **argv)