Preview only show first 10 pages with watermark. For full document please download

Lorenz System Parameters

Mathematical chaos modelling

   EMBED


Share

Transcript

Downloaded from www.clastify.com by caners gm ai l.c om A numerical investigation of the Lorenz system’s chaotic behaviour and its relationship to the values of initial parameters Cl as tif y ca ne ro l2 41 1@ Mathematics AA HL Internal Assessment May 2023 Downloaded from www.clastify.com by caners Contents 1 Introduction 2 2 Aim 3 3 The Lorenz system 3 4 The Runge-Kutta methods 3 4.1 Second order Runge-Kutta method . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5 4.2 Fourth order Runge-Kutta method . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7 Programming the numerical solver . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . l.c 5.1 7 om 5 Applying RK4 to the Lorenz system gm ai 6 Chaos and the Lyupanov exponent 11 12 41 1@ 7 Program to calculate Lyupanov exponents 9 13 ro l2 8 Lyupanov exponent analysis 16 y ca 10 Conclusion as tif 17 Cl 11 Reference list 15 ne 9 Evaluation 1 Downloaded from www.clastify.com by caners 1 Introduction Weather is indisputably one of the most unpredictable systems on our planet. Meteorologists have the difficult task of modelling weather and making day-to-day predictions, but even their highly-educated and data-driven predictions often fail. After all, who hasn’t remarked at the weather suddenly changing without warning. One moment, the weather could be calm and peaceful, while in another, it could suddenly becoming stormy. With so many confounding variables affecting weather, such as temperature, air pressure, precipitation, the Earth’s axial tilt, etc. the weather system is highly chaotic and the smallest of changes to a particular parameter can lead to wildly different outcomes. Colloquially, this is known as the butterfly effect, where even om minor changes in the weather system such as a the fluttering of a butterfly’s wings could lead to a tornado l.c several days later. In other words, predictions of weather outcomes are sensitive to initial parameters and gm ai conditions. 1@ This highly sensitive dependence to initial conditions of a time-dependent system is what the discipline 41 of chaos theory concerns itself with. In particular, it tries to find some order in systems that have been l2 previously thought of to be completely random. For example, the idea that weather can be absolutely ne ro unpredictable does not sit well with me; I am a physics student and therefore have a hard time believing ca in randomness. To find a cause for an effect is almost second-nature to me. Like many in similar fields, I y believe in causal determinism [1]: the idea that the path taken by a system can be entirely predicted based as tif on its prior states (initial conditions). Cl Therefore, I wanted to see—for myself—the nature of chaos and how it varies in models for the weather. Luckily, I knew of one already: the Lorenz system [2]. Created by mathematician and meteorologist Edward Lorenz, the Lorenz system is a system of three ordinary differential equations (ODEs) modelling convection in a atmosphere. Being a mathematics student, I’d already encountered differential equations, but I’d only ever dealt with simple ones, much less a system of differential equations. I also realized that I’d have to use numerical methods far more advanced than the rudimentary Euler method I’d learned in class and then use a suitable metric to quantify chaos. In this investigation, I explore several numerical methods to solve for the Lorenz system and use their solutions to quantify chaos with the Lyupanov exponent, investigating its dependence on the system’s initial conditions. 2 Downloaded from www.clastify.com by caners 2 Aim To solve for the Lorenz system at different values of initial values, and parameters ρ, β, and σ and investigate how their values affect the system’s chaotic behaviour, quantified with the Lyupanov exponent. 3 The Lorenz system The Lorenz system is given by three first order ordinary differential equations, known as the Lorenz equations [3]: dx = σ(y − x) dt l.c om dy = x(ρ − z) − y dt gm ai dz = xy − βz dt 1@ where x is proportional to the rate of convection, y to the horizontal temperature variation, and z to the 41 vertical temperature variation. The constants σ, ρ, and β are parameters that describe physical properties l2 of a fluid layer (heated from below and cooled from above) undergoing convection. For the purposes of this ro investigation, we are not interested in the physical significance of each variable and parameter but rather on ca ne how they affect chaos. 8 for which the system exhbits its characteristic 3 chaotic behaviour. Thus, our investigation will consider values of σ, ρ, and β around these values. There is as tif y Edward Lorenz originally used the values σ = 10, ρ = 28, β = Cl no analytical or general solution to the Lorenz system. Thus, we must use numerical methods to solve for the Lorenz system. To do so, we can use the Runge-Kutta methods, a family of iterative methods which allow for the numerical solving of differential equations. Particularly, the Euler method is the simplest Runge-Kutta method and the basis for more advanced techniques. We will now derive and consider a few Runge-Kutta techniques, namely the Euler method, the second-order Runge-Kutta method, and the fourth order Runge-Kutta method. 4 The Runge-Kutta methods We will first start with the Euler method. Consider the initial value problem: dy = f (x, y), dx 3 y (x0 ) = y0 Downloaded from www.clastify.com by caners where y is a function of x and the initial conditions are given as (x0 , y0 ). The essence of the Euler method relies on the fact that, despite the curve y(x) being unknown, with our initial conditions (x0 , y0 ) we can compute the tangent or derivative at that point as y 0 = f (x, y). For values of x around our initial point, the curve can be approximated by the tangent. Thus, we take a small step h along the tangent and presume that the new point also lies on the curve. We repeat this for several steps until we get a polygonal curve that approximates the curve y(x) for the given initial conditions—solving the differential equation. The Euler method is given in its iterative form by: yi+1 = yi + f (xi , yi ) h dy dx evaluated at xi and yi . While intuition alone yields us the Euler method’s formula, it can also be derived om where yi+1 is the next value of y, yi is the current value of y, and f is the function giving the value of gm ai l.c from a Taylor series expansion, which is important to deriving other Runge-Kutta methods. Consider the Taylor series expansion for a real function g(x) about the point x = a 1@ ∞ X g (n) (a) (x − a)n n! n=0 41 g(x) = ro l2 g 00 (a) g 0 (a) (x − a) + (x − a)2 + . . . 1! 2! ne = g(a) + ca For our situation, the point a we are evaluating about is a given initial x = x0 . Thus, we replace x with xi y and a with x0 . g 0 (x0 ) g 00 (x0 ) (xi − x0 ) + (xi − x0 )2 + . . . 1! 2! as tif g(xi ) = g(x0 ) + Cl Assuming constant step size h, we know: xi = x0 + h h = xi − x0 Substituting this value of h into our above expression, we have: g(xi ) = g(x0 ) + g 0 (x0 ) g 00 (x0 ) 2 h+ h + ... 1! 2! For the next iteration at xi+1 , x0 = xi . Thus, we can generalize our equation as follows: g(xi+1 ) = g(xi ) + Returning to our initial value problem where g 0 (xi ) g 00 (xi ) 2 h+ h + ... 1! 2! (1) dy = f (x, y) where y is a function of x, we are approximating dx 4 Downloaded from www.clastify.com by caners y. Thus, we can replace our general function g by y: y 0 (xi , yi ) y 00 (xi , yi ) 2 h+ h + ... 1! 2! yi+1 = yi + where y (n) denotes dy dn y . We know from our initial value problem that = f (x, y). Thus, dxn dx yi+1 = yi + f 0 (xi , yi ) 2 f 00 (xi , yi ) 3 f (xi , yi ) h+ h + h + ... 1! 2! 3! (2) Notice that if we approximate yi+1 by only keeping the f (xi , yi )h term and removing the rest, we get the Euler method. This inclusion of the first term is what makes the Euler method a first-order method. As we have truncated the remaining terms, the first of which is on the order of h2 , the local truncation error or error per step is also on the order of h2 . For smaller and smaller choices of h, the local truncation error l.c om decreases with h2 . This is written as O(h2 ). ai Error on this order is clearly not sufficient, especially for the purposes of this investigation, as we need to gm solve for the Lorenz system which is notoriously ‘stiff’: a numerically unstable system unless very small step 1@ sizes are used [4]. Global error (which is O(hs ) where s is the order of the method) would be amplified 41 further in a stiff system. Thus, the Euler method would either result in an unusuable and highly inaccurate ro l2 solution or be computationally taxing. ne We then want a method of an order s such that the local truncation error O(hs+1 ) and the global error ca O(hs ) are decreased. This would involve using additional terms of our derived expression in (2), giving us Second order Runge-Kutta method Cl 4.1 as tif y higher-order Runge-Kutta methods. For a second-order method, we include the h2 term from our series in (2), yi+1 ≈ yi + f (xi , yi )h + f 0 (xi , yi ) 2 h 2! df (x, y) . This calculation is dx made trickier by the fact that y is a function of x in of itself. In theory, f (x, y(x)) could be written as a single however, we do not know what f 0 (xi , yi ) is. We then need to find, in general, function g(x), however implicit differentiation is often tedious. Thus, differentiating f is best understood by exploiting the multivariate chain rule [5]. We take x to be a function of itself and y to be a function of x. 5 Downloaded from www.clastify.com by caners When expressed symbolically, this is, X(x) = x y(x) = y which leads to ∂f (x, y) dX ∂f (x, y) dy df (x, y) = + dx ∂x dx ∂y dx df (x, y) ∂f (x, y) ∂f (x, y) dy = + . dx ∂x ∂y dx This turns the second order Runge-Kutta (hereafter referred to as RK2) into: ∂f (x, y) ∂f (x, y) dy + ∂x ∂y dx  om  h. l.c yi+1 1 = yi + f (xi , yi )h + 2! ai For obvious reasons, calculating partial derivatives in such a manner is still tedious. However, Runge and 1@ gm Kutta managed to write RK2 in the form [6] l2 41 yi+1 = yi + (a1 k1 + a2 k2 ) h ne ro where ca k1 = f (xi , yi ) tif y k2 = f (xi + p1 h, yi + q11 k1 ) . Cl as The derivation of these coefficients is highly non-trivial and beyond the scope of this investigation. When 1 1 a2 = , the coefficients obtained correspond to Heun’s method, which gives a1 = , p1 = 1, and q11 = 1. 2 2 This can be explained graphically through Figure 1. Figure 1: Heun’s RK2 method [7] 6 Downloaded from www.clastify.com by caners Thus, Heun’s method can be written as:  yi+1 = yi +  1 1 k1 + k2 h 2 2 (3) with k1 = f (xi , yi ) k2 = f (xi + h, yi + k1 h) Even now, with local and global error on the order of h3 and h2 respectively, RK2 is insufficient even with a small step-size h, as the graph shows. Thus, we must resort to the most popular Runge-Kutta method, the Fourth order Runge-Kutta method l.c 4.2 om fourth-order RK4. gm ai The fourth-order Runge-Kutta method is derived in a similar fashion to its second-order cousin. Using four 41 1 (k1 + 2k2 + 2k3 + k4 ) 6 (4) l2 yi+1 = yi + 1@ terms of the series in (2) and finding the relevant coefficients [8] yields: ne ro where the different slopes are: Cl as tif y ca k1 = hf (xi , yi )  h k2 = hf xi + , yi + 2  h k3 = hf xi + , yi + 2  k1 2  k2 2 k4 = hf (xi + h, yi + k3 ) With local and global error O(h5 ) and O(h4 ) respectively, RK4 provides excellent accuracy and little error even for relatively larger step sizes (e.g. h = 0.1 would give a global error on the order of 0.0001). For this very reason, RK4 serves as the basis for the state-of-the-art ode45 algorithm [9], providing excellent accuracy for differential equations. 5 Applying RK4 to the Lorenz system Having explored the Runge-Kutta methods, we now apply them to the Lorenz system. The immediate problem that arises is the fact that the initial value problems Runge-Kutta attempts to solve for are not systems but rather a single first order ordinary differential equation. Thus, we must resort to vectors to keep 7 Downloaded from www.clastify.com by caners track of the state of the system (x, y, z). From earlier, let us consider the Lorenz system more generally: dx = f1 (t, x, y, z) = σ(y − x) dt dy = f2 (t, x, y, z) = x(ρ − z) − y dt dz = f3 (t, x, y, z) = xy − βz dt with initial conditions x(t0 ) = x0 , y(t0 ) = y0 , z(t0 ) = z0 . We define the vectors ~y and ~f as follows: and the initial state vector ~y(t0 ) as: l2 41 1@ gm   x0     ~y(t0 ) =   y0  .   z0 ai l.c om   f1    ~f = f   2   f3   x    ~y =  y  ,   z ne ro We can then write our system as the following initial value problem in vector form: d~y ~ = f (t, ~y), dt y ca ~y(t0 ) = ~y0 . Cl as tif With this formulation, we now use the RK4 method as previously derived. Specifically, we have: ~yi+1 = ~yi +  1 ~ k1 + 2~k2 + 2~k3 + ~k4 6 and the slopes ~k as: ~k1 = h~f (ti , ~yi ) ~k1 h ti + , ~yi + 2 2 ! ~k2 = h~f ! ~k3 = h~f ~k2 h ti + , ~yi + 2 2 ~k4 = h~f (ti + h, ~yi + ~k3 ) All the vector operations involved in this method are trivial as they are limited to vector addition and scalar multiplication. Thus, to simulate the Lorenz system it is only necessary to write a function that computers 8 Downloaded from www.clastify.com by caners ~f (x, ~y). We will now write a program to achieve exactly this. 5.1 Programming the numerical solver For the purposes of this investigation, the RK4 solver was written in the Python language, particularly for its support for vector operations. The written code is commented on and presented below: import numpy as np ; import matplotlib . pyplot as plt ; sigma = 10; rho = 28; beta = 8/3; # parameters y_vec_0 = np . array ([1 ,1 ,1]) ; # initial state vector h = 0.001; t_start = 0; t_end = 100; # step size , initial time , final time om def f_1 (t , x , y , z ) : # dx / dt return sigma * ( y - x ) l.c def f_2 (t , x , y , z ) : # dy / dt return x * ( rho - z ) - y gm ai def f_3 (t , x , y , z ) : # dz / dt return (( x * y ) - ( beta * z ) ) l2 41 1@ def f (t , y_vec ) : # the system as one vector ODE x = y_vec [0] y = y_vec [1] z = y_vec [2] return np . array ([ f_1 (t ,x ,y , z ) , f_2 (t ,x ,y , z ) , f_3 (t ,x ,y , z ) ]) ne ro def rk4 ( sigma , rho , beta , y_vec_0 , t_start , t_end , h ) : # numerical solver t_data = []; y_vec_data = []; x_data = []; y_data = []; z_data = []; # data storage ca y_i = y_vec_0 ; # setting the first y value as the initial value h h h h * * * * f ( t_i , y_i ) f ( t_i + ( h /2) , y_i + ( k_1 /2) ) f ( t_i + ( h /2) , y_i + ( k_2 /2) ) f ( t_i + h , y_i + k_3 ) as = = = = Cl k_1 k_2 k_3 k_4 tif y for t_i in np . arange ( t_start , t_end , h ) : t_data . append ( t_i ) # store current time in array y_vec_data . append ( y_i ) # store current y_vector = (x ,y , z ) in array y_i = y_i + (1/6) *( k_1 + 2* k_2 + 2* k_3 + k_4 ) # updating the current y value return [ t_data , y_vec_data , x_data , y_data , z_data ]; Figure 2: Numerical solver for the Lorenz system in Python dx dy dz , , and dt dt dt respectively. While f is the vector function ~f (x, ~y) and rk4 is the numerical solver itself, taking the parameters, Note that def is the declaration for a function in Python. f_1, f_2, f_3 correspond to initial values, time interval, and step-size as arguments. Before applying our numerical solver any further, lt us first analyze the trajectories it produces. We will Lorenz’s original parameters with an arbitrary initial condition. 9 Downloaded from www.clastify.com by caners Shown below is the the solution for the Lorenz system in the time interval t = [0, 100] with parameters as σ = 10, ρ = 28, β = 83 , and initial conditions ~y0 = [1, 1, 1]. 40 30 20 10 z 20 0 10 x 20 y −20 om 0 l.c −10 (b) Solution on the xz plane ai (a) Solution in 3d phase space 1@ gm Figure 3: Solution when σ = 10, ρ = 28, β = 38 , ~y0 = [1, 1, 1], h = 0.001 41 The Lorenz system clearly has two points around which the system evolves, almost as if the points were l2 being ’pulled’ towards them. Such a point is known as an ’attractor’, and because the system chaotically ne ro oscillates between them, it is considered to be a ’strange’ attractor. ca Even though the trajectory begins at [1, 1, 1], it is pulled towards the attractors and eventually tends towards tif y the same strange behaviour around the attractors. This behaviour can also be validated by observing the as x, y, and z coordinates with respect to time. From t = 0 to t = 18 the trajectory tends towards the Cl 20 x 10 0 −10 0 20 40 60 80 100 time t Figure 4: x vs. t Lorenz attractor until it starts undergoing the quasi-predictable oscillatory behaviour around each attractor. 10 Downloaded from www.clastify.com by caners The ordered behaviour before t = 18 can be explained by Figure 3’s initial behaviour around the left-sided attractor, where thre trajectory undergoes ordered elipitical motion at first. With confirmation that our RK4 numerical solver is functional and appropriately solves for the Lorenz system, we can begin to numerically analyze its chaotic behaviour. 6 Chaos and the Lyupanov exponent As explained earlier, the hallmark of chaos is high sensitivity to initial conditions. To attempt to quantify chaos, then, we can consider the motion of two trajectories with only a minute difference in their initial conditions. At first, it is expected that the trajectories will closely resemble each other. However, they will l.c om quickly begin to diverge, often exponentially. ai ~ 1 (t) and Z ~ 2 (t). At any time t, Consider two infinitisimally close trajectories given by their state vectors Z 1@ gm ~ between them is given by, the separation vector δ Z 41 ~ ~ 2 (t) − Z ~ 1 (t) δ Z(t) =Z ro l2 ~ ~ The magnitude of δ Z(t) is |δ Z(t)|. For this investigation, our state vectors for the Lorenz system are three ne dimensional, having components x, y, and z. The separation vector then has components [∆x, ∆y, ∆z]. ca Thus, its magnitude can be expressed as: p ∆x2 + ∆y 2 + ∆z 2 as tif y ~ |δ Z(t)| = Cl If the separation as a function of time between the two trajectories can be approximated linearly, we get: ~ ~ 0| |δ Z(t)| ≈ eλt |δ Z where λ is the Lyupanov exponent. This can be explained graphically through Figure 5. Figure 5: Rate of separation of infinitisimally close trajectories [10] 11 Downloaded from www.clastify.com by caners We can linearize the above equation by taking the natural logarithm of both sides, yielding: ~ ln |δ Z(t)| = λt Thus, if the natural logarithm of the magnitude of the separation vector is plotted with respect to time, its slope gives the Lyupanov exponent λ. 7 Program to calculate Lyupanov exponents To compute Lyupanov exponents for a given a separation vector of either the parameters or initial values, om the following program was written. l.c import lrk4 as lib ; # importing our numerical solver for the Lorenz system gm ai path1 = lib . rk4 ([10 , 28 , 8/3] , [1 , 1 , 1] , t_start , t_end , h ) # trajectory 1 path2 = lib . rk4 ([10 , 28 , 8/3] , [1 , 1 , 1 + 0.0000001] , t_start , t_end , h ) # trajectory 2 offset by 1E -7 41 1@ def magnitude ( vec ) : # function to return the magnitude of our state vectors return math . sqrt ( vec [0]**2 + vec [1]**2 + vec [2]**2) ne ro l2 time = [] # data separation = [] # data Cl as tif y ca i = 0; for vec in path1 [1]: # iterate over every state vector of path1 vec1 = vec ; # state vector for trajectory 1 at time t vec2 = path2 [1][ i ]; # state vector for trajectory 2 at time t sep = np . subtract ( vec1 , vec2 ) ; # calculate separation vector time . append ( path2 [0][ i ]) ; # store current time separation . append ( magnitude ( sep ) ) ; # store the magnitude of the separtion i = i + 1; # move to the next state vector at time t +1 logsep = np . log ( separation ) ; # natural log of all separation magnitudes Figure 6: Program to compute Lyupanov exponents Repetitive code has been excluded from the program in Figure 6. Further, the above program was modified three times to compute Lyupanov exponents for a separation in the initial value ~y0 and the parameters σ, ρ, and β. All initial values and parameters were given initial separations equal to 1 × 10−7 . The data in logsep array, the linearized separation magnitudes, with respect to time was plotted and analyzed to find the Lyupanov exponent of each. 12 Downloaded from www.clastify.com by caners 8 Lyupanov exponent analysis The Lyupanov exponent for a separation in the initial state vector is shown in Figure 7. As observed, the 5 ln |δZ(t)| 0 −5 −10 om −15 −20 20 30 40 time t 50 ai 10 60 70 gm 0 l.c ln |δZ(t)| = 0.693t − 29.9 41 1@ Figure 7: Determination of λ = 0.693 l2 log of the separation steadily increases until it becomes constant at around t = 30. This again corresponds ne ro to the system tending towards the Lorenz attractor and oscillating about each fixed point attractor. The ca tool numpy was used to best fit the data for which t < 30, shown in Figure 7. Its gradient is 0.693, which is as Cl 5 tif y also the value for the average Lyupanov exponent. The same procedure is repeated for a separation in σ. 0 ln |δZ(t)| −5 −10 −15 −20 −25 ln |δZ(t)| = 0.616t − 16.949 −30 0 10 20 30 40 time t 50 60 Figure 8: λ = 0.616 for a separation in the value of σ 13 70 Downloaded from www.clastify.com by caners For this case, we have a similar graph that shows the separation between each trajectory growing abnormally quickly for t < 0.2, after which its growth is becomes more normal and linear. This initial data has been ignored, the reason for which is explained in section 9. The average Lyupanov exponent for a separation in σ is similar at λ = 0.616, which might indicate that the Lorenz system is less sensitive to changes in the value of σ as compared to changes in the value of its initial conditions. We will now consider changes in ρ and β. 5 0 om l.c ai −10 gm ln |δZ(t)| −5 1@ −15 ln |δZ(t)| = 0.532t − 16.048 10 20 30 40 time t 50 60 70 ca ne 0 ro l2 41 −20 Cl 5 as tif y Figure 9: λ = 0.532 for a separation in the value of ρ ln |δZ(t)| 0 −5 −10 −15 −20 ln |δZ(t)| = 0.595t − 14.515 0 10 20 30 40 time t 50 60 Figure 10: λ = 0.595 for a separation in the value of β 14 70 Downloaded from www.clastify.com by caners It appears that this abnormal spike in the initial time interval occurs only for a separation in the initial parameters, rather than conditions. Also, it appears that the Lorenz system is even less sensitive to the value of ρ and β, as their Lyupanov exponents are 0.532 and 0.595 respectively. Thus, we have successfully investigated the Lorenz system’s chaotic behaviour and compared several possible separations in initial parameters and conditions, each yielding different but close-by measures of chaos in the Lyupanov exponent. Evaluation • Despite limitations in computational power and a relatively larger step size used, our linear approximations yields us the following Lyupanov exponents: λ = 0.693, 0.616, 0.532, 0.595. If we compare this om to the maximal Lyupanov exponent, which is computed over a large time interval and for even smaller l.c intial separation vectors, defined by, gm ai ~ 1 |Z(t)| ln t→∞ Z ~ 0| ~ 0 →0 t |Z λmax = lim lim 1@ of the Lorenz system, where λmax = 0.9056 [11] , our approximations are useful as they do not exceed 41 this maximum Lyupanov exponent, while also being within a reasonable range to the literature value. ro l2 In fact, we can estimate a crude value for the total error in our investigation by calculating our average ne Lyupanov exponent to be λavg = 0.609 and: ca λmax − λavg 0.9056 − 0.6090 = 32.75% × 100% = λmax 0.9056 tif y error = as • The fourth-order Runge-Kutta method, while the most popular of the RK methods, is not the best, especially when computing ability is limited. A method that uses an adaptive time step, such as ode45 Cl 9 could have yielded far more accurate results. This shortcoming in the investigation is made even more glaring when considering the difference between using a time-step of h = 0.001 vs h = 0.0001, which leads to a large difference in the final state vector at t = 100. Thus, even if the global error is O(h4 ), it is still large. • The above point is compounded by the fact that the Lorenz system is a highly stiff system, being numerically unstable. Most accessible solvers for ordinary differential equations have extremely low accuracies for such problems, even ode45 and rk4. We could have instead used a more advanced predictorcorrector method, which predicts the next y value, much like we currently are, but also has a second-step where results from other methods are used to refine (correct) the initial approximation. 15 Downloaded from www.clastify.com by caners • The initial spikes observed in Figure 7, 8, and 9 have probably influenced the best fit approximation. This would reduce the investigation’s accuracy as this spike is most likely arising from an undefined operation. Specifically, for changes in the parameters, there is no initial separation vector, as ~y0 is the same for both trajectories—they only differ in their values of σ, ρ, or β. Thus, the program for computing Lyupanov exponents eventually attempts to computes ln 0 when linearizing the initial separation vector, which is probably interpreted as an infinitely large but negative value. 10 Conclusion This mathematical investigation considered the Lorenz system’s chaotic behaviour for separations in initial om values and parameters. l.c The Lorenz attractor was successfully solved for at a base case, for which two fixed point attractors were gm ai clearly along with its characteristic chaotic oscillation between each attractor. 1@ Lyupanov exponents were used to quantify chaos, an exceptional sensitivity to initial conditions. These 41 Lyuapnov exponents showed that the Lorenz system was most sensitive to perturbations in the initial condi- ro l2 tion vector ~y0 , while perturbations in the parameters σ, ρ, and β were relatively less sensitive. Nevertheless, ne each Lyupanov exponent was close to each other and most importantly did not exceed the value for the ca maximal Lyupanov exponent given in literature. Thus, the investigation has been adequately undertaken. tif y In order to do so, I learned new numerical methods, other than the Euler method I’d already learned in class, as to solve not just differential equations but systems of differential equations. I also appreciated where these Cl numerical methods come from, with a derivative of the Euler method, RK2, and RK4 from Taylor series expansions. Further, I have understood the concept of chaos with greater rigor, having learned of its measure in the Lyuapnov exponent. I was able to apply my skill in programming to write my own implemention of RK4 and an implementation for computing Lyupanov exponents. My skillset as a mathematican has increased greatly and I have learned about advanced techniques in calculus. Given that the Lorenz system, in all its complexity, is a relatively simpler model of convection, I have been able to comprehend just how chaotic weather must be in real life. 16 Downloaded from www.clastify.com by caners 11 Reference list [1] C. Hoefer, “Causal determinism,” Stanford Encyclopedia of Philosophy, 21-Jan-2016. [Online]. Available: https://plato.stanford.edu/entries/determinism-causal/ [Accessed: 16-Aug-2022]. [2] J. Hateley, “The lorenz system - UC santa barbara,” The Lorenz System. [Online]. Available: https://web.math.ucsb.edu/ ley/paper/lorenz.pdf. [Accessed: 21-Aug-2022]. [3] E. N. Lorenz, “Deterministic nonperiodic flow,” The Theory of Chaotic Attractors, pp. 25–36, 2004. [4] D. W. Harder, J. Rodgers, and Design - UW Web Operations - Jesse Rodgers ([email protected]), “Background,” Topic 14.6: Stiff Differential Equations. [Online]. Available: https://ece.uwaterloo.ca/ dwhard- om er/NumericalAnalysis/14IVPs/stiff/complete.html. [Accessed: 24-Aug-2022]. ai l.c [5] Libretexts, “14.5: The chain rule for multivariable functions,” Mathematics LibreTexts, 24-Apr-2022. gm [Online]. Available: https://math.libretexts.org/Bookshelves/Calculus/Book [Accessed: 23-Aug 2022]. 1@ [6] A. Iserles, A first course in the numerical analysis of differential equations. Cambridge: Cambridge l2 41 University Press, 2014. ne ro [7] Viswanath, Divakar. Lyapunov exponents from random Fibonacci sequences to the Lorenz equations. Cl as tif y ca Doctoral dissertation. Cornell University, 1998. 17