Blender
V3.3
|
Go to the source code of this file.
Macros | |
#define | MAT(A, size, row, col) A[(row) * (size) + (col)] |
#define | MATS(A, n, r, c, s) MAT(A, n, r, c) |
#define | MATHS(A, r, c, s) A[(r) * ((r) + 1) / 2 + (c)] |
#define | VECS(V, i, s) V[i] |
#define | ROT(M, r1, c1, r2, c2, stride) |
Definition at line 9 of file math_matrix.h.
Definition at line 19 of file math_matrix.h.
Definition at line 20 of file math_matrix.h.
ccl_device_inline void math_matrix_add_gramian | ( | ccl_private float * | A, |
int | n, | ||
ccl_private const float *ccl_restrict | v, | ||
float | weight | ||
) |
ccl_device void math_matrix_jacobi_eigendecomposition | ( | ccl_private float * | A, |
ccl_global float * | V, | ||
int | n, | ||
int | v_stride | ||
) |
ccl_device_inline void math_matrix_transpose | ( | ccl_global float * | A, |
int | n, | ||
int | stride | ||
) |
Definition at line 158 of file math_matrix.h.
ccl_device_inline void math_matrix_zero | ( | ccl_private float * | A, |
int | n | ||
) |
Definition at line 32 of file math_matrix.h.
ccl_device_inline void math_trimatrix_add_diagonal | ( | ccl_global float * | A, |
int | n, | ||
float | val, | ||
int | stride | ||
) |
Definition at line 109 of file math_matrix.h.
References A, MATHS, and stride.
Referenced by math_trimatrix_vec3_solve().
ccl_device_inline void math_trimatrix_add_gramian | ( | ccl_global float * | A, |
int | n, | ||
ccl_private const float *ccl_restrict | v, | ||
float | weight | ||
) |
Definition at line 145 of file math_matrix.h.
References A, atomic_add_and_fetch_float, col, MATHS, and v.
ccl_device_inline void math_trimatrix_add_gramian_strided | ( | ccl_global float * | A, |
int | n, | ||
ccl_private const float *ccl_restrict | v, | ||
float | weight, | ||
int | stride | ||
) |
Definition at line 135 of file math_matrix.h.
References A, atomic_add_and_fetch_float, col, MATHS, stride, and v.
ccl_device void math_trimatrix_cholesky | ( | ccl_global float * | A, |
int | n, | ||
int | stride | ||
) |
Definition at line 174 of file math_matrix.h.
References A, col, MATHS, max, sqrtf, and stride.
Referenced by math_trimatrix_vec3_solve().
ccl_device_inline void math_trimatrix_vec3_solve | ( | ccl_global float * | A, |
ccl_global float3 * | y, | ||
int | n, | ||
int | stride | ||
) |
Definition at line 204 of file math_matrix.h.
References A, col, math_trimatrix_add_diagonal(), math_trimatrix_cholesky(), MATHS, stride, sum(), VECS, and y.
ccl_device_inline void math_vec3_add | ( | ccl_private float3 * | v, |
int | n, | ||
ccl_private float * | x, | ||
float3 | w | ||
) |
Definition at line 87 of file math_matrix.h.
ccl_device_inline void math_vec3_add_strided | ( | ccl_global float3 * | v, |
int | n, | ||
ccl_private float * | x, | ||
float3 | w, | ||
int | stride | ||
) |
Definition at line 94 of file math_matrix.h.
References atomic_add_and_fetch_float, ccl_global, stride, v, w(), and x.
ccl_device_inline void math_vector_add | ( | ccl_private float * | a, |
ccl_private const float *ccl_restrict | b, | ||
int | n | ||
) |
Definition at line 43 of file math_matrix.h.
References Freestyle::a, and usdtokens::b().
ccl_device_inline void math_vector_max | ( | ccl_private float * | a, |
ccl_private const float *ccl_restrict | b, | ||
int | n | ||
) |
Definition at line 78 of file math_matrix.h.
References Freestyle::a, usdtokens::b(), and max.
ccl_device_inline void math_vector_mul | ( | ccl_private float * | a, |
ccl_private const float *ccl_restrict | b, | ||
int | n | ||
) |
Definition at line 52 of file math_matrix.h.
References Freestyle::a, and usdtokens::b().
ccl_device_inline void math_vector_mul_strided | ( | ccl_global float * | a, |
ccl_private const float *ccl_restrict | b, | ||
int | astride, | ||
int | n | ||
) |
Definition at line 61 of file math_matrix.h.
References Freestyle::a, and usdtokens::b().
ccl_device_inline void math_vector_scale | ( | ccl_private float * | a, |
float | b, | ||
int | n | ||
) |
Definition at line 71 of file math_matrix.h.
References Freestyle::a, and usdtokens::b().
ccl_device_inline void math_vector_zero | ( | ccl_private float * | v, |
int | n | ||
) |
Definition at line 25 of file math_matrix.h.
References v.