Commit 2f842322 authored by Andreas Marek's avatar Andreas Marek
Browse files

Document the C generic definitions

parent 0d1baded
#pragma once #pragma once
/** /* \brief generic C method for elpa_set
* \todo document elpa_set() *
* \param handle handle of the ELPA object for which a key/value pair should be set
* \param name the name of the key
* \param value integer/double value to be set for the key
* \param error on return the error code, which can be queried with elpa_strerr()
* \result void
*/ */
#define elpa_set(e, name, value, error) _Generic((value), \ #define elpa_set(e, name, value, error) _Generic((value), \
int: \ int: \
...@@ -11,8 +16,14 @@ ...@@ -11,8 +16,14 @@
elpa_set_double \ elpa_set_double \
)(e, name, value, error) )(e, name, value, error)
/**
* \todo document elpa_get() /* \brief generic C method for elpa_get
*
* \param handle handle of the ELPA object for which a key/value pair should be queried
* \param name the name of the key
* \param value integer/double value to be queried
* \param error on return the error code, which can be queried with elpa_strerr()
* \result void
*/ */
#define elpa_get(e, name, value, error) _Generic((value), \ #define elpa_get(e, name, value, error) _Generic((value), \
int*: \ int*: \
...@@ -23,8 +34,14 @@ ...@@ -23,8 +34,14 @@
)(e, name, value, error) )(e, name, value, error)
/** /* \brief generic C method for elpa_solve
* \todo document elpa_solve() *
* \param handle handle of the ELPA object, which defines the problem
* \param a float/double float complex/double complex pointer to matrix a
* \param ev on return: float/double pointer to eigenvalues
* \param q on return: float/double float complex/double complex pointer to eigenvectors
* \param error on return the error code, which can be queried with elpa_strerr()
* \result void
*/ */
#define elpa_solve(handle, a, ev, q, error) _Generic((a), \ #define elpa_solve(handle, a, ev, q, error) _Generic((a), \
double*: \ double*: \
...@@ -40,9 +57,13 @@ ...@@ -40,9 +57,13 @@
elpa_solve_fc \ elpa_solve_fc \
)(handle, a, ev, q, error) )(handle, a, ev, q, error)
/* \brief generic C method for elpa_cholesky
/** *
* \todo document elpa_cholesky() * \param handle handle of the ELPA object, which defines the problem
* \param a float/double float complex/double complex pointer to matrix a, for which
* the cholesky factorizaion will be computed
* \param error on return the error code, which can be queried with elpa_strerr()
* \result void
*/ */
#define elpa_cholesky(handle, a, error) _Generic((a), \ #define elpa_cholesky(handle, a, error) _Generic((a), \
double*: \ double*: \
...@@ -59,8 +80,13 @@ ...@@ -59,8 +80,13 @@
)(handle, a, error) )(handle, a, error)
/** /* \brief generic C method for elpa_invert_triangular
* \todo document elpa_invert_triangular() *
* \param handle handle of the ELPA object, which defines the problem
* \param a float/double float complex/double complex pointer to matrix a, which
* should be inverted
* \param error on return the error code, which can be queried with elpa_strerr()
* \result void
*/ */
#define elpa_invert_triangular(handle, a, error) _Generic((a), \ #define elpa_invert_triangular(handle, a, error) _Generic((a), \
double*: \ double*: \
...@@ -76,8 +102,16 @@ ...@@ -76,8 +102,16 @@
elpa_invert_trm_fc \ elpa_invert_trm_fc \
)(handle, a, error) )(handle, a, error)
/**
* \todo document elpa_solve_tridi() /* \brief generic C method for elpa_solve_tridi
*
* \param handle handle of the ELPA object, which defines the problem
* \param d float/double pointer to the diagonal elements of a matrix a,
* on output: eigenvalues in ascending order
* \param e float/double pointer to the subdiagonal elements of a matrix a
* \param q on output: float/double pointer to the eigenvectors
* \param error on return the error code, which can be queried with elpa_strerr()
* \result void
*/ */
#define elpa_solve_tridi(handle, d, e, q, error) _Generic((d), \ #define elpa_solve_tridi(handle, d, e, q, error) _Generic((d), \
double*: \ double*: \
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment