StarNEig User's Guide
v0.1.6
A task-based library for solving dense nonsymmetric eigenvalue problems
|
Go to the documentation of this file.
40 #ifndef STARNEIG_BLACS_MATRIX_H
41 #define STARNEIG_BLACS_MATRIX_H
49 #ifndef STARNEIG_ENABLE_MPI
50 #error "This header should be included only when STARNEIG_ENABLE_MPI is defined."
53 #ifndef STARNEIG_ENABLE_BLACS
54 #error "This header should be included only when STARNEIG_ENABLE_BLACS is defined."
346 #endif // STARNEIG_BLACS_MATRIX_H
This file contains data types and functions for distributed matrices.
int starneig_distr_is_blacs_compatible(starneig_distr_t distr)
Checks whether a data distribution is BLACS compatible.
int m
The number of (global) rows in the matrix.
Definition: blacs_matrix.h:146
struct starneig_blacs_descr starneig_blacs_descr_t
BLACS descriptor.
int starneig_distr_matrix_is_blacs_compatible(starneig_distr_matrix_t matrix)
Checks whether a distributed matrix is BLACS compatible.
starneig_distr_t starneig_blacs_context_to_distr(starneig_blacs_context_t context)
Convers a BLACS context to a data distribution.
int sm
The number of rows in a distribution block.
Definition: blacs_matrix.h:150
int n
The number of (global) columns in the matrix.
Definition: blacs_matrix.h:148
int rsrc
The process grid row over which the first row is distributed.
Definition: blacs_matrix.h:154
int lld
The leading dimension of the local array.
Definition: blacs_matrix.h:158
int type
The descriptor type.
Definition: blacs_matrix.h:142
int starneig_distr_is_compatible_with(starneig_distr_t distr, starneig_blacs_context_t context)
Checks whether a data distribution is compatible with a given BLACS context.
BLACS descriptor.
Definition: blacs_matrix.h:140
starneig_blacs_context_t starneig_distr_to_blacs_context(starneig_distr_t distr)
Convers a data distribution to a BLACS context.
void starneig_blacs_create_matrix(int rows, int cols, int row_blksz, int col_blksz, starneig_datatype_t type, starneig_blacs_context_t context, starneig_blacs_descr_t *descr, void **local)
Creates a BLACS matrix with uninitialized matrix elements.
void starneig_destroy_blacs_matrix(starneig_blacs_descr_t *descr, void **local)
Destroyes a BLACS matrix. Deprecated.
int starneig_distr_matrix_is_compatible_with(starneig_distr_matrix_t matrix, starneig_blacs_context_t context)
Checks whether a distributed matrix is compatible with a given BLACS context.
int sn
The number of columns in a distribution block.
Definition: blacs_matrix.h:152
starneig_distr_matrix_t starneig_blacs_descr_to_distr_matrix(starneig_datatype_t type, starneig_distr_t distr, starneig_blacs_descr_t *descr, void *local)
Convers a BLACS descriptor and a matching local array to a distributed matrix.
void starneig_blacs_destroy_matrix(starneig_blacs_descr_t *descr, void **local)
Destroyes a BLACS matrix.
void starneig_distr_matrix_to_blacs_descr(starneig_distr_matrix_t matrix, starneig_blacs_context_t context, starneig_blacs_descr_t *descr, void **local)
Convers a distributed matrix to a BLACS descriptor and a matching local array.
int starneig_blacs_context_t
BLACS context.
Definition: blacs_matrix.h:75
struct starneig_distr_matrix * starneig_distr_matrix_t
Distributed matrix.
Definition: distr_matrix.h:189
void starneig_create_blacs_matrix(int rows, int cols, int row_blksz, int col_blksz, starneig_datatype_t type, starneig_blacs_context_t context, starneig_blacs_descr_t *descr, void **local)
Creates a BLACS matrix with uninitialized matrix elements. Deprecated.
int csrc
The process grid column over which the first column is distributed.
Definition: blacs_matrix.h:156
starneig_blacs_context_t context
The related BLACS context.
Definition: blacs_matrix.h:144
This file contains StarNEig library configuration.
starneig_datatype_t
Distributed matrix element data type.
Definition: distr_matrix.h:194
struct starneig_distr * starneig_distr_t
Data distribution.
Definition: distr_matrix.h:73