Motivation Non-smooth IVPs Example Applications Conclusions Applications of Verified Methods for Solving Non-smooth Initial Value Problems Ekaterina Auer, Andreas Rauh University of Duisburg-Essen, University of Rostock June 14, 2011 (updated) E. Auer, A. Rauh University of Duisburg-Essen Applications of Verified Methods for Non-smooth IVPs 1
Motivation Non-smooth IVPs Example Applications Conclusions Non-smooth Models in Engineering Friction Contact dynamics Besides: saturation effects, ensuring good numerical behavior, etc. E. Auer, A. Rauh University of Duisburg-Essen Applications of Verified Methods for Non-smooth IVPs 2
Motivation Non-smooth IVPs Example Applications Conclusions Implicitly Non-smooth Models: Traps in Code Trap Example IF-THEN-ELSE Force: F ≤ 0 Muscle activation function: SWITCH 0 ≤ a ( t ) = A 1 e − c 1 ( t − t 1 ) + A 2 e − c 2 ( t − t 2 ) ≤ 1 | x | Hysteresis: � v ( t ) − σ · | v ( t ) | · | ω ( t ) | ν − 1 · ω ( t ) ω ( t ) = ρ · ˙ + ( σ − 1) · v ( t ) · | ω ( t ) | ν ) sgn x Friction: F ( v ) = sgn ( v ) · F + µ · v E. Auer, A. Rauh University of Duisburg-Essen Applications of Verified Methods for Non-smooth IVPs 3
Motivation Non-smooth IVPs Example Applications Conclusions Biomechanical Context: MobileBody Chief coordination: Prof. A. Kecskem´ ethy (UDE) MobileBody Gait lab Assistance during OP planning MRT OP assessment rehabilitation X-Ray Our major task: Characterization of uncertain parameters Non-smoothness in: Muscle models, stabilization of stance E. Auer, A. Rauh University of Duisburg-Essen Applications of Verified Methods for Non-smooth IVPs 4
Motivation Non-smooth IVPs Example Applications Conclusions Fuel Cells Context: Development of VeriCell Cooperation: Chair of Mechatronics, Rostock Gas supply Preheater SOFC stack module (30 fuel cells) Our task: Control design, verified simulation environment Non-smoothness: Saturation effects in reaction kinetics, etc. E. Auer, A. Rauh University of Duisburg-Essen Applications of Verified Methods for Non-smooth IVPs 5
Motivation Non-smooth IVPs Example Applications Conclusions Background: Verified Methods for Non-smooth Systems Description of a non-smooth IVP ւ ց Analytical Graph-like � f + ( x ) , h ( x ( t ) , t ) < 0 x ′ = f − ( x ) , h ( x ( t ) , t ) > 0 Rihm (1993), Rauh (2006), Eggers (2008), Mahmoud and Chen (2008) Nedialkov and Mohrenschildt (2002) Verified non-smooth optimization: Slopes, generalized gradients ... Ratz (1995), Kearfott (2004), Schnurr (2007), ... E. Auer, A. Rauh University of Duisburg-Essen Applications of Verified Methods for Non-smooth IVPs 6
Motivation Non-smooth IVPs Example Applications Conclusions Problem Definition � x ′ = f ( x ) , Interval IVP: x (0) ∈ [ x 0 ] where f : D ⊂ R n → R n or D ⊂ IR n → IR n and is given in algorithmic representation: τ i ( x ) = g i ( x ) = x i , i = 1 . . . n τ i ( x ) = g i ( τ 1 ( x ) , . . . , τ i − 1 ( x )) , i = n + 1 . . . l, . g i ∈ S EO ∪ S PW S EO = { + , − , ∗ , /, sin , cos , . . . } and S PW are piecewise smooth functions E. Auer, A. Rauh University of Duisburg-Essen Applications of Verified Methods for Non-smooth IVPs 7
Motivation Non-smooth IVPs Example Applications Conclusions Definition of Piecewise Functions φ i,τ ν ,c ( τ i 0 ( x ) , . . . , τ i p ( x )) : f(x) τ i 0 ( x ) , c − 1 = −∞ < τ ν ( x ) ≤ c 0 , τ i 1 ( x ) , c 0 < τ ν ( x ) ≤ c 1 , . . . . . . τ i p − 1 , ( x ) c p − 2 < τ ν ( x ) ≤ c p − 1 , c 0 c 1 c 2 x τ i p ( x ) , c p − 1 < τ ν ( x ) < c p = + ∞ An interval extension of φ over X ( φ ( X ) ): � τ i ( X ) , if X ⊆ ( c i − 1 , c i ) , � j − 1 k = i +1 τ k ([ c k − 1 , c k ]) ∪ τ i ([ x, c i ]) ∪ τ j ([ c j − 1 , x ]) , if X ⊆ ( c i − 1 , c j ) E. Auer, A. Rauh University of Duisburg-Essen Applications of Verified Methods for Non-smooth IVPs 8
Motivation Non-smooth IVPs Example Applications Conclusions Definition of the Derivative An interval extension of φ ′ over X ( φ ′ ( X ) ) τ ′ i ( X ) , if X ⊆ ( c i − 1 , c i ) , � j − 1 k = i +1 τ ′ k ([ c k − 1 , c k ]) ∪ τ ′ i ([ x, c i ]) ∪ τ ′ j ([ c j − 1 , x ]) ∪ rest , if X ⊆ ( c i − 1 , c j ) , where REST depends on: – how many switching points X contains, – whether φ is continuous, if we want the mean value theorem to hold. E. Auer, A. Rauh University of Duisburg-Essen Applications of Verified Methods for Non-smooth IVPs 9
Motivation Non-smooth IVPs Example Applications Conclusions Suppose we have a single switching point ( IF-THEN-ELSE ) � φ 0 ( x ) , x < c 0 , φ ( x ) = φ 1 ( x ) , x > c 0 . then REST is ( φ ′ 0 ([ x, c 0 ]) + φ ′ 1 ([ c 0 , x ])) · [0 , 1] if φ is continuous, � φ 1 ( c 0 ) − φ 0 ( c 0 ) � + ( φ ′ 0 ([ x, c 0 ]) + φ ′ 1 ([ c 0 , x ])) · [0 , 1] [ c 0 , x ] − x 0 � φ 0 ( c 0 ) − φ 1 ( c 0 ) � + ( φ ′ 0 ([ x, c 0 ]) + φ ′ ∪ 1 ([ c 0 , x ])) · [0 , 1] [ x, c 0 ] − x 0 if φ is discontinuous. Problem: We need x 0 to avoid enclosures containing ∞ afap E. Auer, A. Rauh University of Duisburg-Essen Applications of Verified Methods for Non-smooth IVPs 10
Motivation Non-smooth IVPs Example Applications Conclusions Properties of φ ′ ( X ) 1 If the derivative of φ exists for x ∈ X , then φ ′ ( x ) ∈ φ ′ ( X ) 2 The slope δφ ( X, x 0 ) ⊆ φ ′ ( X ) 3 The mean value theorem holds: φ ( x ) = φ ( x 0 ) + φ ′ ( ξ )( x − x 0 ) ∈ φ ( x 0 ) + φ ′ ( X )( X − x 0 ) 4 If φ is continuous ( τ i j ( c j ) = τ i j +1 ( c j ) , 0 ≤ j < p ), then f ( x ) is continuous. E. Auer, A. Rauh University of Duisburg-Essen Applications of Verified Methods for Non-smooth IVPs 11
Motivation Non-smooth IVPs Example Applications Conclusions Solution Definitions Two situations: ւ ց (a) f is discontinuous only in t (b) f is discontinuous in t , x τ ν ( x ) = t or τ i j ( c j ) = τ i j +1 ( c j ) Solution: t � x ( t ) = x 0 + f ( x ( s )) ds , x 0 ∈ [ x 0 ] Depends on the application 0 E. Auer, A. Rauh University of Duisburg-Essen Applications of Verified Methods for Non-smooth IVPs 12
Motivation Non-smooth IVPs Example Applications Conclusions ValEncIA-IVP 1 For Non-smooth IVPs General approach in ValEncIA : A posteriori x ( t ) ∈ [ x ( t )] := x app ( t ) + [ R ( t )] � �� � � �� � � �� � verified state enclosure error bounds non-verified approximation 1 continuous Conditions for the right side: 2 Lipschitz 1 VAL idation of state ENC losures using I nterval A rithmetic for I nitial V alue P roblems E. Auer, A. Rauh University of Duisburg-Essen Applications of Verified Methods for Non-smooth IVPs 13
Motivation Non-smooth IVPs Example Applications Conclusions ValEncIA-IVP For Non-smooth IVPs (Cont.) The algorithm for 0 ≤ t ≤ T : 1 Start with [ x (0) ] , x app ( t ) , [ R (0)] 2 k = 1 . . . k max or while [ ˙ R ( k +1) ([0 , T ])] != [ ˙ R ( k ) ([0 , T ])] Compute [ ˙ R ( k +1) ([0 , T ])] := ˙ x app + f ([ x ( k ) ]) , (MVT) where [ x ( k ) ] := [ x ( k ) ([0 , T ])] If [ ˙ R ( k +1) ([0 , T ])] ⊆ [ ˙ R ( k ) ([0 , T ])] then � � [ R (0)] + [ ˙ R ( k +1) ([0 , T ]) R ( k +1) ([0 , T ])][0 , T ] := � � x ( k +1) ([0 , T ]) x app + [ R ( k +1) ([0 , T ])] := Differences ((non-)smooth): Derivative definition, the fixed point theorem To-do-list: Discontinuities in x for the right side E. Auer, A. Rauh University of Duisburg-Essen Applications of Verified Methods for Non-smooth IVPs 14
Motivation Non-smooth IVPs Example Applications Conclusions Implementation Issues: Class pwFunc Remarks on f ( x ) Class declaration template<class T> f ′ ( X ) is obtained with class pwFunc { public: pwFunc typedef T (*ptrFct)(const T & x); pwFunc(const vector<interval> & p, pwFunc uses const vector<ptrFct> & f); T operator()(const T & x) FADBAD++ and { return getValueAtX(x); } overloads hull , d() private: vector< ptrFct > functions; f ′ ( X ) encloses both left vector<interval> points; vector<T> subintervals; and right derivatives T getValueAtX(const T & x); void generateSubintervals(const T & x); pwFunc is plugged into } ; ValEncIA E. Auer, A. Rauh University of Duisburg-Essen Applications of Verified Methods for Non-smooth IVPs 15
Motivation Non-smooth IVPs Example Applications Conclusions Implementation Example: A Discontinuous Function template <class T> T f1(const T & x) { return -1+x; } template <class T> T f2(const T & x) { return 1+x; } template<class T> T ff(const T & a) { vector<INTERVAL> p; p.push back(0); vector<pwFunc<T>::ptrFct> functions; functions.push back( & f1<T>);functions.push back( & f2<T>); pwFunc<T> fp(p, functions); return fp(a); } ff([-1,2]); Equation: � − 1 . 0 + x Result: x < 0 F f ( v ) = [-2,3]([1,6]) +1 . 0 + x x > 0 E. Auer, A. Rauh University of Duisburg-Essen Applications of Verified Methods for Non-smooth IVPs 16
Recommend
More recommend