Computational Physics Differential Equations

37
Dr. Guy Tel-Zur Computational Physics Differential Equations Autumn Colors, by Bobby Mikul , http://www.publicdomainpictures.net Version 10-11-2010 18:30

description

Computational Physics Differential Equations. Dr. Guy Tel- Zur. Autumn Colors , by Bobby  Mikul , http://www.publicdomainpictures.net. Version 10-11-2010 18:30. Agenda. MHJ Chapter 13 & Koonin Chapter 2 How to solve ODE using Matlab Scilab. Topics. Defining the scope of the discussion - PowerPoint PPT Presentation

Transcript of Computational Physics Differential Equations

Page 1: Computational Physics Differential Equations

Dr. Guy Tel-Zur

Computational PhysicsDifferential Equations

Autumn Colors, by Bobby Mikul, http://www.publicdomainpictures.net Version 10-11-2010 18:30

Page 2: Computational Physics Differential Equations

Agenda• MHJ Chapter 13 & Koonin Chapter 2• How to solve ODE using Matlab• Scilab

Page 3: Computational Physics Differential Equations

Topics• Defining the scope of the discussion• Simple methods• Multi-Step methods• Runge-Kutta• Case Studies - Pendulum

Page 4: Computational Physics Differential Equations

The scope of the discussion

For a higher order ODE a set of coupled 1st order equations:

Page 5: Computational Physics Differential Equations

Simple methodsEuler method:

Integration using higher order accuracy:

Taylor series expansion:

Page 6: Computational Physics Differential Equations

Local error!

Better than Euler’s method but useful only when it is easy to differentiate f(x,y)

Page 7: Computational Physics Differential Equations

ExampleLet’s solve:

Page 8: Computational Physics Differential Equations
Page 9: Computational Physics Differential Equations

FORTRAN code

Page 10: Computational Physics Differential Equations

Multi-Step methods

-1-1

Page 11: Computational Physics Differential Equations

Adams-Bashforth2 steps:

4 steps:

Page 12: Computational Physics Differential Equations

(So far) Explicit methodsFuture = Function(Present && Past)

Implicit methods

Future = Function(Future && Present && Past)

Page 13: Computational Physics Differential Equations

Let’s calculate dy/dx at a mid way between lattice points:

Rearrange:

This is a recursion relation!

Let’s replace:

Page 14: Computational Physics Differential Equations

A simplification occurs if f(x,y)=y*g(x), then the recursion equation becomes:

An example, suppose g(x)=-x

yn+1=(1-xnh/2)/(1+xn+1h/2)yn

This can be easily calculated, for example:

Calculate y(x=1) for h=0.5

X0=0, y(0)=1X1=0.5, y(0.5)=?x2=1.0, y(1.0)=?

Page 15: Computational Physics Differential Equations

Error=-0.01569

The solution:

Page 16: Computational Physics Differential Equations

Predictor-Corrector method

Page 17: Computational Physics Differential Equations

Predictor-Corrector method

Page 18: Computational Physics Differential Equations

Runge-Kutta

Page 19: Computational Physics Differential Equations
Page 20: Computational Physics Differential Equations
Page 21: Computational Physics Differential Equations

Proceed to:Physics examples: Ideal harmonic oscillator – section 13.6.1

Page 22: Computational Physics Differential Equations

Physics Project – The pendulum, 13.7

I use a modified the C++ code from:http://www.fys.uio.no/compphys/cp/programs/FYS3150/chapter13/cpp/program2.cpp

fout.close fout.close()

Demo on folder:C:\Users\telzur\Documents\BGU\Teaching\ComputationalPhysics\2011A\Lectures\05\CPP

Page 23: Computational Physics Differential Equations

ODEs in Matlabfunction dydt = odefun(t,y)a=0.001;b=1.0;dydt -=b*t*sin(t)+a*t*t;

Usage:

[t1, y1]=ode23(@odefun,[0 100],0);Plot(t1,y1,’r’);hold onplot(t2,y2,’b’);hold off

Demo folder: Users\telzur\Documents\BGU\Teaching\ComputationalPhysics\2011A\Lectures\05\Matlab

Page 24: Computational Physics Differential Equations

Output

Page 25: Computational Physics Differential Equations

http://www.scilab.org

Page 26: Computational Physics Differential Equations
Page 27: Computational Physics Differential Equations
Page 28: Computational Physics Differential Equations
Page 29: Computational Physics Differential Equations
Page 30: Computational Physics Differential Equations

Parallel tools for Multi-Core and Distributed Parallel Computing

Page 31: Computational Physics Differential Equations

In preparationParallel executionA new function (parallel_run) allows parallel computations and leverages multicore architectures and their capacities.

Page 32: Computational Physics Differential Equations
Page 33: Computational Physics Differential Equations
Page 34: Computational Physics Differential Equations
Page 35: Computational Physics Differential Equations
Page 36: Computational Physics Differential Equations
Page 37: Computational Physics Differential Equations

Xcos demo