Paparazzi UAS  v7.0_unstable
Paparazzi is a free software Unmanned Aircraft System.
pprz_matrix_decomp_float.h
Go to the documentation of this file.
1 /*
2  * Copyright (C) 2014 Gautier Hattenberger
3  *
4  * This file is part of paparazzi.
5  *
6  * paparazzi is free software; you can redistribute it and/or modify
7  * it under the terms of the GNU General Public License as published by
8  * the Free Software Foundation; either version 2, or (at your option)
9  * any later version.
10  *
11  * paparazzi is distributed in the hope that it will be useful,
12  * but WITHOUT ANY WARRANTY; without even the implied warranty of
13  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14  * GNU General Public License for more details.
15  *
16  * You should have received a copy of the GNU General Public License
17  * along with paparazzi; see the file COPYING. If not, see
18  * <http://www.gnu.org/licenses/>.
19  */
20 
27 #ifndef PPRZ_MATRIX_DECOMP_FLOAT_H
28 #define PPRZ_MATRIX_DECOMP_FLOAT_H
29 
30 #ifdef __cplusplus
31 extern "C" {
32 #endif
33 
34 #include "std.h"
35 
44 void pprz_cholesky_float(float **out, float **in, int n);
45 
58 void pprz_qr_float(float **Q, float **R, float **in, int m, int n);
59 
84 int pprz_svd_float(float **a, float *w, float **v, int m, int n);
85 
104 void pprz_svd_solve_float(float **x, float **u, float *w, float **v, float **b, int m, int n, int l);
105 
117 void fit_linear_model(float *targets, int D, float (*samples)[D], uint16_t count, bool use_bias, float *params,
118  float *fit_error);
119 
120 
121 
135 void fit_linear_model_prior(float *targets, int D, float (*samples)[D], uint16_t count, bool use_bias, float *priors, float *params, float *fit_error);
136 
137 
138 #ifdef __cplusplus
139 } /* extern "C" */
140 #endif
141 
142 #endif /* PPRZ_MATRIX_DECOMP_FLOAT_H */
void pprz_svd_solve_float(float **x, float **u, float *w, float **v, float **b, int m, int n, int l)
SVD based linear solver.
void fit_linear_model(float *targets, int D, float(*samples)[D], uint16_t count, bool use_bias, float *params, float *fit_error)
Fit a linear model from samples to target values.
int pprz_svd_float(float **a, float *w, float **v, int m, int n)
SVD decomposition.
void fit_linear_model_prior(float *targets, int D, float(*samples)[D], uint16_t count, bool use_bias, float *priors, float *params, float *fit_error)
Fit a linear model from samples to target values with a prior.
void pprz_qr_float(float **Q, float **R, float **in, int m, int n)
QR decomposition.
void pprz_cholesky_float(float **out, float **in, int n)
Cholesky decomposition.
static float D
Definition: trilateration.c:35
unsigned short uint16_t
Typedef defining 16 bit unsigned short type.
Definition: vl53l1_types.h:88
float b
Definition: wedgebug.c:202