SUGAW Subroutine

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

Uses

  • proc~~sugaw~2~~UsesGraph proc~sugaw~2 SUGAW EC_PARKIND EC_PARKIND proc~sugaw~2->EC_PARKIND module~abort_trans_mod ABORT_TRANS_MOD proc~sugaw~2->module~abort_trans_mod module~gawl_mod~2 GAWL_MOD proc~sugaw~2->module~gawl_mod~2 module~supolf_mod SUPOLF_MOD proc~sugaw~2->module~supolf_mod module~tpm_constants~2 TPM_CONSTANTS proc~sugaw~2->module~tpm_constants~2 module~tpm_gen~2 TPM_GEN proc~sugaw~2->module~tpm_gen~2 module~tpm_pol TPM_POL proc~sugaw~2->module~tpm_pol module~parkind_ectrans PARKIND_ECTRANS module~tpm_constants~2->module~parkind_ectrans module~tpm_gen~2->module~parkind_ectrans module~tpm_pol->EC_PARKIND PARKIND1 PARKIND1 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~2~~CallsGraph proc~sugaw~2 SUGAW gstats gstats proc~sugaw~2->gstats proc~abort_trans ABORT_TRANS proc~sugaw~2->proc~abort_trans proc~gawl GAWL proc~sugaw~2->proc~gawl proc~supolf SUPOLF proc~sugaw~2->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