KTH framework for Nek5000 toolboxes; testing version  0.0.1
crs_hypre.h File Reference
+ This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Data Structures

struct  rid
 
struct  labelled_rid
 
struct  rnz
 
struct  gnz
 

Macros

#define rid_equal(a, b)   ((a).p==(b).p && (a).i==(b).i)
 
#define nz_pos_equal(a, b)    (rid_equal((a).i,(b).i) && rid_equal((a).j,(b).j))
 

Enumerations

enum  mat_order { row_major , col_major , row_major , col_major }
 
enum  distr { row_distr , col_distr , row_distr , col_distr }
 

Functions

void build_hypre_matrix (struct hypre_crs_data *hypre_data, uint n, const ulong *id, uint nz_unassembled, const uint *Ai, const uint *Aj, const double *Av)
 
struct hypre_crs_data * ccrs_hypre_setup (uint n, const ulong *id, uint nz, const uint *Ai, const uint *Aj, const double *Av, const uint null_space, const struct comm *comm, const double *param)
 
void ccrs_hypre_solve (double *x, struct hypre_crs_data *data, double *b)
 
void ccrs_hypre_free (struct hypre_crs_data *data)
 

Macro Definition Documentation

◆ nz_pos_equal

#define nz_pos_equal (   a,
 
)     (rid_equal((a).i,(b).i) && rid_equal((a).j,(b).j))

Definition at line 31 of file crs_hypre.h.

◆ rid_equal

#define rid_equal (   a,
 
)    ((a).p==(b).p && (a).i==(b).i)

Definition at line 30 of file crs_hypre.h.

Enumeration Type Documentation

◆ distr

enum distr
Enumerator
row_distr 
col_distr 
row_distr 
col_distr 

Definition at line 46 of file crs_hypre.h.

◆ mat_order

enum mat_order
Enumerator
row_major 
col_major 
row_major 
col_major 

Definition at line 45 of file crs_hypre.h.

Function Documentation

◆ build_hypre_matrix()

void build_hypre_matrix ( struct hypre_crs_data *  hypre_data,
uint  n,
const ulong *  id,
uint  nz_unassembled,
const uint *  Ai,
const uint *  Aj,
const double *  Av 
)

◆ ccrs_hypre_free()

void ccrs_hypre_free ( struct hypre_crs_data *  data)

Definition at line 442 of file crs_hypre.c.

◆ ccrs_hypre_setup()

struct hypre_crs_data* ccrs_hypre_setup ( uint  n,
const ulong *  id,
uint  nz,
const uint *  Ai,
const uint *  Aj,
const double *  Av,
const uint  null_space,
const struct comm *  comm,
const double *  param 
)

Definition at line 424 of file crs_hypre.c.

◆ ccrs_hypre_solve()

void ccrs_hypre_solve ( double *  x,
struct hypre_crs_data *  data,
double *  b 
)

Definition at line 434 of file crs_hypre.c.