dcfode Subroutine

public subroutine dcfode(meth, elco, tesco)

NAME

dcfode(3f) - [M_odepack] Set ODE integrator coefficients.

SYNOPSIS

     subroutine dcfode (meth, elco, tesco)
     integer          :: meth
     double precision :: elco(13,12)
     double precision :: tesco(3,12)

DESCRIPTION

DCFODE is called by the integrator routine to set coefficients needed there.

DCFODE is called once at the beginning of the problem, and is not called again unless and until METH is changed.

OPTIONS

METH

The coefficients for the current method, as given by the value of METH, are set for all orders and saved. The maximum order assumed here is 12 if METH = 1 and 5 if METH = 2. (A smaller value of the maximum order is also allowed.)

ELCO

The ELCO array contains the basic method coefficients. The coefficients el(i), 1 .le. i .le. nq+1, for the method of order nq are stored in ELCO(i,nq). They are given by a genetrating polynomial, i.e., l(x) = el(1) + el(2)x + … + el(nq+1)xnq. For the implicit Adams methods, l(x) is given by dl/dx = (x+1)(x+2)(x+nq-1)/factorial(nq-1), l(-1) = 0. For the BDF methods, l(x) is given by l(x) = (x+1)(x+2)(x+nq)/K, where K = factorial(nq)*(1 + 1/2 + … + 1/nq).

TESCO

The TESCO array contains test constants used for the local error test and the selection of step size and/or order. At order nq, TESCO(k,nq) is used for the selection of step size at order nq - 1 if k = 1, at order nq if k = 2, and at order nq + 1 if k = 3.

Arguments

Type IntentOptional Attributes Name
integer, intent(in) :: meth
real(kind=dp), intent(inout) :: elco(13,12)
real(kind=dp), intent(out) :: tesco(3,12)

Called by

proc~~dcfode~2~~CalledByGraph proc~dcfode~2 M_odepack::dcfode proc~dstoda~2 M_odepack::dstoda proc~dstoda~2->proc~dcfode~2 proc~dstode dstode.inc::dstode proc~dstode->proc~dcfode~2 proc~dstode~2 M_odepack.f90::dstode proc~dstode~2->proc~dcfode~2 proc~dstodi dstodi.inc::dstodi proc~dstodi->proc~dcfode~2 proc~dstodi~2 M_odepack.f90::dstodi proc~dstodi~2->proc~dcfode~2 proc~dstodpk M_odepack::dstodpk proc~dstodpk->proc~dcfode~2 proc~dstoka~2 M_odepack::dstoka proc~dstoka~2->proc~dcfode~2 proc~dlsodar~2 M_odepack::dlsodar proc~dlsodar~2->proc~dstoda~2 proc~dlsoda~2 M_odepack::dlsoda proc~dlsoda~2->proc~dstoda~2 proc~dlsodkr~2 M_odepack::dlsodkr proc~dlsodkr~2->proc~dstoka~2 proc~dlsodpk~2 M_odepack::dlsodpk proc~dlsodpk~2->proc~dstodpk