FrontISTR  5.7.0
Large-scale structural analysis program with finit element method
hecmw_ML_helper_nn.h
Go to the documentation of this file.
1 /*****************************************************************************
2  * Copyright (c) 2019 FrontISTR Commons
3  * This software is released under the MIT License, see LICENSE.txt
4  *****************************************************************************/
5 
6 #ifndef HECMW_ML_HELPER_NN_INCLUDED
7 #define HECMW_ML_HELPER_NN_INCLUDED
8 
9 #ifdef HECMW_WITH_ML
10 
11 #include "ml_include.h"
12 
13 /*
14  * prototype of helper functions in hecmw_ML_helper_f_nn.f90
15  */
16 extern void hecmw_ml_getrow_nn_(int *id, int *n_requested_rows,
17  int *requested_rows, int *allocated_space,
18  int *cols, double *values, int *row_lengths,
19  int *ierr);
20 extern void hecmw_ml_matvec_nn_(int *id, int *in_length, double *p,
21  int *out_length, double *ap, int *ierr);
22 extern void hecmw_ml_comm_nn_(int *id, double *x, int *ierr);
23 extern void hecmw_ml_smoother_diag_setup_nn_(int *id, int *ierr);
24 extern void hecmw_ml_smoother_diag_apply_nn_(int *id, int *x_length, double x[],
25  int *rhs_length, double rhs[], int *ierr);
26 extern void hecmw_ml_smoother_diag_clear_nn_(int *id, int *ierr);
27 extern void hecmw_ml_smoother_ssor_setup_nn_(int *id, int *ierr);
28 extern void hecmw_ml_smoother_ssor_apply_nn_(int *id, int *x_length, double x[],
29  int *rhs_length, double rhs[], int *ierr);
30 extern void hecmw_ml_smoother_ssor_clear_nn_(int *id, int *ierr);
31 
32 /*
33  * prototype of helper functions in hecmw_ML_helper_nn.c
34  */
35 
36 extern int hecmw_ML_getrow_nn(ML_Operator *mat_in, int N_requested_rows,
37  int requested_rows[], int allocated_space,
38  int cols[], double values[], int row_lengths[]);
39 extern int hecmw_ML_matvec_nn(ML_Operator *mat_in, int in_length, double p[],
40  int out_length, double ap[]);
41 extern int hecmw_ML_comm_nn(double x[], void *A_data);
42 extern int hecmw_ML_smoother_diag_apply_nn(ML_Smoother *data, int x_length, double x[],
43  int rhs_length, double rhs[]);
44 extern int hecmw_ML_smoother_ssor_apply_nn(ML_Smoother *data, int x_length, double x[],
45  int rhs_length, double rhs[]);
46 
47 #endif /* HECMW_WITH_ML */
48 
49 #endif /* HECMW_ML_HELPER_NN_INCLUDED */
data
CNFData data
Definition: neu_reporter.cpp:18
m_set_arrays_directsolver_contact::values
real(kind=kreal), dimension(:), allocatable values
a
Definition: set_arrays_DirectSolver.f90:16