|
STARS-H
Software for Testing Accuracy, Reliability and Scalability of Hierarchical computations
|
Set of kernels for electrostatics problems. More...
Functions | |
| void | starsh_esdata_block_coulomb_potential_kernel_nd (int nrows, int ncols, STARSH_int *irow, STARSH_int *icol, void *row_data, void *col_data, void *result, int ld) |
| Coulomb potential for n-dimensional electrostatics problem. More... | |
| void | starsh_esdata_block_coulomb_potential_kernel_nd_simd (int nrows, int ncols, STARSH_int *irow, STARSH_int *icol, void *row_data, void *col_data, void *result, int ld) |
| Coulomb potential for n-dimensional electrostatics problem. More... | |
| void | starsh_esdata_block_coulomb_potential_kernel_1d (int nrows, int ncols, STARSH_int *irow, STARSH_int *icol, void *row_data, void *col_data, void *result, int ld) |
| Coulomb potential for 1-dimensional electrostatics problem. More... | |
| void | starsh_esdata_block_coulomb_potential_kernel_1d_simd (int nrows, int ncols, STARSH_int *irow, STARSH_int *icol, void *row_data, void *col_data, void *result, int ld) |
| Coulomb potential for 1-dimensional electrostatics problem. More... | |
| void | starsh_esdata_block_coulomb_potential_kernel_2d (int nrows, int ncols, STARSH_int *irow, STARSH_int *icol, void *row_data, void *col_data, void *result, int ld) |
| Coulomb potential for 2-dimensional electrostatics problem. More... | |
| void | starsh_esdata_block_coulomb_potential_kernel_2d_simd (int nrows, int ncols, STARSH_int *irow, STARSH_int *icol, void *row_data, void *col_data, void *result, int ld) |
| Coulomb potential for 2-dimensional electrostatics problem. More... | |
| void | starsh_esdata_block_coulomb_potential_kernel_3d (int nrows, int ncols, STARSH_int *irow, STARSH_int *icol, void *row_data, void *col_data, void *result, int ld) |
| Coulomb potential for 3-dimensional electrostatics problem. More... | |
| void | starsh_esdata_block_coulomb_potential_kernel_3d_simd (int nrows, int ncols, STARSH_int *irow, STARSH_int *icol, void *row_data, void *col_data, void *result, int ld) |
| Coulomb potential for 3-dimensional electrostatics problem. More... | |
| void | starsh_esdata_block_coulomb_potential_kernel_4d (int nrows, int ncols, STARSH_int *irow, STARSH_int *icol, void *row_data, void *col_data, void *result, int ld) |
| Coulomb potential for 4-dimensional electrostatics problem. More... | |
| void | starsh_esdata_block_coulomb_potential_kernel_4d_simd (int nrows, int ncols, STARSH_int *irow, STARSH_int *icol, void *row_data, void *col_data, void *result, int ld) |
| Coulomb potential for 4-dimensional electrostatics problem. More... | |
Set of kernels for electrostatics problems.
Click on functions to view implemented equations.
| void starsh_esdata_block_coulomb_potential_kernel_1d | ( | int | nrows, |
| int | ncols, | ||
| STARSH_int * | irow, | ||
| STARSH_int * | icol, | ||
| void * | row_data, | ||
| void * | col_data, | ||
| void * | result, | ||
| int | ld | ||
| ) |
Coulomb potential for 1-dimensional electrostatics problem.
Fills matrix \( A \) with values
\[ A_{ij} = \frac{1}{r_{ij}}, \]
\( r_{ij} \) is a distance between \(i\)-th and \(j\)-th spatial points. No memory is allocated in this function!
| [in] | nrows | Number of rows of \( A \). |
| [in] | ncols | Number of columns of \( A \). |
| [in] | irow | Array of row indexes. |
| [in] | icol | Array of column indexes. |
| [in] | row_data | Pointer to physical data (STARSH_ssdata object). |
| [in] | col_data | Pointer to physical data (STARSH_ssdata object). |
| [out] | result | Pointer to memory of \( A \). |
| [in] | ld | Leading dimension of result. |
| void starsh_esdata_block_coulomb_potential_kernel_1d_simd | ( | int | nrows, |
| int | ncols, | ||
| STARSH_int * | irow, | ||
| STARSH_int * | icol, | ||
| void * | row_data, | ||
| void * | col_data, | ||
| void * | result, | ||
| int | ld | ||
| ) |
Coulomb potential for 1-dimensional electrostatics problem.
Fills matrix \( A \) with values
\[ A_{ij} = \frac{1}{r_{ij}}, \]
\( r_{ij} \) is a distance between \(i\)-th and \(j\)-th spatial points. No memory is allocated in this function!
Uses SIMD instructions.
| [in] | nrows | Number of rows of \( A \). |
| [in] | ncols | Number of columns of \( A \). |
| [in] | irow | Array of row indexes. |
| [in] | icol | Array of column indexes. |
| [in] | row_data | Pointer to physical data (STARSH_ssdata object). |
| [in] | col_data | Pointer to physical data (STARSH_ssdata object). |
| [out] | result | Pointer to memory of \( A \). |
| [in] | ld | Leading dimension of result. |
| void starsh_esdata_block_coulomb_potential_kernel_2d | ( | int | nrows, |
| int | ncols, | ||
| STARSH_int * | irow, | ||
| STARSH_int * | icol, | ||
| void * | row_data, | ||
| void * | col_data, | ||
| void * | result, | ||
| int | ld | ||
| ) |
Coulomb potential for 2-dimensional electrostatics problem.
Fills matrix \( A \) with values
\[ A_{ij} = \frac{1}{r_{ij}}, \]
\( r_{ij} \) is a distance between \(i\)-th and \(j\)-th spatial points. No memory is allocated in this function!
| [in] | nrows | Number of rows of \( A \). |
| [in] | ncols | Number of columns of \( A \). |
| [in] | irow | Array of row indexes. |
| [in] | icol | Array of column indexes. |
| [in] | row_data | Pointer to physical data (STARSH_ssdata object). |
| [in] | col_data | Pointer to physical data (STARSH_ssdata object). |
| [out] | result | Pointer to memory of \( A \). |
| [in] | ld | Leading dimension of result. |
| void starsh_esdata_block_coulomb_potential_kernel_2d_simd | ( | int | nrows, |
| int | ncols, | ||
| STARSH_int * | irow, | ||
| STARSH_int * | icol, | ||
| void * | row_data, | ||
| void * | col_data, | ||
| void * | result, | ||
| int | ld | ||
| ) |
Coulomb potential for 2-dimensional electrostatics problem.
Fills matrix \( A \) with values
\[ A_{ij} = \frac{1}{r_{ij}}, \]
\( r_{ij} \) is a distance between \(i\)-th and \(j\)-th spatial points. No memory is allocated in this function!
Uses SIMD instructions.
| [in] | nrows | Number of rows of \( A \). |
| [in] | ncols | Number of columns of \( A \). |
| [in] | irow | Array of row indexes. |
| [in] | icol | Array of column indexes. |
| [in] | row_data | Pointer to physical data (STARSH_ssdata object). |
| [in] | col_data | Pointer to physical data (STARSH_ssdata object). |
| [out] | result | Pointer to memory of \( A \). |
| [in] | ld | Leading dimension of result. |
| void starsh_esdata_block_coulomb_potential_kernel_3d | ( | int | nrows, |
| int | ncols, | ||
| STARSH_int * | irow, | ||
| STARSH_int * | icol, | ||
| void * | row_data, | ||
| void * | col_data, | ||
| void * | result, | ||
| int | ld | ||
| ) |
Coulomb potential for 3-dimensional electrostatics problem.
Fills matrix \( A \) with values
\[ A_{ij} = \frac{1}{r_{ij}}, \]
\( r_{ij} \) is a distance between \(i\)-th and \(j\)-th spatial points. No memory is allocated in this function!
| [in] | nrows | Number of rows of \( A \). |
| [in] | ncols | Number of columns of \( A \). |
| [in] | irow | Array of row indexes. |
| [in] | icol | Array of column indexes. |
| [in] | row_data | Pointer to physical data (STARSH_ssdata object). |
| [in] | col_data | Pointer to physical data (STARSH_ssdata object). |
| [out] | result | Pointer to memory of \( A \). |
| [in] | ld | Leading dimension of result. |
| void starsh_esdata_block_coulomb_potential_kernel_3d_simd | ( | int | nrows, |
| int | ncols, | ||
| STARSH_int * | irow, | ||
| STARSH_int * | icol, | ||
| void * | row_data, | ||
| void * | col_data, | ||
| void * | result, | ||
| int | ld | ||
| ) |
Coulomb potential for 3-dimensional electrostatics problem.
Fills matrix \( A \) with values
\[ A_{ij} = \frac{1}{r_{ij}}, \]
\( r_{ij} \) is a distance between \(i\)-th and \(j\)-th spatial points. No memory is allocated in this function!
Uses SIMD instructions.
| [in] | nrows | Number of rows of \( A \). |
| [in] | ncols | Number of columns of \( A \). |
| [in] | irow | Array of row indexes. |
| [in] | icol | Array of column indexes. |
| [in] | row_data | Pointer to physical data (STARSH_ssdata object). |
| [in] | col_data | Pointer to physical data (STARSH_ssdata object). |
| [out] | result | Pointer to memory of \( A \). |
| [in] | ld | Leading dimension of result. |
| void starsh_esdata_block_coulomb_potential_kernel_4d | ( | int | nrows, |
| int | ncols, | ||
| STARSH_int * | irow, | ||
| STARSH_int * | icol, | ||
| void * | row_data, | ||
| void * | col_data, | ||
| void * | result, | ||
| int | ld | ||
| ) |
Coulomb potential for 4-dimensional electrostatics problem.
Fills matrix \( A \) with values
\[ A_{ij} = \frac{1}{r_{ij}}, \]
\( r_{ij} \) is a distance between \(i\)-th and \(j\)-th spatial points. No memory is allocated in this function!
| [in] | nrows | Number of rows of \( A \). |
| [in] | ncols | Number of columns of \( A \). |
| [in] | irow | Array of row indexes. |
| [in] | icol | Array of column indexes. |
| [in] | row_data | Pointer to physical data (STARSH_ssdata object). |
| [in] | col_data | Pointer to physical data (STARSH_ssdata object). |
| [out] | result | Pointer to memory of \( A \). |
| [in] | ld | Leading dimension of result. |
| void starsh_esdata_block_coulomb_potential_kernel_4d_simd | ( | int | nrows, |
| int | ncols, | ||
| STARSH_int * | irow, | ||
| STARSH_int * | icol, | ||
| void * | row_data, | ||
| void * | col_data, | ||
| void * | result, | ||
| int | ld | ||
| ) |
Coulomb potential for 4-dimensional electrostatics problem.
Fills matrix \( A \) with values
\[ A_{ij} = \frac{1}{r_{ij}}, \]
\( r_{ij} \) is a distance between \(i\)-th and \(j\)-th spatial points. No memory is allocated in this function!
Uses SIMD instructions.
| [in] | nrows | Number of rows of \( A \). |
| [in] | ncols | Number of columns of \( A \). |
| [in] | irow | Array of row indexes. |
| [in] | icol | Array of column indexes. |
| [in] | row_data | Pointer to physical data (STARSH_ssdata object). |
| [in] | col_data | Pointer to physical data (STARSH_ssdata object). |
| [out] | result | Pointer to memory of \( A \). |
| [in] | ld | Leading dimension of result. |
| void starsh_esdata_block_coulomb_potential_kernel_nd | ( | int | nrows, |
| int | ncols, | ||
| STARSH_int * | irow, | ||
| STARSH_int * | icol, | ||
| void * | row_data, | ||
| void * | col_data, | ||
| void * | result, | ||
| int | ld | ||
| ) |
Coulomb potential for n-dimensional electrostatics problem.
Fills matrix \( A \) with values
\[ A_{ij} = \frac{1}{r_{ij}}, \]
\( r_{ij} \) is a distance between \(i\)-th and \(j\)-th spatial points. No memory is allocated in this function!
| [in] | nrows | Number of rows of \( A \). |
| [in] | ncols | Number of columns of \( A \). |
| [in] | irow | Array of row indexes. |
| [in] | icol | Array of column indexes. |
| [in] | row_data | Pointer to physical data (STARSH_ssdata object). |
| [in] | col_data | Pointer to physical data (STARSH_ssdata object). |
| [out] | result | Pointer to memory of \( A \). |
| [in] | ld | Leading dimension of result. |
| void starsh_esdata_block_coulomb_potential_kernel_nd_simd | ( | int | nrows, |
| int | ncols, | ||
| STARSH_int * | irow, | ||
| STARSH_int * | icol, | ||
| void * | row_data, | ||
| void * | col_data, | ||
| void * | result, | ||
| int | ld | ||
| ) |
Coulomb potential for n-dimensional electrostatics problem.
Fills matrix \( A \) with values
\[ A_{ij} = \frac{1}{r_{ij}}, \]
\( r_{ij} \) is a distance between \(i\)-th and \(j\)-th spatial points. No memory is allocated in this function!
Uses SIMD instructions.
| [in] | nrows | Number of rows of \( A \). |
| [in] | ncols | Number of columns of \( A \). |
| [in] | irow | Array of row indexes. |
| [in] | icol | Array of column indexes. |
| [in] | row_data | Pointer to physical data (STARSH_ssdata object). |
| [in] | col_data | Pointer to physical data (STARSH_ssdata object). |
| [out] | result | Pointer to memory of \( A \). |
| [in] | ld | Leading dimension of result. |