You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
44 lines
1.4 KiB
C
44 lines
1.4 KiB
C
5 years ago
|
#ifndef MLD_C_ZPREC_
|
||
|
#define MLD_C_ZPREC_
|
||
|
|
||
|
#include "mld_const.h"
|
||
|
#include "psb_base_cbind.h"
|
||
|
#include "psb_prec_cbind.h"
|
||
|
#include "psb_krylov_cbind.h"
|
||
|
|
||
|
/* Object handle related routines */
|
||
|
/* Note: mld_get_XXX_handle returns: <= 0 unsuccessful */
|
||
|
/* >0 valid handle */
|
||
|
#ifdef __cplusplus
|
||
|
extern "C" {
|
||
|
#endif
|
||
|
typedef struct MLD_C_ZPREC {
|
||
|
void *dprec;
|
||
|
} mld_c_zprec;
|
||
|
|
||
|
mld_c_zprec* mld_c_zprec_new();
|
||
|
psb_i_t mld_c_zprec_delete(mld_c_zprec* p);
|
||
|
|
||
|
psb_i_t mld_c_zprecinit(psb_i_t ictxt, mld_c_zprec *ph, const char *ptype);
|
||
|
psb_i_t mld_c_zprecseti(mld_c_zprec *ph, const char *what, psb_i_t val);
|
||
|
psb_i_t mld_c_zprecsetc(mld_c_zprec *ph, const char *what, const char *val);
|
||
|
psb_i_t mld_c_zprecsetr(mld_c_zprec *ph, const char *what, double val);
|
||
|
psb_i_t mld_c_zprecbld(psb_c_dspmat *ah, psb_c_descriptor *cdh, mld_c_zprec *ph);
|
||
|
psb_i_t mld_c_zhierarchy_build(psb_c_dspmat *ah, psb_c_descriptor *cdh, mld_c_zprec *ph);
|
||
|
psb_i_t mld_c_zsmoothers_build(psb_c_dspmat *ah, psb_c_descriptor *cdh, mld_c_zprec *ph);
|
||
|
psb_i_t mld_c_zprecfree(mld_c_zprec *ph);
|
||
|
psb_i_t mld_c_zprecbld_opt(psb_c_zspmat *ah, psb_c_descriptor *cdh,
|
||
|
mld_c_zprec *ph, const char *afmt);
|
||
|
|
||
|
|
||
|
psb_i_t mld_c_zkrylov(const char *method, psb_c_zspmat *ah, mld_c_zprec *ph,
|
||
|
psb_c_zvector *bh, psb_c_zvector *xh,
|
||
|
psb_c_descriptor *cdh, psb_c_SolverOptions *opt);
|
||
|
|
||
|
|
||
|
#ifdef __cplusplus
|
||
|
}
|
||
|
#endif
|
||
|
|
||
|
#endif
|