49#define WLS_VERBOSE FALSE
96 for (
int j = 0;
j < n;
j++) {
97 for (
int i = 0; i < m; i++) {
121 if (!
WLS_p->gamma_sq)
WLS_p->gamma_sq = 100000;
132 for(
int i = 0; i <
n_c; i++)
154 for (
int i = 0; i <
WLS_p->nu; i++) {
158 for (
int i = 0; i <
WLS_p->nu; i++) {
168 for (
int i = 0; i <
WLS_p->nu; i++) {
176 for (
int i = 0; i <
WLS_p->nv; i++) {
179 for (
int j = 0;
j <
WLS_p->nu;
j++) {
185 for (
int i =
WLS_p->nv; i <
n_c; i++) {
193 while (iter++ <
imax) {
200 for (
int i = 0; i <
n_c; i++) {
224 for (
int i = 0; i <
n_free; i++) {
242 for (
int i = 0; i <
n_c; i++) {
243 for (
int k = 0; k <
n_free; k++) {
246 for (
int k = 0; k <
WLS_p->nu; k++) {
253 for (
int i = 0; i <
WLS_p->nu; i++) {
282 for (
int i = 0; i <
n_free; i++) {
298 for (
int i = 0; i <
WLS_p->nu; i++) {
303 for (
int i = 0; i <
n_c; i++) {
304 for (
int k = 0; k <
n_free; k++) {
325 for (
int i = 0; i <
n_c; i++) {
333 for (
int j = 0;
j <
n_c;
j++) {
348 for (
int i = 0; i <
WLS_p->nv; i++) {
349 for (
int j = 0;
j <
WLS_p->nu;
j++) {
356 for (
int j = 0;
j <
WLS_p->nv;
j++) {
361 for (
int j = 0;
j <
WLS_p->nu;
j++) {
367 for (
int j = 0;
j <
WLS_p->nu;
j++) {
373 for (
int j = 0;
j <
WLS_p->nu;
j++) {
void qr_solve(int m, int n, float a[], float b[], float x[])
static const struct usb_device_descriptor dev
Periodic telemetry system header (includes downlink utility and generated code).
unsigned char uint8_t
Typedef defining 8 bit unsigned char type.
static void qr_solve_wrapper(int m, int n, float **A, float *b, float *x)
Wrapper for qr solve.
void send_wls_v(char *name, struct WLS_t *WLS_p, struct transport_tx *trans, struct link_device *dev)
void wls_alloc(struct WLS_t *WLS_p, float **B, float *u_guess, float *W_init, int imax)
active set algorithm for control allocation
void send_wls_u(char *name, struct WLS_t *WLS_p, struct transport_tx *trans, struct link_device *dev)