aboutsummaryrefslogtreecommitdiff
path: root/libcrystfel/src/utils.h
diff options
context:
space:
mode:
authorThomas White <taw@physics.org>2023-07-07 15:02:45 +0200
committerThomas White <taw@physics.org>2023-07-28 13:22:05 +0200
commit4f7c412d650e8493e0a356f4159be650cffb4d0b (patch)
tree23aec2e098197b121f27bbbcf5af2a4c419c1027 /libcrystfel/src/utils.h
parent1857f41d235359d9ed6c018b63ccda63edba9d2f (diff)
Factorise matrix operations
This makes the code much clearer. Note that two opposing sign errors have been fixed in the gradient calculation.
Diffstat (limited to 'libcrystfel/src/utils.h')
-rw-r--r--libcrystfel/src/utils.h3
1 files changed, 3 insertions, 0 deletions
diff --git a/libcrystfel/src/utils.h b/libcrystfel/src/utils.h
index 82a9aa1c..6d2ff253 100644
--- a/libcrystfel/src/utils.h
+++ b/libcrystfel/src/utils.h
@@ -77,6 +77,9 @@ extern void show_matrix(gsl_matrix *M);
extern void show_vector(gsl_vector *M);
extern gsl_vector *solve_svd(gsl_vector *v, gsl_matrix *M, int *n_filt,
int verbose);
+extern gsl_matrix *matrix_mult2(gsl_matrix *A, gsl_matrix *B);
+extern gsl_matrix *matrix_mult3(gsl_matrix *A, gsl_matrix *B, gsl_matrix *C);
+extern gsl_matrix *matrix_invert(gsl_matrix *m);
extern size_t notrail(char *s);
extern int convert_int(const char *str, int *pval);