Paparazzi UAS
v5.12_stable-4-g9b43e9b
Paparazzi is a free software Unmanned Aircraft System.
|
Go to the source code of this file.
Functions | |
void | qr_solve_wrapper (int m, int n, float **A, float *b, float *x) |
Wrapper for qr solve. More... | |
int | wls_alloc (float *u, float *v, float *umin, float *umax, float **B, int n_u, int n_w, float *u_guess, float *W_init, float *Wv, float *Wu, float *ud, float gamma, int imax) |
active set algorithm for control allocation More... | |
void qr_solve_wrapper | ( | int | m, |
int | n, | ||
float ** | A, | ||
float * | b, | ||
float * | x | ||
) |
Wrapper for qr solve.
Possible to use a different solver if needed. Solves a system of the form Ax = b for x.
m | number of rows |
n | number of columns |
Definition at line 63 of file wls_alloc.c.
References qr_solve().
Referenced by wls_alloc().
int wls_alloc | ( | float * | u, |
float * | v, | ||
float * | umin, | ||
float * | umax, | ||
float ** | B, | ||
int | n_u, | ||
int | n_v, | ||
float * | u_guess, | ||
float * | W_init, | ||
float * | Wv, | ||
float * | Wu, | ||
float * | up, | ||
float | gamma_sq, | ||
int | imax | ||
) |
active set algorithm for control allocation
Takes the control objective and max and min inputs from pprz and calculates the inputs that will satisfy most of the control objective, subject to the weighting matrices Wv and Wu
u | The control output vector |
v | The control objective |
umin | The minimum u vector |
umax | The maximum u vector |
B | The control effectiveness matrix |
n_u | Length of u |
n_v | Lenght of v |
u_guess | Initial value for u |
W_init | Initial working set, if known |
Wv | Weighting on different control objectives |
Wu | Weighting on different controls |
up | Preferred control vector |
gamma_sq | Preference of satisfying control objective over desired control vector (sqare root of gamma) |
imax | Max number of iterations |
Definition at line 101 of file wls_alloc.c.
References A, alpha, p, print_final_values(), print_in_and_outputs(), qr_solve_wrapper(), and UNUSED.
Referenced by stabilization_indi_calc_cmd().