SUGAW Subroutine

public subroutine SUGAW(KDGL, KM, KN, PL, PW, PANM, PFN)

Uses

  • proc~~sugaw~~UsesGraph proc~sugaw SUGAW PARKIND1 PARKIND1 proc~sugaw->PARKIND1 PARKIND2 PARKIND2 proc~sugaw->PARKIND2 module~abort_trans_mod ABORT_TRANS_MOD proc~sugaw->module~abort_trans_mod module~gawl_mod~2 GAWL_MOD proc~sugaw->module~gawl_mod~2 module~supolf_mod SUPOLF_MOD proc~sugaw->module~supolf_mod module~tpm_constants~2 TPM_CONSTANTS proc~sugaw->module~tpm_constants~2 module~tpm_gen~2 TPM_GEN proc~sugaw->module~tpm_gen~2 module~tpm_pol TPM_POL proc~sugaw->module~tpm_pol module~parkind_ectrans PARKIND_ECTRANS module~tpm_constants~2->module~parkind_ectrans module~tpm_gen~2->module~parkind_ectrans EC_PARKIND EC_PARKIND module~tpm_pol->EC_PARKIND module~parkind_ectrans->PARKIND1

*** *SUGAW * - Routine to initialize the Gaussian abcissa and the associated weights

  • Interface. ---------- CALL *SUGAW(KN,PFN,PL,PW) *

    1. Initialization + root + weight computation ------------------------------------------

    1.1 Find the roots of the ordinary Legendre polynomial of degree KN using an analytical first guess and then refine to machine precision via Newton's method in double precision following Swarztrauber (2002)

    1.2 Find the roots of the associated Legendre polynomial of degree KN and the associated Gaussian weights using a Runge-Kutta 4 integration of the Pruefer transformed Sturm-Liouville problem (Tygert (J. Comput. Phys. 2008) and Glaser et al., SIAM J. SCI. COMPUT. Vol. 29 (4) 1420-1438)

    1. Diagnostics. ------------

Arguments

Type IntentOptional Attributes Name
integer(kind=JPIM), intent(in) :: KDGL
integer(kind=JPIM), intent(in) :: KM
integer(kind=JPIM), intent(in) :: KN
real(kind=JPRD), intent(out) :: PL(KDGL)
real(kind=JPRD), intent(out) :: PW(KDGL)
real(kind=JPRD), intent(in) :: PANM
real(kind=JPRD), intent(in), optional :: PFN(0:KDGL,0:KDGL)

Calls

proc~~sugaw~~CallsGraph proc~sugaw SUGAW gstats gstats proc~sugaw->gstats proc~abort_trans ABORT_TRANS proc~sugaw->proc~abort_trans proc~gawl GAWL proc~sugaw->proc~gawl proc~supolf SUPOLF proc~sugaw->proc~supolf mpl_abort mpl_abort proc~abort_trans->mpl_abort sdl_srlabort sdl_srlabort proc~abort_trans->sdl_srlabort sdl_traceback sdl_traceback proc~abort_trans->sdl_traceback proc~cpledn CPLEDN proc~gawl->proc~cpledn

Called by

proc~~sugaw~~CalledByGraph proc~sugaw SUGAW proc~sugawc SUGAWC proc~sugawc->proc~sugaw proc~sugawc~2 SUGAWC proc~sugawc~2->proc~sugaw proc~suleg SULEG proc~suleg->proc~sugaw proc~suleg~2 SULEG proc~suleg~2->proc~sugaw proc~setup_trans SETUP_TRANS proc~setup_trans->proc~suleg proc~setup_trans~2 SETUP_TRANS proc~setup_trans~2->proc~suleg