1 #ifndef __CS_SLES_MUMPS_H__ 2 #define __CS_SLES_MUMPS_H__ 50 #define CS_SLES_MUMPS_JOB_INIT -1 56 #define ICNTL(I) icntl[(I)-1] 57 #define CNTL(I) cntl[(I)-1] 58 #define INFOG(I) infog[(I)-1] 59 #define INFO(I) info[(I)-1] 60 #define RINFOG(I) rinfog[(I)-1] 61 #define RINFO(I) rinfo[(I)-1] 62 #define KEEP(I) keep[(I)-1]
struct _cs_sles_mumps_t cs_sles_mumps_t
Definition: cs_sles_mumps.h:90
void() cs_sles_mumps_setup_hook_t(const cs_param_sles_t *slesp, void *context, void *mumps)
Function pointer for user settings of a MUMPS solver. This function is called at the end of the setup...
Definition: cs_sles_mumps.h:84
void cs_sles_mumps_log(const void *context, cs_log_t log_type)
Log sparse linear equation solver info.
Definition: cs_sles_mumps.c:2940
void cs_user_sles_mumps_hook(const cs_param_sles_t *slesp, void *context, void *pmumps)
Function pointer for advanced user settings of a MUMPS solver. This function is called two times duri...
Definition: cs_sles_mumps.c:2027
#define BEGIN_C_DECLS
Definition: cs_defs.h:512
struct _cs_sles_pc_t cs_sles_pc_t
Definition: cs_sles_pc.h:66
cs_sles_mumps_t * cs_sles_mumps_define(int f_id, const char *name, const cs_param_sles_t *slesp, cs_sles_mumps_setup_hook_t *setup_hook, void *context)
Define and associate a MUMPS linear system solver for a given field or equation name.
Definition: cs_sles_mumps.c:2069
Structure and routines handling the SLES settings stored inside a cs_param_sles_t structure...
void cs_sles_mumps_destroy(void **context)
Destroy MUMPS linear system solver info and context.
Definition: cs_sles_mumps.c:2302
double cs_real_t
Floating-point value.
Definition: cs_defs.h:322
struct _cs_matrix_t cs_matrix_t
Definition: cs_matrix.h:110
void cs_sles_mumps_setup(void *context, const char *name, const cs_matrix_t *a, int verbosity)
Setup MUMPS linear equation solver.
Definition: cs_sles_mumps.c:2331
cs_sles_convergence_state_t
Convergence status indicator.
Definition: cs_sles.h:56
void * cs_sles_mumps_copy(const void *context)
Create MUMPS linear system solver info and context based on existing info and context.
Definition: cs_sles_mumps.c:2193
cs_sles_mumps_t * cs_sles_mumps_create(const cs_param_sles_t *slesp, cs_sles_mumps_setup_hook_t *setup_hook, void *context)
Create MUMPS linear system solver info and context.
Definition: cs_sles_mumps.c:2146
double precision, save a
Definition: cs_fuel_incl.f90:148
void cs_sles_mumps_free(void *context)
Free MUMPS linear equation solver setup context.
Definition: cs_sles_mumps.c:2221
void cs_sles_mumps_library_info(cs_log_t log_type)
Print information on MUMPS library.
Definition: cs_sles_mumps.c:3026
cs_log_t
Definition: cs_log.h:48
#define END_C_DECLS
Definition: cs_defs.h:513
cs_sles_convergence_state_t cs_sles_mumps_solve(void *context, const char *name, const cs_matrix_t *a, int verbosity, double precision, double r_norm, int *n_iter, double *residue, const cs_real_t *rhs, cs_real_t *vx, size_t aux_size, void *aux_vectors)
Call MUMPS linear equation solver.
Definition: cs_sles_mumps.c:2707
Structure storing all metadata related to the resolution of a linear system with an iterative solver...
Definition: cs_param_sles.h:62
cs_sles_pc_t * cs_sles_mumps_pc_create(const cs_param_sles_t *slesp)
Create a preconditioner structure relying on MUMPS solver.
Definition: cs_sles_mumps.c:2102