Bit rate: Difference between revisions

From formulasearchengine
Jump to navigation Jump to search
en>Dsimic
Added one more reference
en>Dsimic
Video: Repeated and unneded links deleted
 
(One intermediate revision by the same user not shown)
Line 1: Line 1:
{{more footnotes|date=April 2010}}
Hello there, I am Adrianne and I totally really like that name. I am a people manager on the other hand soon I'll be alone. Gardening is what I do 7 days a week. Guam has always been home. See what's new on my new website here: http://prometeu.net<br><br>My weblog [http://prometeu.net clash of clans hack download free]
[[Image:Numerical integration illustration, h=1.png|right|thumb|Illustration of numerical integration for the differential equation <math>y'=y, y(0)=1.</math> Blue: the [[Euler method]], green: the [[midpoint method]], red: the exact solution, <math>y=e^t.</math> The step size is <math>h=1.0.</math>]]
[[Image:Numerical integration illustration, h=0.25.png|right|thumb|The same illustration for <math>h=0.25.</math> It is seen that the midpoint method converges faster than the Euler method.]]
This subject is the part of [[numerical analysis]] which studies the methods for finding numerical approximations to the solutions of [[ordinary differential equation]]s (ODEs). This field is also known under the name ''[[numerical integration]],'' but some people reserve this term for the computation of [[integral]]s.
 
Many differential equations cannot be solved analytically; however, in science and engineering, a numeric approximation to the solution is often good enough to solve a problem. The [[algorithm]]s studied here can be used to compute such an approximation. An alternative method is to use techniques from [[calculus]] to obtain a [[series expansion]] of the solution.
 
Ordinary differential equations occur in many scientific disciplines, for instance in [[physics]], [[chemistry]], [[biology]], and [[economics]]. In addition, some methods in [[numerical partial differential equations]] convert the [[partial differential equation]] into an ordinary differential equation, which must then be solved.
 
== The problem ==
A first-order differential equation is an [[Initial value problem]] (IVP) of the form,<ref>{{harvtxt|Bradie|2006|pp=533–655}}</ref>
:<math>y'(t) = f(t,y(t)), \qquad y(t_0)=y_0, \qquad\qquad (1)</math>
where ''f'' is a function that maps [''t''<sub>0</sub>,∞)&nbsp;×&nbsp;'''R'''<sup>d</sup> to '''R'''<sup>d</sup>, and the initial condition ''y''<sub>0</sub>&nbsp;∈&nbsp;'''R'''<sup>d</sup> is a given vector.  ''First-order'' means that only the first derivative of ''y'' appears in the equation, and higher derivatives are absent.
 
Without loss of generality to higher-order systems, we restrict ourselves to ''first-order'' differential equations, because a higher-order ODE can be converted into a larger system of first-order equations by introducing extra variables.  For example, the second-order equation
''y''<nowiki>''</nowiki>&nbsp;=&nbsp;−''y''
can be rewritten as two first-order equations: ''y''<nowiki>'</nowiki>&nbsp;=&nbsp;''z'' and ''z''<nowiki>'</nowiki>&nbsp;=&nbsp;−''y''.
 
In this section, we describe numerical methods for IVPs, and remark that ''[[boundary value problem]]s'' (BVPs) require a different set of tools.  In a BVP, one defines values, or components of the solution ''y'' at more than one point.  Because of this, different methods need to be used to solve BVPs.  For example, the [[shooting method]] (and its variants) or global methods like [[finite difference]]s, [[Galerkin method]]s, or [[collocation method]]s are appropriate for that class of problems.
 
The [[Picard&ndash;Lindelöf theorem]] states that there is a unique solution, provided ''f'' is [[Lipschitz continuous]].
 
== Methods ==
Numerical methods for solving first-order IVPs often fall into one of two large categories: [[linear multistep method]]s, or [[Runge-Kutta methods]].  A further division can be realized by dividing methods into those that are explicit and those that are implicit.  For example,  implicit [[linear multistep method]]s include [[Linear multistep method#Adams–Moulton methods|Adams-Moulton methods]], and [[Backward differentiation formula|backward differentiation methods]] (BDF), whereas [[Runge-Kutta methods#Implicit Runge–Kutta methods|implicit Runge-Kutta methods]]<ref>{{harvtxt|Hairer|Nørsett|Wanner|1993|pages=204–215}}</ref> include  [[diagonally implicit Runge-Kutta]] (DIRK), [[singly diagonally implicit runge kutta]] (SDIRK), and [[Gauss-Radau]] (based on [[Gaussian quadrature]]) numerical methods.
Explicit examples from the [[Linear multistep method|linear multistep family]] include the
[[Linear multistep method#Adams–Bashforth methods|Adams-Bashforth methods]], and any Runge-Kutta method
with a lower diagonal [[Butcher tableau]] is [[List_of_Runge–Kutta_methods#Explicit_methods|explicit]].
A loose rule of thumb dictates that ''stiff'' differential equations require the use of implicit schemes, whereas non-stiff problems can be solved more efficiently with explicit schemes.
 
We point out that the so-called [[general linear methods]] (GLMs) are a generalization of the above two large classes of methods.
 
=== The Euler method ===<!-- This section is linked from [[Generating trigonometric tables]] -->
{{details|Euler method}}
 
A brief explanation:
From any point on a curve, you can find an approximation of a nearby point on the curve by moving a short distance along a line [[tangent]] to the curve.
 
Rigorous development:
Starting with the differential equation (1), we replace the derivative ''y''<nowiki>'</nowiki> by the [[finite difference]] approximation
:<math> y'(t) \approx \frac{y(t+h) - y(t)}{h}, \qquad\qquad (2) </math>
which when re-arranged yields the following formula
:<math> y(t+h) \approx y(t) + hy'(t) \qquad\qquad </math>
and using (1) gives:
:<math> y(t+h) \approx y(t) + hf(t,y(t)). \qquad\qquad (3) </math>
This formula is usually applied in the following way. We choose a step size ''h'', and we construct the sequence ''t''<sub>0</sub>, ''t''<sub>1</sub>&nbsp;=&nbsp;''t''<sub>0</sub>&nbsp;+&nbsp;''h'', ''t''<sub>2</sub>&nbsp;=&nbsp;''t''<sub>0</sub>&nbsp;+&nbsp;2''h'', … We denote by ''y''<sub>''n''</sub> a numerical estimate of the exact solution ''y''(''t''<sub>''n''</sub>). Motivated by (3), we compute these estimates by the following [[recursion|recursive]] scheme
:<math> y_{n+1} = y_n + hf(t_n,y_n). \qquad\qquad (4) </math>
This is the ''[[Euler method]]'' (or ''[[forward Euler method]]'', in contrast with the ''backward Euler method'', to be described below). The method is named after [[Leonhard Euler]] who described it in 1768.
 
The Euler method is an example of an [[explicit and implicit methods|''explicit'']] method. This means that the new value ''y''<sub>''n+1''</sub> is defined in terms of things that are already known, like ''y''<sub>''n''</sub>.
 
=== The backward Euler method ===
{{details|Backward Euler method}}
 
If, instead of (2), we use the approximation
:<math> y'(t) \approx \frac{y(t) - y(t-h)}{h}, \qquad\qquad (5)</math>
we get the ''backward Euler method'':
:<math> y_{n+1} = y_n + hf(t_{n+1},y_{n+1}). \qquad\qquad (6)</math>
The backward Euler method is an [[explicit and implicit methods|''implicit'']] method, meaning that we have to solve an equation to find ''y''<sub>''n''+1</sub>. One often uses [[fixed point iteration]] or (some modification of) the [[Newton's method|Newton–Raphson method]] to achieve this. Of course, it costs time to solve this equation; this cost must be taken into consideration when one selects the method to use. The advantage of implicit methods such as (6) is that they are usually more stable for solving a [[stiff equation]], meaning that a larger step size ''h'' can be used.'''
'''
 
=== The first-order exponential integrator method ===
{{details|Exponential integrators}}
 
Exponential integrators describe a large class of integrators that have recently seen a lot of development.<ref name="Exponential integrators">{{harvtxt|Hochbruck|2010|pp=209–286}} This is a modern and extensive review paper for exponential integrators</ref>  They date back to at least the 1960s.
 
In place of (1), we assume the differential equation is either of the form
:<math>y'(t) = -A\, y+ \mathcal{N}(y), \qquad\qquad\qquad (7)</math>
or it has been locally linearize about a background state to produce a linear term <math>-Ay</math> and a nonlinear term <math>\mathcal{N}(y)</math>.
 
Exponential integrators are constructed by multiplying (7) by <math>e^{A t}</math>, and exactly integrating the result over
a time interval <math>[t^n, t^{n+1}]</math>:
:<math> y_{n+1} = e^{-A h } y_n + \int_{0}^{h} e^{ -(h-\tau) A } \mathcal{N}\left( y\left( t_n+\tau \right) \right)\, d\tau. </math>
This approximation is exact, but it doesn't define the integral.
 
The first-order exponential integrator can be realized by holding <math>\mathcal{N}( y( t_n+\tau ) )</math> constant over the full interval:
:<math>y_{n+1} = e^{-Ah}y_n + A^{-1}(1-e^{-Ah}) \mathcal{N}( y( t_n ) )\ . \qquad\qquad (8)</math>
 
=== Generalizations ===
The Euler method is often not accurate enough. In more precise terms, it only has order one (the concept of ''order'' is explained below). This caused mathematicians to look for higher-order methods.
 
One possibility is to use not only the previously computed value ''y''<sub>''n''</sub> to determine ''y''<sub>''n''+1</sub>, but to make the solution depend on more past values. This yields a so-called ''multistep method''. Perhaps the simplest is the [[Leapfrog method]] which is second order and (roughly speaking) relies on two time values.
 
Almost all practical multistep methods fall within the family of [[linear multistep method]]s, which have the form
:<math> \alpha_k y_{n+k} + \alpha_{k-1} y_{n+k-1} + \cdots
+ \alpha_0 y_n</math>
::<math> = h \left[ \beta_k f(t_{n+k},y_{n+k}) + \beta_{k-1}
f(t_{n+k-1},y_{n+k-1}) + \cdots + \beta_0 f(t_n,y_n) \right]. </math>
 
Another possibility is to use more points in the interval [''t''<sub>''n''</sub>,''t''<sub>''n''+1</sub>]. This leads to the family of [[Runge–Kutta method]]s, named after [[Carl David Tolmé Runge|Carl Runge]] and [[Martin Wilhelm Kutta|Martin Kutta]]. One of their fourth-order methods is especially popular.
 
=== Advanced features ===
A good implementation of one of these methods for solving an ODE entails more than the time-stepping formula.
 
It is often inefficient to use the same step size all the time, so ''variable step-size methods'' have been developed. Usually, the step size is chosen such that the (local) error per step is below some tolerance level. This means that the methods must also compute an ''error indicator'', an estimate of the local error.
 
An extension of this idea is to choose dynamically between different methods of different orders (this is called a ''variable order method''). Methods based on [[Richardson extrapolation]], such as the [[Bulirsch–Stoer algorithm]], are often used to construct various methods of different orders.
 
Other desirable features include:
* ''dense output'': cheap numerical approximations for the whole integration interval, and not only at the points ''t''<sub>0</sub>, ''t''<sub>1</sub>, ''t''<sub>2</sub>, ...
* ''event location'': finding the times where, say, a particular function vanishes. This typically requires the use of a [[root-finding algorithm]].
* support for [[parallel computing]].
* when used for integrating with respect to time, time reversibility
 
=== Alternative methods ===
Many methods do not fall within the framework discussed here. Some classes of alternative methods are:
* ''multiderivative methods'', which use not only the function ''f'' but also its derivatives. This class includes ''Hermite–Obreschkoff methods'' and ''[[Runge–Kutta–Fehlberg method|Fehlberg methods]]'', as well as methods like the [[Parker–Sochacki method]] or [[Bychkov-Scherbakov method]], which compute the coefficients of the [[Taylor series]] of the solution ''y'' recursively.
* ''methods for second order ODEs''. We said that all higher-order ODEs can be transformed to first-order ODEs of the form&nbsp;(1). While this is certainly true, it may not be the best way to proceed. In particular, ''[[Nyström method]]s'' work directly with second-order equations.
* ''[[geometric integrator|geometric integration methods]]'' are especially designed for special classes of ODEs (e.g., [[symplectic integrator]]s for the solution of [[Hamiltonian mechanics|Hamiltonian equations]]). They take care that the numerical solution respects the underlying structure or geometry of these classes.
* ''[[Quantized State Systems Methods]]'' are a family of ODE integration methods based on the idea of state quantization. They are efficient when simulation sparse systems with frequent discontinuities.
 
== Analysis ==
[[Numerical analysis]] is not only the design of numerical methods, but also their analysis. Three central concepts in this analysis are:
* ''convergence'': whether the method approximates the solution,
* ''order'': how well it approximates the solution, and
* [[numerical stability|''stability'']]: whether errors are damped out.
 
=== Convergence ===
A numerical method is said to be ''convergent'' if the numerical solution approaches the exact solution as the step size ''h'' goes to 0. More precisely, we require that for every ODE (1) with a [[Lipschitz continuous|Lipschitz]] function ''f'' and every ''t''<sup>*</sup>&nbsp;>&nbsp;0,
 
:<math> \lim_{h\to0+} \max_{n=0,1,\dots,\lfloor t^*/h\rfloor} \| y_{n,h} - y(t_n) \| = 0. </math>
 
All the methods mentioned above are convergent. In fact, a numerical scheme has to be convergent to be of any use.
 
=== Consistency and order ===
{{details|Truncation error (numerical integration)}}
 
Suppose the numerical method is
 
:<math> y_{n+k} = \Psi(t_{n+k}; y_n, y_{n+1}, \dots, y_{n+k-1}; h). \, </math>
 
The ''local (truncation) error'' of the method is the error committed by one step of the method. That is, it is the difference between the result given by the method, assuming that no error was made in earlier steps, and the exact solution:
 
:<math> \delta^h_{n+k} = \Psi \left( t_{n+k}; y(t_n), y(t_{n+1}), \dots, y(t_{n+k-1}); h \right) - y(t_{n+k}). </math>
 
The method is said to be ''consistent'' if
:<math> \lim_{h\to 0} \frac{\delta^h_{n+k}}{h} = 0. </math>
The method has ''order'' <math>p</math> if
:<math> \delta^h_{n+k} = O(h^{p+1}) \quad\mbox{as } h\to0. </math>
Hence a method is consistent if it has an order greater than 0. The (forward) Euler method (4) and the backward Euler method (6) introduced above both have order 1, so they are consistent. Most methods being used in practice attain higher order. Consistency is a necessary condition for convergence, but not sufficient; for a method to be convergent, it must be both consistent and [[zero-stable]].
 
A related concept is the ''global (truncation) error'', the error sustained in all the steps one needs to reach a fixed time ''t''. Explicitly, the global error at time ''t'' is ''y''<sub>''N''</sub>&nbsp;&minus;&nbsp;''y''(''t'') where ''N''&nbsp;=&nbsp;(''t''&minus;''t''<sub>0</sub>)/''h''. The global error of a ''p''th order one-step method is O(''h''<sup>''p''</sup>); in particular, such a method is convergent.  This statement is not necessarily true for multi-step methods.
 
=== Stability and stiffness ===
{{details|Stiff equation}}
 
For some differential equations, application of standard methods &mdash;such as the Euler method, explicit [[Runge–Kutta methods]], or [[multistep method]]s (e.g., Adams–Bashforth methods)&mdash; exhibit instability in the solutions, though other methods may produce stable solutions. This "difficult behaviour" in the equation (which may not necessarily be complex itself) is described as ''stiffness'', and is often caused by the presence of different time scales in the underlying problem. Stiff problems are ubiquitous in [[chemical kinetics]], [[control theory]], [[solid mechanics]], [[weather forecasting]], [[biology]], [[plasma physics]], and [[electronics]].
 
== History ==
Below is a [[Chronology|timeline]] of some important developments in this field.
 
* 1768 - [[Leonhard Euler]] publishes his method.
* 1824 - [[Augustin Louis Cauchy]] proves convergence of the Euler method. In this proof, Cauchy uses the implicit Euler method.
* 1855 - First mention of the [[multistep method]]s of [[John Couch Adams]] in a letter written by [[F. Bashforth]].
* 1895 - [[Carl David Tolmé Runge|Carl Runge]] publishes the first [[Runge–Kutta method]].
* 1905 - [[Martin Wilhelm Kutta|Martin Kutta]] describes the popular fourth-order [[Runge–Kutta method]].
* 1910 - [[Lewis Fry Richardson]] announces his [[extrapolation method]], [[Richardson extrapolation]].
* 1952 - [[Charles F. Curtiss]] and [[Joseph Oakland Hirschfelder]] coin the term ''[[stiff equation]]s''.
* 1963 - [[Germund Dahlquist]] introduces ''[[Stiff_equation#A-stability|A-stability]]'' of integration methods.
 
==Numerical Solutions to Second Order One Dimensional boundary value problems==
Boundary value problems (BVPs) are usually solved numerically by solving an approximately equivalent matrix problem obtained by discretizing the original BVP. The most commonly used method for numerically solving BVPs in one dimension is called the [[Finite Difference Method]].  This method takes advantage of linear combinations of point values to construct [[finite difference coefficient]]s that describe derivatives of the function.  For example,
the second-order [[central difference]] approximation to the first derivative is given by:
 
: <math> \frac{u_{i+1}-u_{i-1}}{2h} = u'(x_i) + \mathcal{O}(h^2), </math>
 
and the second-order [[central difference]] for the second derivative is given by:
 
: <math> \frac{u_{i+1}- 2 u_i + u_{i-1}}{h^2} = u''(x_i) + \mathcal{O}(h^2). </math>
 
In both of these formulae, <math> h=x_i-x_{i-1}</math> is the distance between neighbouring ''x'' values on the discretized domain. One then constructs a linear system that can then be solved by standard [[numerical linear algebra|matrix methods]]. For instance, suppose the equation to be solved is:
 
: <math> \frac{d^2 u}{dx^2} -u =0, </math>
 
: <math> u(0)=0, </math>
 
: <math> u(1)=1. </math>
 
The next step would be to discretize the problem and use linear derivative approximations such as
 
: <math> u''_i =\frac{u_{i+1}-2u_{i}+u_{i-1}}{h^2} </math>
 
and solve the resulting system of linear equations. This would lead to equations such as:
 
: <math> \frac{u_{i+1}-2u_{i}+u_{i-1}}{h^2}-u_i = 0, \quad \forall i={1,2,3,...,n-1}.</math>
 
On first viewing, this system of equations appears to have difficulty associated with the fact that the equation involves no terms that are not multiplied by variables, but in fact this is false. At ''i'' = 1 and ''n'' &minus; 1 there is a term involving the boundary values <math>u(0)=u_0 </math> and <math> u(1)=u_n  </math> and since these two values are known, one can simply substitute them into this equation and as a result have a non-homogenous linear system of equations that has non-trivial solutions.
 
== See also ==
* [[Courant–Friedrichs–Lewy condition]]
* [[Energy drift]]
* [[General linear methods]]
* [[List of numerical analysis topics#Numerical methods for ordinary differential equations]]
* [[Reversible reference system propagation algorithm]]
 
== Notes ==
<references/>
 
== References ==
{{Reflist}}
*{{cite book|last=Bradie|first=Brian|title=A Friendly Introduction to Numerical Analysis|year=2006|publisher=Pearson Prentice Hall|location=Upper Saddle River, New Jersey|isbn=0-13-013054-0}}
*[[John C. Butcher|J. C. Butcher]], ''Numerical methods for ordinary differential equations'', ISBN 0-471-96758-0
*Ernst Hairer, Syvert Paul Nørsett and Gerhard Wanner, ''Solving ordinary differential equations I: Nonstiff problems,'' second edition, Springer Verlag, Berlin, 1993. ISBN 3-540-56670-8.
*Ernst Hairer and Gerhard Wanner, ''Solving ordinary differential equations II: Stiff and differential-algebraic problems,'' second edition, Springer Verlag, Berlin, 1996. ISBN 3-540-60452-9. <br> ''(This two-volume monograph systematically covers all aspects of the field.)''
*{{cite journal|last=Hochbruck|first=Marlis|coauthors=Ostermann, Alexander|title=Exponential integrators|date=May 2010|year=2010|pages=209–286|doi=10.1017/S0962492910000048|url=http://journals.cambridge.org/action/displayAbstract?fromPage=online&aid=7701740}}
*Arieh Iserles, ''A First Course in the Numerical Analysis of Differential Equations,'' Cambridge University Press, 1996. ISBN 0-521-55376-8 (hardback), ISBN 0-521-55655-4 (paperback). <br> ''(Textbook, targeting advanced undergraduate and postgraduate students in mathematics, which also discusses [[numerical partial differential equations]].)''
*John Denholm Lambert, ''Numerical Methods for Ordinary Differential Systems,'' John Wiley & Sons, Chichester, 1991. ISBN 0-471-92990-5. <br> ''(Textbook, slightly more demanding than the book by Iserles.)''
 
==External links==
* Joseph W. Rudmin, ''[http://csma31.csm.jmu.edu/physics/rudmin/ps.pdf Application of the Parker–Sochacki Method to Celestial Mechanics]'', 1998.
* Dominique Tournès, ''[http://www.reunion.iufm.fr/dep/mathematiques/calculsavant/Equipe/tournes.html L'intégration approchée des équations différentielles ordinaires (1671-1914)]'', thèse de doctorat de l'université Paris 7 - Denis Diderot, juin 1996. Réimp. Villeneuve d'Ascq : Presses universitaires du Septentrion, 1997, 468 p. (Extensive online material on ODE numerical analysis history, for English-language material on the history of ODE numerical analysis, see e.g. the paper books by Chabert and Goldstine quoted by him.)
 
{{Numerical integrators}}
 
{{DEFAULTSORT:Numerical Ordinary Differential Equations}}
[[Category:Numerical differential equations| ]]
[[Category:Ordinary differential equations]]

Latest revision as of 17:36, 31 December 2014

Hello there, I am Adrianne and I totally really like that name. I am a people manager on the other hand soon I'll be alone. Gardening is what I do 7 days a week. Guam has always been home. See what's new on my new website here: http://prometeu.net

My weblog clash of clans hack download free