STARS-H
Software for Testing Accuracy, Reliability and Scalability of Hierarchical computations
|
Go to the source code of this file.
Data Structures | |
struct | starsh_mddata |
Structure for mesh deformation problems. More... | |
Typedefs | |
typedef struct starsh_mddata | STARSH_mddata |
Structure for mesh deformation problems. | |
Functions | |
void | starsh_generate_3d_virus (int nrows, int ncols, STARSH_int *irow, STARSH_int *icol, void *row_data, void *col_data, void *result, int lda) |
void | starsh_generate_3d_virus_rhs (STARSH_int mesh_points, double *A) |
void | starsh_generate_3d_cube (int nrows, int ncols, STARSH_int *irow, STARSH_int *icol, void *row_data, void *col_data, void *result, int lda) |
int | starsh_generate_3d_rbf_mesh_coordinates_virus (STARSH_mddata **data, char *file_name, STARSH_int mesh_points, int ndim, int kernel, int numobj, int isreg, double reg, double rad, double denst, int mordering) |
int | starsh_generate_3d_rbf_mesh_coordinates_cube (STARSH_mddata **data, STARSH_int mesh_points, int ndim, int kernel, int isreg, double reg, double rad, int mordering) |
void | starsh_mddata_free (STARSH_mddata *data) |
Free memory of STARSH_mddata object. More... | |
double | Gaussian (double x) |
double | Expon (double x) |
double | Maternc1 (double x) |
double | Maternc2 (double x) |
double | QUAD (double x) |
double | InvQUAD (double x) |
double | InvMQUAD (double x) |
double | TPS (double x) |
double | Wendland (double x) |
double | CTPS (double x) |
double | diff (double *x, double *y) |
void | cube (double *v, int index, double L, int n) |
STARS-H is a software package, provided by King Abdullah University of Science and Technology (KAUST)
double CTPS | ( | double | x | ) |
RBF Continuous Thin plate spline basis function
[in] | x | Euclidean distance |
void cube | ( | double * | v, |
int | index, | ||
double | L, | ||
int | n | ||
) |
Computing cube Coordinates
[in,out] | v | Mesh Coordinates |
[in] | index | element position |
[in] | L | edge length of cube |
[in] | n | overall size of cube //TODO ask application pp |
double diff | ( | double * | x, |
double * | y | ||
) |
Computing Euclidean distance
[in] | x | Mesh Coordinates along x-axis |
[in] | y | Mesh Coordinates along y-axis |
double Expon | ( | double | x | ) |
RBF Exponential basis function
[in] | x | Euclidean distance |
double Gaussian | ( | double | x | ) |
RBF Gaussian basis function
[in] | x | Euclidean distance |
double InvMQUAD | ( | double | x | ) |
RBF Inverse Multi-Quadratic basis function
[in] | x | Euclidean distance |
double InvQUAD | ( | double | x | ) |
RBF Inverse Quadratic basis function
[in] | x | Euclidean distance |
double Maternc1 | ( | double | x | ) |
RBF Maternc1 basis function
[in] | x | Euclidean distance |
double Maternc2 | ( | double | x | ) |
RBF Maternc2 basis function
[in] | x | Euclidean distance |
double QUAD | ( | double | x | ) |
RBF Quadratic basis function
[in] | x | Euclidean distance |
void starsh_generate_3d_cube | ( | int | nrows, |
int | ncols, | ||
STARSH_int * | irow, | ||
STARSH_int * | icol, | ||
void * | row_data, | ||
void * | col_data, | ||
void * | result, | ||
int | lda | ||
) |
Fills matrix \( A \) with values
[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_mddata object). |
[in] | col_data | Pointer to physical data (STARSH_mddata object). |
[out] | result | Pointer to memory of \( A \). |
[in] | ld | Leading dimension of result . |
int starsh_generate_3d_rbf_mesh_coordinates_cube | ( | STARSH_mddata ** | data, |
STARSH_int | mesh_points, | ||
int | ndim, | ||
int | kernel, | ||
int | isreg, | ||
double | reg, | ||
double | rad, | ||
int | mordering | ||
) |
It reads mesh pointd fron file
[in,out] | data | STARSH_mddata mesh deformation |
[in] | mesh | points: number of mesh points |
[in] | ndim | problem dimension. |
[in] | kernel_type | kernel (0:). |
[in] | isreg | it is either 0 or 1 if you want to add regularizer |
[in] | reg | regularization value |
[in] | rad | RBF scaling factor |
[in] | mordering | 0: no ordering, 1: Morton ordering. |
int starsh_generate_3d_rbf_mesh_coordinates_virus | ( | STARSH_mddata ** | data, |
char * | file_name, | ||
STARSH_int | mesh_points, | ||
int | ndim, | ||
int | kernel, | ||
int | numobj, | ||
int | isreg, | ||
double | reg, | ||
double | rad, | ||
double | denst, | ||
int | mordering | ||
) |
It reads mesh pointd fron file
[in,out] | data | STARSH_mddata mesh deformation |
[in] | file_name | path to mesh file |
[in] | mesh | points: number of mesh points |
[in] | ndim | problem dimension. |
[in] | kernel_type | kernel (0:). |
[in] | numobj | how many objects (e.g. number of viurese) |
[in] | isreg | it is either 0 or 1 if you want to add regularizer |
[in] | reg | regularization value |
[in] | rad | RBF scaling factor |
[in] | denst | density scaling factor |
[in] | mordering | 0: no ordering, 1: Morton ordering. |
void starsh_generate_3d_virus | ( | int | nrows, |
int | ncols, | ||
STARSH_int * | irow, | ||
STARSH_int * | icol, | ||
void * | row_data, | ||
void * | col_data, | ||
void * | result, | ||
int | lda | ||
) |
Fills matrix \( A \) with values
[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_mddata object). |
[in] | col_data | Pointer to physical data (STARSH_mddata object). |
[out] | result | Pointer to memory of \( A \). |
[in] | ld | Leading dimension of result . |
void starsh_generate_3d_virus_rhs | ( | STARSH_int | mesh_points, |
double * | A | ||
) |
Fills matrix (RHS) \( A \) with values
[in] | ld | Total number of mesh points. |
[in,out] | ld | Pointer to memory of \( A \).. |
double TPS | ( | double | x | ) |
RBF Thin plate spline basis function
[in] | x | Euclidean distance |
double Wendland | ( | double | x | ) |
RBF Wendland basis function
[in] | x | Euclidean distance |