GRASS GIS 8 Programmer's Manual
8.5.0dev(2024)-d6dec75dd4
|
#include <math.h>
#include <unistd.h>
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
#include <grass/gis.h>
#include <grass/gmath.h>
Go to the source code of this file.
Functions | |
void | G_math_d_x_dot_y (double *x, double *y, double *value, int rows) |
Compute the dot product of vector x and y. More... | |
void | G_math_d_euclid_norm (double *x, double *value, int rows) |
Compute the euclid norm of vector x. More... | |
void | G_math_d_asum_norm (double *x, double *value, int rows) |
Compute the asum norm of vector x. More... | |
void | G_math_d_max_norm (double *x, double *value, int rows) |
Compute the maximum norm of vector x. More... | |
void | G_math_d_ax_by (double *x, double *y, double *z, double a, double b, int rows) |
Scales vectors x and y with the scalars a and b and adds them. More... | |
void | G_math_d_copy (double *x, double *y, int rows) |
Copy the vector x to y. More... | |
void | G_math_f_x_dot_y (float *x, float *y, float *value, int rows) |
Compute the dot product of vector x and y. More... | |
void | G_math_f_euclid_norm (float *x, float *value, int rows) |
Compute the euclid norm of vector x. More... | |
void | G_math_f_asum_norm (float *x, float *value, int rows) |
Compute the asum norm of vector x. More... | |
void | G_math_f_max_norm (float *x, float *value, int rows) |
Compute the maximum norm of vector x. More... | |
void | G_math_f_ax_by (float *x, float *y, float *z, float a, float b, int rows) |
Scales vectors x and y with the scalars a and b and adds them. More... | |
void | G_math_f_copy (float *x, float *y, int rows) |
Copy the vector x to y. More... | |
void | G_math_i_x_dot_y (int *x, int *y, double *value, int rows) |
Compute the dot product of vector x and y. More... | |
void | G_math_i_euclid_norm (int *x, double *value, int rows) |
Compute the euclid norm of vector x. More... | |
void | G_math_i_asum_norm (int *x, double *value, int rows) |
Compute the asum norm of vector x. More... | |
void | G_math_i_max_norm (int *x, int *value, int rows) |
Compute the maximum norm of vector x. More... | |
void | G_math_i_ax_by (int *x, int *y, int *z, int a, int b, int rows) |
Scales vectors x and y with the scalars a and b and adds them. More... | |
void | G_math_i_copy (int *x, int *y, int rows) |
Copy the vector x to y. More... | |
void G_math_d_asum_norm | ( | double * | x, |
double * | value, | ||
int | rows | ||
) |
Compute the asum norm of vector x.
The functions creates its own parallel OpenMP region. It can be called within a parallel OpenMP region if nested parallelism is supported by the compiler.
x | (double *)– the vector |
value | (double *) – the return value |
rows | (int) |
Definition at line 111 of file blas_level_1.c.
Referenced by G_math_dasum().
void G_math_d_ax_by | ( | double * | x, |
double * | y, | ||
double * | z, | ||
double | a, | ||
double | b, | ||
int | rows | ||
) |
Scales vectors x and y with the scalars a and b and adds them.
This function is multi-threaded with OpenMP and can be called within a parallel OpenMP region.
x | (double *) |
y | (double *) |
z | (double *) |
a | (double) |
b | (double) |
rows | (int) |
Definition at line 173 of file blas_level_1.c.
void G_math_d_copy | ( | double * | x, |
double * | y, | ||
int | rows | ||
) |
Copy the vector x to y.
This function is not multi-threaded
x | (double *) |
y | (double *) |
rows | (int) |
Definition at line 237 of file blas_level_1.c.
References x.
Referenced by G_math_dcopy().
void G_math_d_euclid_norm | ( | double * | x, |
double * | value, | ||
int | rows | ||
) |
Compute the euclid norm of vector x.
The functions creates its own parallel OpenMP region. It can be called within a parallel OpenMP region if nested parallelism is supported by the compiler.
x | (double *) – the vector |
value | (double *) – the return value |
rows | (int) |
Definition at line 79 of file blas_level_1.c.
Referenced by G_math_dnrm2().
void G_math_d_max_norm | ( | double * | x, |
double * | value, | ||
int | rows | ||
) |
Compute the maximum norm of vector x.
This function is not multi-threaded
x | (double *)– the vector |
value | (double *) – the return value |
rows | (int) |
Definition at line 141 of file blas_level_1.c.
Referenced by G_math_idamax().
void G_math_d_x_dot_y | ( | double * | x, |
double * | y, | ||
double * | value, | ||
int | rows | ||
) |
Compute the dot product of vector x and y.
The functions creates its own parallel OpenMP region. It can be called within a parallel OpenMP region if nested parallelism is supported by the compiler.
x | (double *) |
y | (double *) |
value | (double *) – the return value |
rows | (int) |
Definition at line 47 of file blas_level_1.c.
Referenced by G_math_ddot().
void G_math_f_asum_norm | ( | float * | x, |
float * | value, | ||
int | rows | ||
) |
Compute the asum norm of vector x.
The functions creates its own parallel OpenMP region. It can be called within a parallel OpenMP region if nested parallelism is supported by the compiler.
x | (float *)– the vector |
value | (float *) – the return value |
rows | (int) |
Definition at line 328 of file blas_level_1.c.
Referenced by G_math_sasum().
void G_math_f_ax_by | ( | float * | x, |
float * | y, | ||
float * | z, | ||
float | a, | ||
float | b, | ||
int | rows | ||
) |
Scales vectors x and y with the scalars a and b and adds them.
This function is multi-threaded with OpenMP and can be called within a parallel OpenMP region.
x | (float *) |
y | (float *) |
z | (float *) |
a | (float) |
b | (float) |
rows | (int) |
Definition at line 390 of file blas_level_1.c.
void G_math_f_copy | ( | float * | x, |
float * | y, | ||
int | rows | ||
) |
Copy the vector x to y.
This function is not multi-threaded
x | (float *) |
y | (float *) |
rows | (int) |
Definition at line 453 of file blas_level_1.c.
References x.
Referenced by G_math_scopy().
void G_math_f_euclid_norm | ( | float * | x, |
float * | value, | ||
int | rows | ||
) |
Compute the euclid norm of vector x.
The functions creates its own parallel OpenMP region. It can be called within a parallel OpenMP region if nested parallelism is supported by the compiler.
x | (double *) – the vector |
value | (float *) – the return value |
rows | (int) |
Definition at line 296 of file blas_level_1.c.
Referenced by G_math_snrm2().
void G_math_f_max_norm | ( | float * | x, |
float * | value, | ||
int | rows | ||
) |
Compute the maximum norm of vector x.
This function is not multi-threaded
x | (float *)– the vector |
value | (float *) – the return value |
rows | (int) |
Definition at line 358 of file blas_level_1.c.
Referenced by G_math_isamax().
void G_math_f_x_dot_y | ( | float * | x, |
float * | y, | ||
float * | value, | ||
int | rows | ||
) |
Compute the dot product of vector x and y.
The functions creates its own parallel OpenMP region. It can be called within a parallel OpenMP region if nested parallelism is supported by the compiler.
x | (float *) |
y | (float *) |
value | (float *) – the return value |
rows | (int) |
Definition at line 264 of file blas_level_1.c.
Referenced by G_math_sdot().
void G_math_i_asum_norm | ( | int * | x, |
double * | value, | ||
int | rows | ||
) |
Compute the asum norm of vector x.
The functions creates its own parallel OpenMP region. It can be called within a parallel OpenMP region if nested parallelism is supported by the compiler.
x | (int *)– the vector |
value | (double *) – the return value |
rows | (int) |
Definition at line 544 of file blas_level_1.c.
void G_math_i_ax_by | ( | int * | x, |
int * | y, | ||
int * | z, | ||
int | a, | ||
int | b, | ||
int | rows | ||
) |
Scales vectors x and y with the scalars a and b and adds them.
This function is multi-threaded with OpenMP and can be called within a parallel OpenMP region.
x | (int *) |
y | (int *) |
z | (int *) |
a | (int) |
b | (int) |
rows | (int) |
Definition at line 606 of file blas_level_1.c.
void G_math_i_copy | ( | int * | x, |
int * | y, | ||
int | rows | ||
) |
Copy the vector x to y.
This function is not multi-threaded
x | (int *) |
y | (int *) |
rows | (int) |
Definition at line 669 of file blas_level_1.c.
References x.
void G_math_i_euclid_norm | ( | int * | x, |
double * | value, | ||
int | rows | ||
) |
Compute the euclid norm of vector x.
The functions creates its own parallel OpenMP region. It can be called within a parallel OpenMP region if nested parallelism is supported by the compiler.
x | (int *) – the vector |
value | (double *) – the return value |
rows | (int) |
Definition at line 512 of file blas_level_1.c.
void G_math_i_max_norm | ( | int * | x, |
int * | value, | ||
int | rows | ||
) |
Compute the maximum norm of vector x.
This function is not multi-threaded
x | (int *)– the vector |
value | (int *) – the return value |
rows | (int) |
Definition at line 574 of file blas_level_1.c.
void G_math_i_x_dot_y | ( | int * | x, |
int * | y, | ||
double * | value, | ||
int | rows | ||
) |
Compute the dot product of vector x and y.
The functions creates its own parallel OpenMP region. It can be called within a parallel OpenMP region if nested parallelism is supported by the compiler.
x | (int *) |
y | (int *) |
value | (double *) – the return value |
rows | (int) |
Definition at line 480 of file blas_level_1.c.