BDF Schemes and Optimization

The BDF schemes are defined by the multi step scheme 
	(∑_(m=1)^k)(1/m)(∇^m)(Subscript[y, n+1])-h f((Subscript[y, n+1]))==0
with an initial predictor scheme 
	(Subscript[y, n+1]^0)=(∑_(m=0)^k)(∇^m)(Subscript[y, n])
where (∇^m)is the backwards difference of order m i.e 
	({{(∇^0)(Subscript[y, n+1]), =, (Subscript[y, n+1]),  ,  }, {(∇^1)(Subscript[y, n+1]), =, (Subscript[y, n+1])-(Subscript[y, n]),  ,  }, {(∇^2)(Subscript[y, n+1]), =, ∇(Subscript[y, n+1])-∇(Subscript[y, n]), =, (Subscript[y, n+1])-2(Subscript[y, n])+(Subscript[y, n-1])}, {(∇^3)(Subscript[y, n+1]), =, (∇^2)(Subscript[y, n+1])-(∇^2)(Subscript[y, n]), =, (Subscript[y, n+1-3 (Subscript[y, n]) + 3 (Subscript[y, n-1])])-(Subscript[y, n-2])}, {(∇^4)(Subscript[y, n+1]), =, (∇^3)(Subscript[y, n+1])-(∇^3)(Subscript[y, n]), =, …}})

These are easily computed recursively

Sub=(Subscript[y, i_]):>(Subscript[y, i])-(Subscript[y, i-1]);
z=(Subscript[y, n+1]);
TraditionalForm[
Table[z=Simplify[z/.Sub],{5}]
]

They are also given explicitly by Binomial coefficients.

TableForm[
Table[ (((-1))^i)Binomial[k,i],{k,1,5},{i,0,k}]
]

The matlab solver is an NDF scheme defined by the modified version of the implicit scheme given by
	(∑_(m=1)^k)(1/m)(∇^m)(Subscript[y, n+1])-h f((Subscript[y, n+1]))-κ (Subscript[γ, k])((Subscript[y, n+1])-(Subscript[y, n+1]^0))==0
where κ is chosen to either improve accuracy or stability and (Subscript[γ, k])=(∑_(j=1)^k)1/j.

We are going to examine the stability etc. of all of the modifications

MyDel[k_,{n_,h_Symbol,y_Symbol}]:= Sum[ (((-1))^i)Binomial[k,i](Subscript[y, n-i]),{i,0,k}]
MyDel[3,{n+1,h,y}]

NDF[κ_,k_,{n_,h_Symbol,y_Symbol,f_Symbol}]:= Module[
{γ,m},
γ=Sum[1/j,{j,1,k}];
Sum[ (1/m)MyDel[m,{n+1,h,y}],{m,1,k}]-h (Subscript[f, n+1])-γ κ ((Subscript[y, n+1])-Sum[MyDel[m,{n,h,y}],{m,0,k}])==0
]
Clear[x,f,y]
NDF[γ,3,{n,h,y,f}]
Solve[NDF[γ,3,{n,h,y,f}],(Subscript[y, n+1])][[1]]