9subroutine findband(sol,l,nr,r,vr,eps,demax,e,fnd)
39real(8),
intent(in) :: sol
40integer,
intent(in) :: l,nr
41real(8),
intent(in) :: r(nr),vr(nr),eps,demax
42real(8),
intent(inout) :: e
43logical,
intent(out) :: fnd
47integer,
parameter :: maxstp=250
50real(8),
parameter :: de0=0.001d0
53real(8) p0(nr),p1(nr),q0(nr),q1(nr)
67 if (et > e+demax)
exit
69 call rschrodint(sol,l,et,nr,r,vr,nn,p0,p1,q0,q1)
72 if (t*tp <= 0.d0)
then
73 if (abs(de) < eps)
then
92 if (eb < e-demax)
return
93 call rschrodint(sol,l,eb,nr,r,vr,nn,p0,p1,q0,q1)
96 if (t*tp <= 0.d0)
then
97 if (abs(de) < eps)
then
subroutine findband(sol, l, nr, r, vr, eps, demax, e, fnd)
pure subroutine rschrodint(sol, l, e, nr, r, vr, nn, p0, p1, q0, q1)