> On Sep 13, 2016, at 9:47 PM, Gideon Simpson <[email protected]> wrote:
> 
> I was looking around to see if there was any built in routine for implicit 
> midpoint time stepping in petsc.  By this I mean equation (1i) of 
> https://en.wikipedia.org/wiki/Midpoint_method.  
> 
> I noticed the TSTHETA solver, and I see that the documentation says:
> 
> -ts_type theta -ts_theta_theta 0.5 corresponds to the implicit midpoint rule
> 
> But I wanted to verify that it agrees with what I interpret to be implicit 
> midpoint.  
> 
Yes, it does.

> Also, is the distinction with the ts_theta_endpoint  flag as to whether it is 
> the weighting of the argument to the f(t,y) function or the weighting of the 
> f(t,y) evaluated at the different points?
> 

The ts_theta_endpoint flag allows one to switch between two different types of 
theta methods; for ODEs they can be represented in the general forms

y_{i+1} = y_i + h ( \theta f(t_i,y_i) + (1-\theta) f(t_{i+1},y_{i+1}) )   (w 
the endpoint flag)

and 

y_s = y_i + h \theta f(t_i+\theta h, y_s)
y_{i+1} = y_i + (y_s-y_i)/\theta   (w/o the endpoint flag)

Hong

j+1=yj+h[θf(tj,yj)+(1−θ)f(tj+1,yj+1)


> -gideon
> 

Reply via email to