On Choosing State Variables for Piecewise-Smooth Dynamical System Simulations
Total Page:16
File Type:pdf, Size:1020Kb
Nonlinear Dyn https://doi.org/10.1007/s11071-018-4622-2 ORIGINAL PAPER On choosing state variables for piecewise-smooth dynamical system simulations Jin-Song Pei · Joseph P. Wright · François Gay-Balmaz · James L. Beck · Michael D. Todd Received: 11 May 2018 / Accepted: 2 October 2018 © Springer Nature B.V. 2018 Abstract Choosing state variables in a state-space order to develop accurate and efficient time integra- representation of a nonlinear dynamical system is a tion, we incorporate MATLAB’s state event location nonunique procedure for a given input–output rela- algorithm, which is a mathematically sound numerical tionship and therefore a potentially challenging task. solver that deserves to be better known in the engi- It can be even more challenging when there are neering mechanics community. We show that differ- piecewise-defined restoring forces, as in bilinear hys- ent choices of state variables can affect state event teresis or Bouc–Wen models, which are just two of implementation, which in turn can significantly affect many such engineering mechanics models. Using vari- accuracy and efficiency, as judged by tolerance propor- ous piecewise-smooth models, we make use of flow- tionality and work–accuracy diagrams. Programming and effort-controlled system concepts, common to details of state event location are included to facili- bond graph theory, to initiate our state variable selec- tate application to other models involving piecewise- tion task, and we view numerical simulation as being defined restoring forces. In particular, one version of within the framework of hybrid dynamical systems. In the Bouc–Wen–Baber–Noori (BWBN) class of mod- els is implemented as a demonstration. J.-S. Pei (B) School of Civil Engineering and Environmental Science, Keywords Restoring force model · Bilinear hysteresis University of Oklahoma, Norman, Oklahoma 73019-1024, model · Bouc–Wen model · BWBN model · Hybrid USA · · e-mail: [email protected] dynamical system State event location algorithm Bond graph theory · Flow-controlled system · J. P. Wright Division of Applied Science, Weidlinger Associates Inc., Effort-controlled system New York, NY 10005, USA F. Gay-Balmaz CNRS LMD IPSL, Ecole Normale Supérieure de Paris, 24 1 Introduction Rue Lhomond, 75005 Paris, France J. L. Beck 1.1 Motivating example: state event location Department of Computing and Mathematical Sciences, algorithm California Institute of Technology, Mail Code 9-94, Pasadena, CA 91125, USA This study builds on previous work developing accurate M. D. Todd and efficient numerical methods for simulating nonlin- Department of Structural Engineering, University of California, San Diego, 9500 Gilman Drive, ear dynamical systems that include piecewise-defined Mail Code 0085, La Jolla, CA 92093, USA restoring forces [34]. Throughout this paper, the fol- 123 J.-S. Pei et al. lowing equation of motion is used based on Newton’s Solved restoring force-displacement relation 1.5 second law: 1 mx¨ + r = u (1) (xy, ry) 0.5 where x = x(t) is the displacement of the mass m at time t, x¨ is the acceleration, r is the restoring force 0 generated by the elements connected to the mass that = ( ) tends to restore it to its neutral position and u u t Restoring force -0.5 is an arbitrary excitation force applied to the mass. For (-xy,- ry) example, Eq. (1) could describe steady-state or tran- -1 Time selected by MATLAB ode45 sient dynamic response due to either force or base exci- Event Type #1 solved by MATLAB ode45 = Event Type #2 solved by MATLAB ode45 tation. For simplicity in this study, we set mass m 1, -1.5 x(0) = 0, x˙(0) = 0 unless otherwise specified. -2 -1.5 -1 -0.5 0 0.5 1 1.5 2 Displacement In this study, r = r(x) is a piecewise function of x, making the dynamical system a hybrid dynamical Fig. 1 Trilinear elastic model: central piece has stiffness k = 1; system, meaning a system with interactions of both the two other pieces have αk = 0.3; this result comes from SDOF subjected to one cycle of sinusoidal excitation force u(t) (shown continuous and discrete state/algebraic variables. We at top of Fig. 2); simulation used “event option” under MATLAB assume that the displacement, velocity and restoring ode45 with RelTol = 10−3 and AbsTol = 10−12. Event Types force are continuous functions of time, meaning the #1 and 2 are defined in Eqs. (2)and(3), respectively transition from one piece to the next is continuous, and that they are differentiable within each piece. However, the instantaneous stiffness, defined piecewise as dr/dx, quantities (displacement, velocity and restoring force may change abruptly from piece to piece. As needed in this example). This algorithm was implemented by herein, we will review ideas and supply the required combining the event option with ode45 in MATLAB. definitions as they apply to a specific hybrid dynamical For the trilinear elastic model in Fig. 1, the event option system (e.g., [11,30]). needs to implement two event functions: In [34], we focused on the Ramberg–Osgood model which has a piecewise-smooth algebraic form r = Event Type #1 : x(t) − xy = 0(2) r(x). In this study, more complicated models such Event Type #2 : x(t) + x = 0(3) as bilinear hysteresis or Bouc–Wen models [4,6,7,31] y will be investigated, where r is defined piecewise in either algebraic or differential format. which are solved for the time instances when these As a motivating example involving “state event loca- event functions are satisfied so that the numerical inte- tion” [27], we present results of a single-degree-of- gration will stop and then restart at all time instances freedom (SDOF) simulation with the trilinear elastic that are discovered (i.e., not known apriori) in the pro- model shown in Fig. 1. The force–displacement rela- cess of numerical simulation. These events are called tion, r versus x, is defined by three linear pieces joined state events as they are functions of the state variables at two points (xy, ry) and (− xy, − ry), with xy = 0.75 (x in this case). and ry = 0.75 where xy denotes yield displacement Figure 2 presents simulation results for the trilinear and ry denotes yield force. Thus, the slope of the cen- elastic model. Time instances corresponding to the two tral piece defines a spring stiffness k = 1. The two types of event are highlighted in both Figs. 1 and 2. other pieces have equal stiffness values αk = 0.3. Although this is a simple model, with the excitation We utilize the state event algorithm in [27] for accu- force u(t) being the smooth sinusoid shown at the top racy and efficiency reasons. This algorithm ends time of Fig. 2, the seemingly simple idea of state event loca- stepping “exactly” (within an approximation error) at tion requires care to be taken before, during and after each time when yield displacement occurs, such a any event occurs. The procedure was discussed in [34] time being called an “event,” and then restarts there using both the Ramberg–Osgood and Bingham models, with accurately calculated values of all time-dependent and will be further elucidated in this study using other 123 On choosing state variables Time history of prescribed excitation force 1 chosen as state variables when formulating the state Prescribed excitation time history 0.5 equations corresponding to Eq. (1): 0 ( ) -0.5 = y 1 = x y ( ) ˙ (5) Excitation Force -1 y 2 x 0 102030405060708090100 Time y˙(1) x˙ y(2) y˙ = = = = f (y, u, t) Time history of solved displacement y˙( ) x¨ 1 ( − ( ( ))) 2 2 m u r y 1 Time selected by MATLAB ode45 1 Event Type #1 solved by MATLAB ode45 (6) Event Type #2 solved by MATLAB ode45 0 -1 This choice of state variables and corresponding pair of Displacement -2 first-order ODEs was used when implementing the state 0 102030405060708090100 Time event location algorithm for the example just presented. Time history of solved velocity In particular, the displacement x(t) was used in defining 0.4 the two event functions, which satisfies a MATLAB 0.2 0 requirement, namely that event functions need to be -0.2 defined as (simple) functions of the state variables. Velocity -0.4 For piecewise restoring force models that are more 0 102030405060708090100 complicated, appropriate choices of state variables are Time Time history of solved restoring force not always this straightforward. Reference [33] vividly 2 acknowledges this fundamental challenge concerning 1 state-space formulation: “It is, however, impossible to 0 deduce apriori, in physical terms, what will be the -1 state. This, indeed, is a very difficult problem even for Restoring force -2 0 102030405060708090100 relatively simple systems, and it appears to be the cause Time for much of the reluctance of introducing this concept Fig. 2 Results from SDOF simulation with trilinear elastic in physics.” model shown in Fig. 1; simulation used sinusoidal excitation Table 1 offers motivating examples of four ways of force u(t) shown at top and “event option” under MATLAB choosing state variables for two different basic (lin- = −3 = −12 ode45 with RelTol 10 and AbsTol 10 . Event Types ear) dynamical systems: (a) a mass in series with a #1 and 2 are defined in Eqs. (2)and(3), respectively Kelvin model (also called Kelvin–Voigt)and (b) a mass in series with a Maxwell model. A Kelvin model has more complicated models. More information concern- a spring and dashpot in parallel, whereas a Maxwell ing the algorithm itself is given in Sect. 2.1. model has a spring and dashpot in series. Often when modeling a dynamical system, numer- ous choices of state variables are possible, although 1.2 Motivating example: choices of state variables many are not straightforward, nor even physically or computationally convenient.