Computing Quadratic Invariants
Pierre Roux1,2,3 Pierre-Loïc Garoche1 October 4, 2014
1ONERA – The French Aerospace Lab, Toulouse, France 2ISAE, University of Toulouse, Toulouse, France 3currently visiting CU Boulder
Computing Quadratic Invariants Pierre Roux 1 , 2 , 3 Pierre-Loc - - PowerPoint PPT Presentation
Computing Quadratic Invariants Pierre Roux 1 , 2 , 3 Pierre-Loc Garoche 1 October 4, 2014 1 ONERA The French Aerospace Lab, Toulouse, France 2 ISAE, University of Toulouse, Toulouse, France 3 currently visiting CU Boulder Control Command
1ONERA – The French Aerospace Lab, Toulouse, France 2ISAE, University of Toulouse, Toulouse, France 3currently visiting CU Boulder
Image: public domain
Image: Thomasione (CC by-sa)
2 / 18 Computing Quadratic Invariants
Image: public domain
Image: Thomasione (CC by-sa)
2 / 18 Computing Quadratic Invariants
Image: public domain
double x[3] = {0, 0, 0}; double nx[3]; double in; while (1) { in = acquire_input(); // uc nx[0] = 0.9379*x[0]-0.0381*x[1]-0.0414*x[2]+0.0237*in; nx[1] = -0.0404*x[0]+0.968*x[1]-0.0179*x[2]+0.0143*in; nx[2] = 0.0142*x[0]-0.0197*x[1]+0.9823*x[2]+0.0077*in; x[0] = nx[0]; x[1] = nx[1]; x[2] = nx[2]; send_output(x); // yc wait_next_clock_tick(); // a tick every 10 ms }
Image: Thomasione (CC by-sa)
2 / 18 Computing Quadratic Invariants
Image: public domain
double x[3] = {0, 0, 0}; double nx[3]; double in; while (1) { in = acquire_input(); // uc nx[0] = 0.9379*x[0]-0.0381*x[1]-0.0414*x[2]+0.0237*in; nx[1] = -0.0404*x[0]+0.968*x[1]-0.0179*x[2]+0.0143*in; nx[2] = 0.0142*x[0]-0.0197*x[1]+0.9823*x[2]+0.0077*in; x[0] = nx[0]; x[1] = nx[1]; x[2] = nx[2]; send_output(x); // yc wait_next_clock_tick(); // a tick every 10 ms }
Image: Thomasione (CC by-sa)
2 / 18 Computing Quadratic Invariants
Image: public domain
double x[3] = {0, 0, 0}; double nx[3]; double in; while (1) { in = acquire_input(); // uc nx[0] = 0.9379*x[0]-0.0381*x[1]-0.0414*x[2]+0.0237*in; nx[1] = -0.0404*x[0]+0.968*x[1]-0.0179*x[2]+0.0143*in; nx[2] = 0.0142*x[0]-0.0197*x[1]+0.9823*x[2]+0.0077*in; x[0] = nx[0]; x[1] = nx[1]; x[2] = nx[2]; send_output(x); // yc wait_next_clock_tick(); // a tick every 10 ms }
Image: Thomasione (CC by-sa)
2 / 18 Computing Quadratic Invariants
Image: public domain
double x[3] = {0, 0, 0}; double nx[3]; double in; while (1) { in = acquire_input(); // uc nx[0] = 0.9379*x[0]-0.0381*x[1]-0.0414*x[2]+0.0237*in; nx[1] = -0.0404*x[0]+0.968*x[1]-0.0179*x[2]+0.0143*in; nx[2] = 0.0142*x[0]-0.0197*x[1]+0.9823*x[2]+0.0077*in; x[0] = nx[0]; x[1] = nx[1]; x[2] = nx[2]; send_output(x); // yc wait_next_clock_tick(); // a tick every 10 ms }
Image: Thomasione (CC by-sa)
2 / 18 Computing Quadratic Invariants
Image: public domain
double x[3] = {0, 0, 0}; double nx[3]; double in; while (1) { in = acquire_input(); // uc nx[0] = 0.9379*x[0]-0.0381*x[1]-0.0414*x[2]+0.0237*in; nx[1] = -0.0404*x[0]+0.968*x[1]-0.0179*x[2]+0.0143*in; nx[2] = 0.0142*x[0]-0.0197*x[1]+0.9823*x[2]+0.0077*in; x[0] = nx[0]; x[1] = nx[1]; x[2] = nx[2]; send_output(x); // yc wait_next_clock_tick(); // a tick every 10 ms }
Image: Thomasione (CC by-sa)
2 / 18 Computing Quadratic Invariants
Image: public domain
double x[3] = {0, 0, 0}; double nx[3]; double in; while (1) { in = acquire_input(); // uc nx[0] = 0.9379*x[0]-0.0381*x[1]-0.0414*x[2]+0.0237*in; nx[1] = -0.0404*x[0]+0.968*x[1]-0.0179*x[2]+0.0143*in; nx[2] = 0.0142*x[0]-0.0197*x[1]+0.9823*x[2]+0.0077*in; x[0] = nx[0]; x[1] = nx[1]; x[2] = nx[2]; send_output(x); // yc wait_next_clock_tick(); // a tick every 10 ms }
Image: Thomasione (CC by-sa)
2 / 18 Computing Quadratic Invariants
Image: public domain
double x[3] = {0, 0, 0}; double nx[3]; double in; while (1) { in = acquire_input(); // uc nx[0] = 0.9379*x[0]-0.0381*x[1]-0.0414*x[2]+0.0237*in; nx[1] = -0.0404*x[0]+0.968*x[1]-0.0179*x[2]+0.0143*in; nx[2] = 0.0142*x[0]-0.0197*x[1]+0.9823*x[2]+0.0077*in; x[0] = nx[0]; x[1] = nx[1]; x[2] = nx[2]; send_output(x); // yc wait_next_clock_tick(); // a tick every 10 ms }
Image: Thomasione (CC by-sa)
2 / 18 Computing Quadratic Invariants
3 / 18 Computing Quadratic Invariants
3 / 18 Computing Quadratic Invariants
3 / 18 Computing Quadratic Invariants
3 / 18 Computing Quadratic Invariants
4 / 18 Computing Quadratic Invariants
4 / 18 Computing Quadratic Invariants
4 / 18 Computing Quadratic Invariants
5 / 18 Computing Quadratic Invariants
0 + 12.1868x2 1 + 3.8775x2 2 − 10.61x0x1 − 2.4306x0x2 + 2.4182x1x2 ≤ 1.0029
0 ≤ 0.1795 ∧ x2 1 ≤ 0.1136 ∧ x2 2 ≤ 0.2757. 5 / 18 Computing Quadratic Invariants
6 / 18 Computing Quadratic Invariants
6 / 18 Computing Quadratic Invariants
6 / 18 Computing Quadratic Invariants
6 / 18 Computing Quadratic Invariants
6 / 18 Computing Quadratic Invariants
7 / 18 Computing Quadratic Invariants
7 / 18 Computing Quadratic Invariants
7 / 18 Computing Quadratic Invariants
8 / 18 Computing Quadratic Invariants
9 / 18 Computing Quadratic Invariants
10 / 18 Computing Quadratic Invariants
11 / 18 Computing Quadratic Invariants
11 / 18 Computing Quadratic Invariants
11 / 18 Computing Quadratic Invariants
12 / 18 Computing Quadratic Invariants
12 / 18 Computing Quadratic Invariants
13 / 18 Computing Quadratic Invariants
14 / 18 Computing Quadratic Invariants
15 / 18 Computing Quadratic Invariants
16 / 18 Computing Quadratic Invariants
p−1
16 / 18 Computing Quadratic Invariants
17 / 18 Computing Quadratic Invariants
18 / 18 Computing Quadratic Invariants
19 / 19 Computing Quadratic Invariants