private function GWI_DP(J1, M1, J2, M2, L, M) result(GWI)
Geppert-Wiebicke axisymmetric coupling coefficient (Geppert & Wiebicke, 1991), a compact
shorthand for the generation/amplification amplitude of a two-mode
interaction in the Hall-MHD induction equation:
This is algebraically the standard Gaunt coefficient -- the closed
form for --
written in terms of two CGCOEFF evaluations. Built entirely from
CGCOEFF, which guards all selection rules, so GWI is safe to call
with any integer sextuple and returns 0 for invalid combinations
(unlike GWJ, see its own selection-rule note).
Returns: , complex (real-valued in
practice, but returned as COMPLEX for a uniform interface with
GWJ).
Nodes of different colours represent the following:
Solid arrows point from a procedure to one which it calls. Dashed
arrows point from an interface to procedures which implement that interface.
This could include the module procedures in a generic interface or the
implementation in a submodule of an interface in a parent module.
Where possible, edges connecting nodes are
given different colours to make them easier to distinguish in
large graphs.
Nodes of different colours represent the following:
Solid arrows point from a procedure to one which it calls. Dashed
arrows point from an interface to procedures which implement that interface.
This could include the module procedures in a generic interface or the
implementation in a submodule of an interface in a parent module.
Where possible, edges connecting nodes are
given different colours to make them easier to distinguish in
large graphs.
Source Code
FUNCTION GWI_DP(J1,M1,J2,M2,L,M)RESULT(GWI)IMPLICIT NONEINTEGER(KIND=i4),INTENT(IN)::J1INTEGER(KIND=i4),INTENT(IN)::M1INTEGER(KIND=i4),INTENT(IN)::J2INTEGER(KIND=i4),INTENT(IN)::M2INTEGER(KIND=i4),INTENT(IN)::LINTEGER(KIND=i4),INTENT(IN)::MCOMPLEX(KIND=dp)::GWIGWI=DSQRT((2.d0*J1+1.d0)*(2.d0*J2+1.d0)/(2.d0*L+1.d0)/4.d0/pi)*&CGCOEFF(J1,0,J2,0,L,0)*CGCOEFF(J1,M1,J2,M2,L,M)RETURN END FUNCTION GWI_DP