blob: 3efd9fe0bd1b2f6dd3a3a9372a45e1c468e83838 [file] [log] [blame]
@cindex coupling coefficients
@cindex 3-j symbols
@cindex 6-j symbols
@cindex 9-j symbols
@cindex Wigner coefficients
@cindex Racah coefficients
The Wigner 3-j, 6-j and 9-j symbols give the coupling coefficients for
combined angular momentum vectors. Since the arguments of the standard
coupling coefficient functions are integer or half-integer, the
arguments of the following functions are, by convention, integers equal
to twice the actual spin value. For information on the 3-j coefficients
see Abramowitz & Stegun, Section 27.9. The functions described in this
section are declared in the header file @file{gsl_sf_coupling.h}.
@menu
* 3-j Symbols::
* 6-j Symbols::
* 9-j Symbols::
@end menu
@node 3-j Symbols
@subsection 3-j Symbols
@deftypefun double gsl_sf_coupling_3j (int @var{two_ja}, int @var{two_jb}, int @var{two_jc}, int @var{two_ma}, int @var{two_mb}, int @var{two_mc})
@deftypefunx int gsl_sf_coupling_3j_e (int @var{two_ja}, int @var{two_jb}, int @var{two_jc}, int @var{two_ma}, int @var{two_mb}, int @var{two_mc}, gsl_sf_result * @var{result})
These routines compute the Wigner 3-j coefficient,
@tex
\beforedisplay
$$
\pmatrix{ja & jb & jc\cr
ma & mb & mc\cr}
$$
\afterdisplay
@end tex
@ifinfo
@example
(ja jb jc
ma mb mc)
@end example
@end ifinfo
@noindent
where the arguments are given in half-integer units, @math{ja} =
@var{two_ja}/2, @math{ma} = @var{two_ma}/2, etc.
@comment Exceptional Return Values: GSL_EDOM, GSL_EOVRFLW
@end deftypefun
@node 6-j Symbols
@subsection 6-j Symbols
@deftypefun double gsl_sf_coupling_6j (int @var{two_ja}, int @var{two_jb}, int @var{two_jc}, int @var{two_jd}, int @var{two_je}, int @var{two_jf})
@deftypefunx int gsl_sf_coupling_6j_e (int @var{two_ja}, int @var{two_jb}, int @var{two_jc}, int @var{two_jd}, int @var{two_je}, int @var{two_jf}, gsl_sf_result * @var{result})
These routines compute the Wigner 6-j coefficient,
@tex
\beforedisplay
$$
\left\{\matrix{ja & jb & jc\cr
jd & je & jf\cr}\right\}
$$
\afterdisplay
@end tex
@ifinfo
@example
@{ja jb jc
jd je jf@}
@end example
@end ifinfo
@noindent
where the arguments are given in half-integer units, @math{ja} =
@var{two_ja}/2, @math{ma} = @var{two_ma}/2, etc.
@comment Exceptional Return Values: GSL_EDOM, GSL_EOVRFLW
@end deftypefun
@node 9-j Symbols
@subsection 9-j Symbols
@deftypefun double gsl_sf_coupling_9j (int @var{two_ja}, int @var{two_jb}, int @var{two_jc}, int @var{two_jd}, int @var{two_je}, int @var{two_jf}, int @var{two_jg}, int @var{two_jh}, int @var{two_ji})
@deftypefunx int gsl_sf_coupling_9j_e (int @var{two_ja}, int @var{two_jb}, int @var{two_jc}, int @var{two_jd}, int @var{two_je}, int @var{two_jf}, int @var{two_jg}, int @var{two_jh}, int @var{two_ji}, gsl_sf_result * @var{result})
These routines compute the Wigner 9-j coefficient,
@tex
\beforedisplay
$$
\left\{\matrix{ja & jb & jc\cr
jd & je & jf\cr
jg & jh & ji\cr}\right\}
$$
\afterdisplay
@end tex
@ifinfo
@example
@{ja jb jc
jd je jf
jg jh ji@}
@end example
@end ifinfo
@noindent
where the arguments are given in half-integer units, @math{ja} =
@var{two_ja}/2, @math{ma} = @var{two_ma}/2, etc.
@comment Exceptional Return Values: GSL_EDOM, GSL_EOVRFLW
@end deftypefun