Computational Physics Differential Equations
description
Transcript of Computational Physics Differential Equations
![Page 1: Computational Physics Differential Equations](https://reader035.fdocuments.in/reader035/viewer/2022062305/568166dc550346895ddb0409/html5/thumbnails/1.jpg)
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](https://reader035.fdocuments.in/reader035/viewer/2022062305/568166dc550346895ddb0409/html5/thumbnails/2.jpg)
Agenda• MHJ Chapter 13 & Koonin Chapter 2• How to solve ODE using Matlab• Scilab
![Page 3: Computational Physics Differential Equations](https://reader035.fdocuments.in/reader035/viewer/2022062305/568166dc550346895ddb0409/html5/thumbnails/3.jpg)
Topics• Defining the scope of the discussion• Simple methods• Multi-Step methods• Runge-Kutta• Case Studies - Pendulum
![Page 4: Computational Physics Differential Equations](https://reader035.fdocuments.in/reader035/viewer/2022062305/568166dc550346895ddb0409/html5/thumbnails/4.jpg)
The scope of the discussion
For a higher order ODE a set of coupled 1st order equations:
![Page 5: Computational Physics Differential Equations](https://reader035.fdocuments.in/reader035/viewer/2022062305/568166dc550346895ddb0409/html5/thumbnails/5.jpg)
Simple methodsEuler method:
Integration using higher order accuracy:
Taylor series expansion:
![Page 6: Computational Physics Differential Equations](https://reader035.fdocuments.in/reader035/viewer/2022062305/568166dc550346895ddb0409/html5/thumbnails/6.jpg)
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](https://reader035.fdocuments.in/reader035/viewer/2022062305/568166dc550346895ddb0409/html5/thumbnails/7.jpg)
ExampleLet’s solve:
![Page 8: Computational Physics Differential Equations](https://reader035.fdocuments.in/reader035/viewer/2022062305/568166dc550346895ddb0409/html5/thumbnails/8.jpg)
![Page 9: Computational Physics Differential Equations](https://reader035.fdocuments.in/reader035/viewer/2022062305/568166dc550346895ddb0409/html5/thumbnails/9.jpg)
FORTRAN code
![Page 10: Computational Physics Differential Equations](https://reader035.fdocuments.in/reader035/viewer/2022062305/568166dc550346895ddb0409/html5/thumbnails/10.jpg)
Multi-Step methods
-1-1
![Page 11: Computational Physics Differential Equations](https://reader035.fdocuments.in/reader035/viewer/2022062305/568166dc550346895ddb0409/html5/thumbnails/11.jpg)
Adams-Bashforth2 steps:
4 steps:
![Page 12: Computational Physics Differential Equations](https://reader035.fdocuments.in/reader035/viewer/2022062305/568166dc550346895ddb0409/html5/thumbnails/12.jpg)
(So far) Explicit methodsFuture = Function(Present && Past)
Implicit methods
Future = Function(Future && Present && Past)
![Page 13: Computational Physics Differential Equations](https://reader035.fdocuments.in/reader035/viewer/2022062305/568166dc550346895ddb0409/html5/thumbnails/13.jpg)
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](https://reader035.fdocuments.in/reader035/viewer/2022062305/568166dc550346895ddb0409/html5/thumbnails/14.jpg)
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](https://reader035.fdocuments.in/reader035/viewer/2022062305/568166dc550346895ddb0409/html5/thumbnails/15.jpg)
Error=-0.01569
The solution:
![Page 16: Computational Physics Differential Equations](https://reader035.fdocuments.in/reader035/viewer/2022062305/568166dc550346895ddb0409/html5/thumbnails/16.jpg)
Predictor-Corrector method
![Page 17: Computational Physics Differential Equations](https://reader035.fdocuments.in/reader035/viewer/2022062305/568166dc550346895ddb0409/html5/thumbnails/17.jpg)
Predictor-Corrector method
![Page 18: Computational Physics Differential Equations](https://reader035.fdocuments.in/reader035/viewer/2022062305/568166dc550346895ddb0409/html5/thumbnails/18.jpg)
Runge-Kutta
![Page 19: Computational Physics Differential Equations](https://reader035.fdocuments.in/reader035/viewer/2022062305/568166dc550346895ddb0409/html5/thumbnails/19.jpg)
![Page 20: Computational Physics Differential Equations](https://reader035.fdocuments.in/reader035/viewer/2022062305/568166dc550346895ddb0409/html5/thumbnails/20.jpg)
![Page 21: Computational Physics Differential Equations](https://reader035.fdocuments.in/reader035/viewer/2022062305/568166dc550346895ddb0409/html5/thumbnails/21.jpg)
Proceed to:Physics examples: Ideal harmonic oscillator – section 13.6.1
![Page 22: Computational Physics Differential Equations](https://reader035.fdocuments.in/reader035/viewer/2022062305/568166dc550346895ddb0409/html5/thumbnails/22.jpg)
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](https://reader035.fdocuments.in/reader035/viewer/2022062305/568166dc550346895ddb0409/html5/thumbnails/23.jpg)
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](https://reader035.fdocuments.in/reader035/viewer/2022062305/568166dc550346895ddb0409/html5/thumbnails/24.jpg)
Output
![Page 25: Computational Physics Differential Equations](https://reader035.fdocuments.in/reader035/viewer/2022062305/568166dc550346895ddb0409/html5/thumbnails/25.jpg)
http://www.scilab.org
![Page 26: Computational Physics Differential Equations](https://reader035.fdocuments.in/reader035/viewer/2022062305/568166dc550346895ddb0409/html5/thumbnails/26.jpg)
![Page 27: Computational Physics Differential Equations](https://reader035.fdocuments.in/reader035/viewer/2022062305/568166dc550346895ddb0409/html5/thumbnails/27.jpg)
![Page 28: Computational Physics Differential Equations](https://reader035.fdocuments.in/reader035/viewer/2022062305/568166dc550346895ddb0409/html5/thumbnails/28.jpg)
![Page 29: Computational Physics Differential Equations](https://reader035.fdocuments.in/reader035/viewer/2022062305/568166dc550346895ddb0409/html5/thumbnails/29.jpg)
![Page 30: Computational Physics Differential Equations](https://reader035.fdocuments.in/reader035/viewer/2022062305/568166dc550346895ddb0409/html5/thumbnails/30.jpg)
Parallel tools for Multi-Core and Distributed Parallel Computing
![Page 31: Computational Physics Differential Equations](https://reader035.fdocuments.in/reader035/viewer/2022062305/568166dc550346895ddb0409/html5/thumbnails/31.jpg)
In preparationParallel executionA new function (parallel_run) allows parallel computations and leverages multicore architectures and their capacities.
![Page 32: Computational Physics Differential Equations](https://reader035.fdocuments.in/reader035/viewer/2022062305/568166dc550346895ddb0409/html5/thumbnails/32.jpg)
![Page 33: Computational Physics Differential Equations](https://reader035.fdocuments.in/reader035/viewer/2022062305/568166dc550346895ddb0409/html5/thumbnails/33.jpg)
![Page 34: Computational Physics Differential Equations](https://reader035.fdocuments.in/reader035/viewer/2022062305/568166dc550346895ddb0409/html5/thumbnails/34.jpg)
![Page 35: Computational Physics Differential Equations](https://reader035.fdocuments.in/reader035/viewer/2022062305/568166dc550346895ddb0409/html5/thumbnails/35.jpg)
![Page 36: Computational Physics Differential Equations](https://reader035.fdocuments.in/reader035/viewer/2022062305/568166dc550346895ddb0409/html5/thumbnails/36.jpg)
![Page 37: Computational Physics Differential Equations](https://reader035.fdocuments.in/reader035/viewer/2022062305/568166dc550346895ddb0409/html5/thumbnails/37.jpg)
Xcos demo