Picard's Iteration

  • Thread starter Nusc
  • Start date
  • #1
753
2
How do you use Picard's iteration to solve the solution for two coupled ODE's, given initial conditions?
 

Answers and Replies

  • #2
HallsofIvy
Science Advisor
Homework Helper
41,847
966
Treat them as two separate equations, using both values in the calculations.

For a "one equation" Picard method, if you are solving the initial value problem dx/dt= f(x,t), with x(t0)= x0, you start by replacing x in f with [itex]x_0[/itex] and get [itex]x_1(t)= x_0+ \int_{t_0}^t f(x_0,\tau)d\tau[/itex], then [itex]x_2(t)= x_0+ \int_{t_0}^t f(x_1(\tau),\tau)d\tau[/itex], etc.

With two equations, say dx/dt= f(x,y,t) and dy/dt= g(x,y,t), with x(t0)= x0, y(t0)= y0, start by letting x and y in those function be x0, y0 and integrate to get [itex]x_1(t)= \int_{t_0}^t f(x_0, y_0, \tau) d\tau[/itex] and [itex]y_1(t)= \int_{t_0}^t g(x_0, y_0, \tau)d\tau[/itex], then [itex]x_2(t)= x_0+ \int_{t_0}^t f(x_1, y_1, \tau)d\tau[/itex], [itex]y_2(t)= \int_{t_0}^t g(x_1,y_1,\tau)d\tau[/itex], etc.

(Note you can also do: [itex]x_1(t)= \int_{t_0}^t f(x_0, y_0, \tau) d\tau[/itex] and [itex]y_1(t)= \int_{t_0}^t g(x_1, y_0, \tau)d\tau[/itex], [itex]x_2(t)= x_0+ \int_{t_0}^t f(x_1(\tau),y_1(\tau),\tau)d\tau[/itex], [itex]y_2(t)= y_0+ \int_{t_0}^t f(x_2(\tau),y_1(\tau),\tau)d\tau[/itex], etc., using each new value as soon as we have it. That will give a sightly different answer but still a valid approximation to the true solution.)
 
  • #3
753
2
Is there a name for the later? How come the later is true?

Is there a reference for these methods? Most elementary textbooks on ODE's that I know of don't cover Picard's method.
 
  • #4
753
2
, then [itex]x_2(t)= x_0+ \int_{t_0}^t f(x_1, y_1, \tau)d\tau[/itex], [itex]y_2(t)= \int_{t_0}^t g(x_1,y_1,\tau)d\tau[/itex], etc.

You meant:

, then [itex]x_2(t)= x_0+ \int_{t_0}^t f(x_1, y_1, \tau)d\tau[/itex], [itex]y_2(t)= y_0 + \int_{t_0}^t g(x_1,y_1,\tau)d\tau[/itex], etc.

Right?
 
  • #5
HallsofIvy
Science Advisor
Homework Helper
41,847
966
Oh, yes! Forgot all about the [itex]y_0[/itex]! Thank you.
 
  • #6
HallsofIvy
Science Advisor
Homework Helper
41,847
966
Is there a name for the later? How come the later is true?

Is there a reference for these methods? Most elementary textbooks on ODE's that I know of don't cover Picard's method.
Actuall most elementary textbooks mention Picard's method in reference to the "Existence and Uniqueness Theorem" for initial value problems. They don't "cover" it because it has a very slow convergence rate. There are much better methods for approximate solution to differential equations.
 
  • #7
HallsofIvy
Science Advisor
Homework Helper
41,847
966
Is there a name for the later? How come the later is true?

Is there a reference for these methods? Most elementary textbooks on ODE's that I know of don't cover Picard's method.
Actuall most elementary textbooks mention Picard's method (perhaps not by that name) in reference to the "Existence and Uniqueness Theorem" for initial value problems. It is Picard's method that gives the fixed point formula needed for the proof. Actually, I believe Picard himself developed it for that purposeThey don't "cover" it because it has a very slow convergence rate. There are much better methods for solving differential equations.

For example, to solve the problem x'(t)= x, with x(0)= 1, you take as your "first approximation" [itex]x_0(t)= 1[/itex] so that x'(t)= dx/dt= 1 and, integrating both sides, [itex]x_0= y_0+ \int_0^t 1 dt= 1+ t[/itex].

Now, take [itex]x_1(t)= 1+ t[/itex] so that x'= dx/dt= 1+ t and, integrating both sides, [itex]x_1= y_0+ \int_0^t (1+ t)dt= 1+ t+ (1/2)t^2[/itex].

Now, take [itex]x_2= 1+ t+ (1/2)t^2[/itex] so that [itex]x'= dx/dt= 1+ t+ (1/2)t^2[/itex] and, integrating both sides
[tex]x_3= 1+ \int_0^t (1+ t+ (1/2)t^2)dt= 1+ t+ (1/2)t^2+ (1/6)t^3[/tex].

At this point you should be able to see that if you continued this forever, you would get the MacLaurin series expansion of [itex]e^x[/itex] which is,in fact, the solution to this problem- but you are going to take an unGodly long time getting their!
 
  • #8
753
2
So if you wanted to find a solution can be obtained for a value for, say, |x| <0.5 how would you do this?
 

Related Threads on Picard's Iteration

  • Last Post
Replies
4
Views
16K
  • Last Post
Replies
1
Views
4K
  • Last Post
Replies
5
Views
14K
  • Last Post
Replies
6
Views
11K
  • Last Post
Replies
3
Views
3K
  • Last Post
Replies
1
Views
2K
Replies
4
Views
2K
  • Last Post
Replies
0
Views
3K
Top