Explore BrainMass

Linearizing Lorenz Equations using the Implicit Euler Method

This content was STOLEN from BrainMass.com - View the original, and get the already-completed solution here!

I need help to linearize the Lorenz equations so that I can use Matlab to create the butterfly effect, etc. We were given the linearized equations but a couple of students pointed out that one of them was wrong. I don't know which equation is wrong, so if someone could show me how to at least linearize the first Lorenz equation using implicit Eulers, then I can reproduce the method to check the other two equations. I would like to see step by step how the method is employed. We are to only use implicit Eulers. I need them linearized so that I can use Gauss-Seidel iteration in Matlab to create the butterfly effect (we are not to use ode45 or other solvers, hence the need for GS iteration and linearized equations).

here is what the instructor gave us:

dt = s(y-x)

dt = x(r-z)-y

dt = -bz + xy

s = 10, r = 28, b = 8/3

s = sigma, r = rho, b = beta
dt = 10^-4

initial conditions:

x = 2, y = 2, z = 2

x^n+1- x^n
dt = s*x^n+1 + s*y^n+1 → x^n+1 = (1+s*y^n+1)/(1+dt * s)

y^n+1 - y^n
dt = -y^n+1 + x^n+1(r-z^n+1) → y^n+1 = (1 + dt * x^n+1(r-zn+1))/(1 +dt)

z^n+1 - z^n
dt = -b*z^n+1 + x^n+1 * y^n+1 → zn+1 = (1 + dt * x^n+1 * yn+1)/(1 + b*dt )

Thank you for any help possible.

© BrainMass Inc. brainmass.com October 25, 2018, 12:06 am ad1c9bdddf

Solution Summary

The expert examines linearizing Lorenz Equations using the Implicit Euler Method.

See Also This Related BrainMass Solution

Matlab for Lorenz equations with Gauss Seidel iteration


I am taking a numerical methods class and I have limited Matlab skills to be able to complete this problem by myself.

The problem is to linearize the Lorenz equations and then to write a Matlab program without using any built in Matlab solvers such as ODE45, etc. to create the Lorenz butterfly using linearized Lorenz equations with Gauss-Seidel iteration.

I have the linearized Lorenz equations, constants, stopping criteria and initial conditions here:

stopping criteria: 1.e-6
initial conditions: x = 2, y = 2, z = 4
sigma = 10, rho = 28, beta = 8/3
delta_t = 1.e-4

linearized lorenz equations:

x^n+1 - x^n = delta_t * sigma*(y^n+1 - x^n+1)
[please rewrite so equation begins x^n+1 = ...]

y^n+1 = (1 + delta_t*x^n+1*(rho - z^n+1)/(1 + delta_t)

z^n+1 = (1 + delta_t * x^n+1 * y^n+1)/(1 + beta * delta_t)

The code MUST only use Gauss-Seidel iteration to run the iterations (no RK2 or other methods). The code may not use any built in Matlab functions or solvers or matrices to store answers. It needs to tell how much CPU time was used (incorporate tic toc?) What was also suggested was to use a file to dump all results to while the iterations run, making the program run faster. With the results of the iterations a 3D plot needs to be plotted to show the Lorenz butterfly (attractor) using delta_t = 1.e-4. Then a second plot needs to be created that shows the x on the vertical axis and t on the horizontal axis plotting both delta_t = 1.e-4 and delta_t = 1.e-5 so you can see how a slight variation in delta_t causes the two lines to depart after a short while

View Full Posting Details