189 int is_already_decomposed,
int *error);
191 int is_already_decomposed,
int *error);
193 int is_already_decomposed,
int *error);
195 int is_already_decomposed,
int *error);
197 int is_already_decomposed,
int *error);
199 int is_already_decomposed,
int *error);
201 int is_already_decomposed,
int *error);
203 int is_already_decomposed,
int *error);
204 void elpa_hermitian_multiply_d(
elpa_t handle,
char uplo_a,
char uplo_c,
int ncb,
double *a,
double *b,
int nrows_b,
int ncols_b,
double *c,
int nrows_c,
int ncols_c,
int *error);
205 void elpa_hermitian_multiply_df(
elpa_t handle,
char uplo_a,
char uplo_c,
int ncb,
float *a,
float *b,
int nrows_b,
int ncols_b,
float *c,
int nrows_c,
int ncols_c,
int *error);
206 void elpa_hermitian_multiply_dc(
elpa_t handle,
char uplo_a,
char uplo_c,
int ncb,
double complex *a,
double complex *b,
int nrows_b,
int ncols_b,
double complex *c,
int nrows_c,
int ncols_c,
int *error);
207 void elpa_hermitian_multiply_fc(
elpa_t handle,
char uplo_a,
char uplo_c,
int ncb,
float complex *a,
float complex *b,
int nrows_b,
int ncols_b,
float complex *c,
int nrows_c,
int ncols_c,
int *error);
217 #if OPTIONAL_C_ERROR_ARGUMENT == 1
218 #define elpa_allocate(...) CONC(elpa_allocate, NARGS(__VA_ARGS__))(__VA_ARGS__)
220 #if OPTIONAL_C_ERROR_ARGUMENT == 1
221 elpa_t elpa_allocate2(
int *error);
224 #if OPTIONAL_C_ERROR_ARGUMENT == 1
225 #define NARGS(...) NARGS_(__VA_ARGS__, 5, 4, 3, 2, 1, 0)
226 #define NARGS_(_5, _4, _3, _2, _1, N, ...) N
227 #define CONC(A, B) CONC_(A, B)
228 #define CONC_(A, B) A##B
229 #define elpa_deallocate(...) CONC(elpa_deallocate, NARGS(__VA_ARGS__))(__VA_ARGS__)
231 #if OPTIONAL_C_ERROR_ARGUMENT == 1
232 void elpa_deallocate2(
elpa_t handle,
int *error);
233 void elpa_deallocate1(
elpa_t handle);
235 #if OPTIONAL_C_ERROR_ARGUMENT == 1
236 #define elpa_autotune_deallocate(...) CONC(elpa_autotune_deallocate, NARGS(__VA_ARGS__))(__VA_ARGS__)
238 #if OPTIONAL_C_ERROR_ARGUMENT == 1
242 #if OPTIONAL_C_ERROR_ARGUMENT == 1
243 #define elpa_uninit(...) CONC(elpa_uninit, NARGS(__VA_ARGS__))(__VA_ARGS__)
245 #if OPTIONAL_C_ERROR_ARGUMENT == 1
246 void elpa_uninit1(
int *error);
249 #if OPTIONAL_C_ERROR_ARGUMENT != 1
252 #if OPTIONAL_C_ERROR_ARGUMENT != 1
255 #if OPTIONAL_C_ERROR_ARGUMENT != 1
258 #if OPTIONAL_C_ERROR_ARGUMENT != 1
struct elpa_struct * elpa_t
Definition: elpa.h:10
struct elpa_autotune_struct * elpa_autotune_t
Definition: elpa.h:13
void elpa_set_integer(elpa_t handle, const char *name, int value, int *error)
C interface for the implementation of the elpa_set_integer method This method is available to the use...
void elpa_set_float(elpa_t handle, const char *name, float value, int *error)
C interface for the implementation of the elpa_set_float method This method is available to the user ...
void elpa_autotune_print_state(elpa_t handle, elpa_autotune_t autotune_handle, int *error)
C interface for the implementation of the elpa_autotune_print_state method.
void elpa_skew_eigenvectors_all_host_arrays_d(elpa_t handle, double *a, double *ev, double *q, int *error)
void elpa_hermitian_multiply_d(elpa_t handle, char uplo_a, char uplo_c, int ncb, double *a, double *b, int nrows_b, int ncols_b, double *c, int nrows_c, int ncols_c, int *error)
void elpa_skew_eigenvectors_all_host_arrays_f(elpa_t handle, float *a, float *ev, float *q, int *error)
void elpa_eigenvalues_device_pointer_d(elpa_t handle, double *a, double *ev, int *error)
void elpa_skew_eigenvectors_device_pointer_d(elpa_t handle, double *a, double *ev, double *q, int *error)
void elpa_skew_eigenvalues_all_host_arrays_d(elpa_t handle, double *a, double *ev, int *error)
void elpa_get_integer(elpa_t handle, const char *name, int *value, int *error)
C interface for the implementation of the elpa_get_integer method This method is available to the use...
int elpa_setup(elpa_t handle)
C interface for the implementation of the elpa_autotune_deallocate method.
void elpa_hermitian_multiply_fc(elpa_t handle, char uplo_a, char uplo_c, int ncb, float complex *a, float complex *b, int nrows_b, int ncols_b, float complex *c, int nrows_c, int ncols_c, int *error)
void elpa_eigenvectors_all_host_arrays_f(elpa_t handle, float *a, float *ev, float *q, int *error)
void elpa_uninit(int *error)
void elpa_eigenvalues_all_host_arrays_fc(elpa_t handle, float complex *a, float *ev, int *error)
void elpa_generalized_eigenvectors_f(elpa_t handle, float *a, float *b, float *ev, float *q, int is_already_decomposed, int *error)
void elpa_print_settings(elpa_t handle, int *error)
C interface for the implementation of the elpa_print_settings method.
void elpa_eigenvalues_all_host_arrays_d(elpa_t handle, double *a, double *ev, int *error)
void elpa_deallocate(elpa_t handle, int *error)
int elpa_init(int api_version)
void elpa_generalized_eigenvectors_fc(elpa_t handle, float complex *a, float complex *b, float *ev, float complex *q, int is_already_decomposed, int *error)
void elpa_load_settings(elpa_t handle, const char *filename, int *error)
C interface for the implementation of the elpa_allocate method.
void elpa_generalized_eigenvectors_dc(elpa_t handle, double complex *a, double complex *b, double *ev, double complex *q, int is_already_decomposed, int *error)
void elpa_autotune_print_best(elpa_t handle, elpa_autotune_t autotune_handle, int *error)
C interface for the implementation of the elpa_autotune_print_best method.
void elpa_skew_eigenvectors_device_pointer_f(elpa_t handle, float *a, float *ev, float *q, int *error)
void elpa_cholesky_d(elpa_t handle, double *a, int *error)
void elpa_generalized_eigenvalues_d(elpa_t handle, double *a, double *b, double *ev, int is_already_decomposed, int *error)
void elpa_generalized_eigenvalues_f(elpa_t handle, float *a, float *b, float *ev, int is_already_decomposed, int *error)
void elpa_autotune_set_best(elpa_t handle, elpa_autotune_t autotune_handle, int *error)
C interface for the implementation of the elpa_autotune_set_best method.
void elpa_eigenvectors_device_pointer_d(elpa_t handle, double *a, double *ev, double *q, int *error)
void elpa_eigenvalues_device_pointer_fc(elpa_t handle, float complex *a, float *ev, int *error)
void elpa_hermitian_multiply_dc(elpa_t handle, char uplo_a, char uplo_c, int ncb, double complex *a, double complex *b, int nrows_b, int ncols_b, double complex *c, int nrows_c, int ncols_c, int *error)
void elpa_autotune_set_api_version(elpa_t handle, int api_version, int *error)
C interface for the implementation of the elpa_autotune_set_api_version method.
void elpa_eigenvalues_all_host_arrays_f(elpa_t handle, float *a, float *ev, int *error)
void elpa_invert_trm_d(elpa_t handle, double *a, int *error)
void elpa_cholesky_f(elpa_t handle, float *a, int *error)
void elpa_generalized_eigenvalues_fc(elpa_t handle, float complex *a, float complex *b, float *ev, int is_already_decomposed, int *error)
void elpa_eigenvalues_device_pointer_dc(elpa_t handle, double complex *a, double *ev, int *error)
void elpa_autotune_load_state(elpa_t handle, elpa_autotune_t autotune_handle, const char *filename, int *error)
C interface for the implementation of the elpa_autotune_load_state method.
void elpa_invert_trm_fc(elpa_t handle, float complex *a, int *error)
void elpa_eigenvectors_all_host_arrays_d(elpa_t handle, double *a, double *ev, double *q, int *error)
int elpa_autotune_step(elpa_t handle, elpa_autotune_t autotune_handle, int *error)
C interface for the implementation of the elpa_autotune_step method.
void elpa_generalized_eigenvalues_dc(elpa_t handle, double complex *a, double complex *b, double *ev, int is_already_decomposed, int *error)
void elpa_skew_eigenvalues_all_host_arrays_f(elpa_t handle, float *a, float *ev, int *error)
elpa_autotune_t elpa_autotune_setup(elpa_t handle, int level, int domain, int *error)
C interface for the implementation of the elpa_autotune_setup method.
void elpa_eigenvectors_device_pointer_dc(elpa_t handle, double complex *a, double *ev, double complex *q, int *error)
void elpa_autotune_save_state(elpa_t handle, elpa_autotune_t autotune_handle, const char *filename, int *error)
C interface for the implementation of the elpa_autotune_save_state method.
void elpa_cholesky_dc(elpa_t handle, double complex *a, int *error)
void elpa_eigenvalues_device_pointer_f(elpa_t handle, float *a, float *ev, int *error)
void elpa_skew_eigenvalues_device_pointer_f(elpa_t handle, float *a, float *ev, int *error)
void elpa_eigenvectors_device_pointer_fc(elpa_t handle, float complex *a, float *ev, float complex *q, int *error)
void elpa_eigenvectors_device_pointer_f(elpa_t handle, float *a, float *ev, float *q, int *error)
void elpa_invert_trm_f(elpa_t handle, float *a, int *error)
void elpa_eigenvectors_all_host_arrays_fc(elpa_t handle, float complex *a, float *ev, float complex *q, int *error)
void elpa_store_settings(elpa_t handle, const char *filename, int *error)
C interface for the implementation of the elpa_store_settings method.
void elpa_set_double(elpa_t handle, const char *name, double value, int *error)
C interface for the implementation of the elpa_set_double method This method is available to the user...
void elpa_invert_trm_dc(elpa_t handle, double complex *a, int *error)
void elpa_get_double(elpa_t handle, const char *name, double *value, int *error)
C interface for the implementation of the elpa_get_double method This method is available to the user...
void elpa_cholesky_fc(elpa_t handle, float complex *a, int *error)
void elpa_get_float(elpa_t handle, const char *name, float *value, int *error)
C interface for the implementation of the elpa_get_float method This method is available to the user ...
elpa_t elpa_allocate(int *error)
void elpa_generalized_eigenvectors_d(elpa_t handle, double *a, double *b, double *ev, double *q, int is_already_decomposed, int *error)
void elpa_eigenvalues_all_host_arrays_dc(elpa_t handle, double complex *a, double *ev, int *error)
void elpa_autotune_deallocate(elpa_autotune_t handle, int *error)
void elpa_hermitian_multiply_df(elpa_t handle, char uplo_a, char uplo_c, int ncb, float *a, float *b, int nrows_b, int ncols_b, float *c, int nrows_c, int ncols_c, int *error)
void elpa_skew_eigenvalues_device_pointer_d(elpa_t handle, double *a, double *ev, int *error)
void elpa_eigenvectors_all_host_arrays_dc(elpa_t handle, double complex *a, double *ev, double complex *q, int *error)