#include <stdlib.h>
#include <stdio.h>
#include <string.h>
#include <math.h>
#include <stdbool.h>
#include <assert.h>
#include "../lsh_mkb_intf.h"
#include "./lsh_mkb_viennacl.h"
#include "../lah_intf.h"
#include "viennacl/vector.hpp"
#include "viennacl/compressed_matrix.hpp"
#include "viennacl/linalg/cg.hpp"
#include "viennacl/linalg/gmres.hpp"
#include "viennacl/linalg/ilu.hpp"
#include "viennacl/linalg/jacobi_precond.hpp"
#include "viennacl/linalg/direct_solve.hpp"
#include "viennacl/linalg/lu.hpp"
#include "uth_system.h"
#include <vector>
Typedefs | |
typedef viennacl::compressed_matrix < double > | ViennaMatrixType |
Functions | |
int | lsr_mkb_direct_init (int Solver_id, char *Filename, int Monitoring_level) |
int | lsr_mkb_direct_create (int Solver_id, char *Filename, int Monitoring_level) |
int | lsr_mkb_direct_solve (int Solver_id, int Comp_type, int Matrix_id, int Ndof, double *X, double *B, int Monitor) |
int | lsr_mkb_direct_free (int Solver_id) |
int | lsr_mkb_direct_destroy (int Solver_id) |
Variables | |
lst_mkb_viennacl_solvers | lsv_mkb_viennacl_solver [LSC_MAX_NUM_SOLV] |
typedef viennacl::compressed_matrix<double> ViennaMatrixType |
int lsr_mkb_direct_create | ( | int | Solver_id, | |
char * | Filename, | |||
int | Monitoring_level | |||
) |
----------------------------------------------------------- lsr_mkb_direct_create - to create a new solver instance, read its control parameters and initialize its data structure ------------------------------------------------------------
int lsr_mkb_direct_destroy | ( | int | Solver_id | ) |
-------------------------------------------------------- lsr_mkb_direct_destroy - to destroy a particular instance of the direct solver ------------------------------------------------------------
int lsr_mkb_direct_free | ( | int | Solver_id | ) |
-------------------------------------------------------- lsr_mkb_direct_free - to destroy a particular instance of the direct solver ------------------------------------------------------------
int lsr_mkb_direct_init | ( | int | Solver_id, | |
char * | Filename, | |||
int | Monitoring_level | |||
) |
----------------------------------------------------------- lsr_mkb_direct_init - to create a new solver instance, read its control parameters and initialize its data structure ------------------------------------------------------------
int lsr_mkb_direct_solve | ( | int | Solver_id, | |
int | Comp_type, | |||
int | Matrix_id, | |||
int | Ndof, | |||
double * | X, | |||
double * | B, | |||
int | Monitor | |||
) |
-------------------------------------------------------- lsr_mkb_direct_solve - to solve a system of equations, given previously constructed system matrix, preconditioner ---------------------------------------------------------
lst_mkb_viennacl_solvers lsv_mkb_viennacl_solver[LSC_MAX_NUM_SOLV] |