ssht_dl_mod Module Reference

Functionality to compute specified plane of the Wigner dl matrix. More...

Functions/Subroutines

subroutine ssht_dl_beta_risbo_full (dl, beta, l)
 Calculates the *full* lth plane of a d-matrix using Risbo's recursion method. For l>1, require the dl plane to be computed already with values for l-1.
subroutine ssht_dl_beta_risbo_full_table (dl, beta, l, sqrt_tbl)
 Calculates the *full* lth plane of a d-matrix using Risbo's recursion method. For l>1, require the dl plane to be computed already with values for l-1. Also takes a table of precomputed square roots of integers to avoid recomputing them.
subroutine ssht_dl_beta_risbo_half_table (dl, beta, l, sqrt_tbl)
 Calculates *half* (for m = -l:l and mm = -l:0) of lth plane of a d-matrix using Risbo's recursion method. For l>1, require the dl plane to be computed already with values for l-1. Also takes a table of precomputed square roots of integers to avoid recomputing them.
subroutine ssht_dl_beta_risbo_fill_half2full (dl, l)
 Fill in the full Wigner plane from the half m = -l:l and mm = -l:0, i.e. compute positive mm's.
subroutine ssht_dl_halfpi_trapani_eighth (dl, el)
 Calculates *eighth* (for m = 0:l and mm = 0:m of lth plane of a d-matrix for PI/2 using Trapani & Navaza's recursion method. For l>0, require the dl plane to be computed already with values for l-1.
subroutine ssht_dl_halfpi_trapani_eighth_table (dl, el, sqrt_tbl)
 Calculates *eighth* (for m = 0:l and mm = 0:m) of lth plane of a d-matrix for PI/2 using Trapani & Navaza's recursion method. For l>0, require the dl plane to be computed already with values for l-1. Also takes a table of precomputed square roots of integers to avoid recomputing them.
subroutine ssht_dl_halfpi_trapani_fill_eighth2full (dl, el)
 Fill in the full Wigner plane from the eighth m = 0:l and mm = 0:m.
subroutine ssht_dl_halfpi_trapani_fill_eighth2full_table (dl, el, signs)
 Fill in the full Wigner plane from the eighth m = 0:l and mm = 0:m. Takes a table of precomputed signs to avoid recomputing them.
subroutine ssht_dl_halfpi_trapani_fill_eighth2tophalf (dl, el)
 Fill in half Wigner plane for m = -l:l and mm = 0:l from the eighth m = 0:l and mm = 0:m, i.e. compute positive mm's.
subroutine ssht_dl_halfpi_trapani_fill_eighth2tophalf_table (dl, el, signs)
 Fill in half Wigner plane for m = -l:l and mm = 0:l from the eighth m = 0:l and mm = 0:m, i.e. compute positive mm's. Takes a table of precomputed signs to avoid recomputing them.
subroutine ssht_dl_halfpi_trapani_fill_eighth2righthalf (dl, el)
 Fill in half Wigner plane for m = 0:l and mm = -l:l from the eighth m = 0:l and mm = 0:m.
subroutine ssht_dl_halfpi_trapani_fill_eighth2righthalf_table (dl, el, signs)
 Fill in half Wigner plane for m = 0:l and mm = -l:l from the eighth m = 0:l and mm = 0:m. Takes a table of precomputed signs to avoid recomputing them.
subroutine ssht_dl_halfpi_trapani_fill_eighth2quarter (dl, el)
 Fill in quarter Wigner plane for m = 0:l and mm = 0:l from the eighth m = 0:l and mm = 0:m, i.e. compute positive mm's.
subroutine ssht_dl_halfpi_trapani_fill_eighth2quarter_table (dl, el, signs)
 Fill in quarter Wigner plane for m = 0:l and mm = 0:l from the eighth m = 0:l and mm = 0:m, i.e. compute positive mm's. Takes a table of precomputed signs to avoid recomputing them.
subroutine ssht_dl_beta_operator (dl, beta, l)
 Calculates the lth plane of a d-matrix using Turok & Bucher's operator-based method.
subroutine ssht_dl_beta_operator_quarter (dl, beta, l)
 Does the left quarter of the d-matrix. Beta is the angle of rotation, l is the plane of the matrix required and dl is the two dimensional array representing the lth plane of the matrix. This array must be already allocated on entry with dimensions given by the command allocate(dl(- lmax: lmax, - lmax: lmax)) where lmax >= l.
subroutine ssht_dl_beta_operator_fill (dl, l)
 Computes the three remaining (top, bottom and right) quarters of the d-matrix, given the left quarter.

Detailed Description

Functionality to compute specified plane of the Wigner dl matrix.

Author:
Jason McEwen

Function/Subroutine Documentation

subroutine ssht_dl_mod::ssht_dl_beta_operator ( real(dp),dimension(-l:l,-l:l),intent(out)  dl,
real(dp),intent(in)  beta,
integer,intent(in)  l 
)
subroutine ssht_dl_mod::ssht_dl_beta_operator_fill ( real(kind = dp),dimension(-l:l,-l:l),intent(inout)  dl,
integer,intent(in)  l 
) [private]

Computes the three remaining (top, bottom and right) quarters of the d-matrix, given the left quarter.

Variables:

  • dl: Dl matrix values computed for lth plane.
  • beta: Beta euler angle to compute dl matrix for.
Author:
Daniel Mortlock

Definition at line 1148 of file ssht_dl_mod.f90.

Referenced by ssht_dl_beta_operator().

subroutine ssht_dl_mod::ssht_dl_beta_operator_quarter ( real(kind = dp),dimension(-l:l,-l:l),intent(out)  dl,
real(kind = dp),intent(in)  beta,
integer,intent(in)  l 
) [private]

Does the left quarter of the d-matrix. Beta is the angle of rotation, l is the plane of the matrix required and dl is the two dimensional array representing the lth plane of the matrix. This array must be already allocated on entry with dimensions given by the command allocate(dl(- lmax: lmax, - lmax: lmax)) where lmax >= l.

Variables:

  • dl: Dl matrix values computed for lth plane.
  • beta: Beta euler angle to compute dl matrix for.
  • l: Plane of dl matrix to compute values for.
Author:
Daniel Mortlock

Definition at line 993 of file ssht_dl_mod.f90.

Referenced by ssht_dl_beta_operator().

subroutine ssht_dl_mod::ssht_dl_beta_risbo_fill_half2full ( real(kind = dp),dimension(-l:l,-l:l),intent(inout)  dl,
integer,intent(in)  l 
)

Fill in the full Wigner plane from the half m = -l:l and mm = -l:0, i.e. compute positive mm's.

Variables:

  • dl: Dl matrix values for lth plane.
  • l: Plane of dl matrix to compute values for.
Author:
Jason McEwen

Definition at line 439 of file ssht_dl_mod.f90.

subroutine ssht_dl_mod::ssht_dl_beta_risbo_full ( real(kind = dp),dimension(-l:l,-l:l),intent(out)  dl,
real(kind = dp),intent(in)  beta,
integer,intent(in)  l 
)

Calculates the *full* lth plane of a d-matrix using Risbo's recursion method. For l>1, require the dl plane to be computed already with values for l-1.

Variables:

  • dl: Dl matrix values computed for lth plane.
  • beta: Beta euler angle to compute dl matrix for.
  • l: Plane of dl matrix to compute values for.
Author:
Daniel Mortlock

Definition at line 77 of file ssht_dl_mod.f90.

References ssht_types_mod::SQRT2, ssht_error_mod::ssht_error(), and ssht_error_mod::SSHT_ERROR_ARG_INVALID.

subroutine ssht_dl_mod::ssht_dl_beta_risbo_full_table ( real(kind = dp),dimension(-l:l,-l:l),intent(out)  dl,
real(kind = dp),intent(in)  beta,
integer,intent(in)  l,
real(kind = dp),dimension(0:2*l),intent(in)  sqrt_tbl 
)

Calculates the *full* lth plane of a d-matrix using Risbo's recursion method. For l>1, require the dl plane to be computed already with values for l-1. Also takes a table of precomputed square roots of integers to avoid recomputing them.

Variables:

  • dl: Dl matrix values computed for lth plane.
  • beta: Beta euler angle to compute dl matrix for.
  • l: Plane of dl matrix to compute values for.
  • sqrt_tbl(0:2*l): Table of precomputed square roots of integers 0:2*l.
Author:
J. D. McEwen

Definition at line 204 of file ssht_dl_mod.f90.

References ssht_types_mod::SQRT2, ssht_error_mod::ssht_error(), and ssht_error_mod::SSHT_ERROR_ARG_INVALID.

subroutine ssht_dl_mod::ssht_dl_beta_risbo_half_table ( real(kind = dp),dimension(-l:l,-l:l),intent(out)  dl,
real(kind = dp),intent(in)  beta,
integer,intent(in)  l,
real(kind = dp),dimension(0:2*l),intent(in)  sqrt_tbl 
)

Calculates *half* (for m = -l:l and mm = -l:0) of lth plane of a d-matrix using Risbo's recursion method. For l>1, require the dl plane to be computed already with values for l-1. Also takes a table of precomputed square roots of integers to avoid recomputing them.

Variables:

  • dl: Dl matrix values computed for lth plane.
  • beta: Beta euler angle to compute dl matrix for.
  • l: Plane of dl matrix to compute values for.
  • sqrt_tbl(0:2*l): Table of precomputed square roots of integers 0:2*l.
Author:
J. D. McEwen

Definition at line 325 of file ssht_dl_mod.f90.

References ssht_types_mod::SQRT2, ssht_error_mod::ssht_error(), and ssht_error_mod::SSHT_ERROR_ARG_INVALID.

subroutine ssht_dl_mod::ssht_dl_halfpi_trapani_eighth ( real(dp),dimension(-el:el,-el:el),intent(inout)  dl,
integer,intent(in)  el 
)

Calculates *eighth* (for m = 0:l and mm = 0:m of lth plane of a d-matrix for PI/2 using Trapani & Navaza's recursion method. For l>0, require the dl plane to be computed already with values for l-1.

Variables:

  • dl: Dl matrix values computed for lth plane.
  • l: Plane of dl matrix to compute values for.
Author:
Jason McEwen

Definition at line 478 of file ssht_dl_mod.f90.

subroutine ssht_dl_mod::ssht_dl_halfpi_trapani_eighth_table ( real(dp),dimension(0:el,0:el),intent(inout)  dl,
integer,intent(in)  el,
real(kind = dp),dimension(0:2*el+1),intent(in)  sqrt_tbl 
)

Calculates *eighth* (for m = 0:l and mm = 0:m) of lth plane of a d-matrix for PI/2 using Trapani & Navaza's recursion method. For l>0, require the dl plane to be computed already with values for l-1. Also takes a table of precomputed square roots of integers to avoid recomputing them.

Variables:

  • dl: Dl matrix values computed for lth plane.
  • l: Plane of dl matrix to compute values for.
  • sqrt_tbl(0:2*l+1): Table of precomputed square roots of integers 0:2*l+1.
Author:
Jason McEwen

Definition at line 550 of file ssht_dl_mod.f90.

References ssht_types_mod::SQRT2.

Referenced by ssht_core_mod::ssht_core_dh_forward_sov_sym(), ssht_core_mod::ssht_core_dh_forward_sov_sym_real(), ssht_core_mod::ssht_core_dh_inverse_sov_sym(), ssht_core_mod::ssht_core_dh_inverse_sov_sym_real(), ssht_core_mod::ssht_core_gl_forward_sov_sym(), ssht_core_mod::ssht_core_gl_forward_sov_sym_real(), ssht_core_mod::ssht_core_gl_inverse_sov_sym(), ssht_core_mod::ssht_core_gl_inverse_sov_sym_real(), ssht_core_mod::ssht_core_mw_forward_sov_conv_sym(), ssht_core_mod::ssht_core_mw_forward_sov_conv_sym_real(), ssht_core_mod::ssht_core_mw_inverse_sov_sym(), ssht_core_mod::ssht_core_mw_inverse_sov_sym_real(), ssht_core_mod::ssht_core_mweo_forward_sov_conv_sym(), ssht_core_mod::ssht_core_mweo_forward_sov_conv_sym_real(), ssht_core_mod::ssht_core_mweo_inverse_sov_sym(), and ssht_core_mod::ssht_core_mweo_inverse_sov_sym_real().

subroutine ssht_dl_mod::ssht_dl_halfpi_trapani_fill_eighth2full ( real(kind = dp),dimension(-el:el,-el:el),intent(inout)  dl,
integer,intent(in)  el 
)

Fill in the full Wigner plane from the eighth m = 0:l and mm = 0:m.

Variables:

  • dl: Dl matrix values for lth plane.
  • l: Plane of dl matrix to compute values for.
Author:
Jason McEwen

Definition at line 619 of file ssht_dl_mod.f90.

subroutine ssht_dl_mod::ssht_dl_halfpi_trapani_fill_eighth2full_table ( real(kind = dp),dimension(-el:el,-el:el),intent(inout)  dl,
integer,intent(in)  el,
real(kind = dp),dimension(0:el),intent(in)  signs 
)

Fill in the full Wigner plane from the eighth m = 0:l and mm = 0:m. Takes a table of precomputed signs to avoid recomputing them.

Variables:

  • dl: Dl matrix values for lth plane.
  • l: Plane of dl matrix to compute values for.
  • signs(0:l): Table of precompute terms (-1)^l.
Author:
Jason McEwen

Definition at line 668 of file ssht_dl_mod.f90.

subroutine ssht_dl_mod::ssht_dl_halfpi_trapani_fill_eighth2quarter ( real(kind = dp),dimension(0:el,0:el),intent(inout)  dl,
integer,intent(in)  el 
)

Fill in quarter Wigner plane for m = 0:l and mm = 0:l from the eighth m = 0:l and mm = 0:m, i.e. compute positive mm's.

Variables:

  • dl: Dl matrix values for lth plane.
  • l: Plane of dl matrix to compute values for.
Author:
Jason McEwen

Definition at line 882 of file ssht_dl_mod.f90.

subroutine ssht_dl_mod::ssht_dl_halfpi_trapani_fill_eighth2quarter_table ( real(kind = dp),dimension(0:el,0:el),intent(inout)  dl,
integer,intent(in)  el,
real(kind = dp),dimension(0:el),intent(in)  signs 
)

Fill in quarter Wigner plane for m = 0:l and mm = 0:l from the eighth m = 0:l and mm = 0:m, i.e. compute positive mm's. Takes a table of precomputed signs to avoid recomputing them.

Variables:

  • dl: Dl matrix values for lth plane.
  • l: Plane of dl matrix to compute values for.
  • signs(0:l): Table of precompute terms (-1)^l.
Author:
Jason McEwen

Definition at line 917 of file ssht_dl_mod.f90.

Referenced by ssht_core_mod::ssht_core_dh_forward_sov_sym_real(), ssht_core_mod::ssht_core_dh_inverse_sov_sym_real(), ssht_core_mod::ssht_core_gl_forward_sov_sym_real(), ssht_core_mod::ssht_core_gl_inverse_sov_sym_real(), ssht_core_mod::ssht_core_mw_forward_sov_conv_sym_real(), ssht_core_mod::ssht_core_mw_inverse_sov_sym_real(), ssht_core_mod::ssht_core_mweo_forward_sov_conv_sym_real(), and ssht_core_mod::ssht_core_mweo_inverse_sov_sym_real().

subroutine ssht_dl_mod::ssht_dl_halfpi_trapani_fill_eighth2righthalf ( real(kind = dp),dimension(0:el,-el:el),intent(inout)  dl,
integer,intent(in)  el 
)

Fill in half Wigner plane for m = 0:l and mm = -l:l from the eighth m = 0:l and mm = 0:m.

Variables:

  • dl: Dl matrix values for lth plane.
  • l: Plane of dl matrix to compute values for.
Author:
Jason McEwen

Definition at line 799 of file ssht_dl_mod.f90.

subroutine ssht_dl_mod::ssht_dl_halfpi_trapani_fill_eighth2righthalf_table ( real(kind = dp),dimension(0:el,-el:el),intent(inout)  dl,
integer,intent(in)  el,
real(kind = dp),dimension(0:el),intent(in)  signs 
)

Fill in half Wigner plane for m = 0:l and mm = -l:l from the eighth m = 0:l and mm = 0:m. Takes a table of precomputed signs to avoid recomputing them.

Variables:

  • dl: Dl matrix values for lth plane.
  • l: Plane of dl matrix to compute values for.
  • signs(0:l): Table of precompute terms (-1)^l.
Author:
Jason McEwen

Definition at line 841 of file ssht_dl_mod.f90.

Referenced by ssht_core_mod::ssht_core_dh_forward_sov_sym(), ssht_core_mod::ssht_core_dh_inverse_sov_sym(), ssht_core_mod::ssht_core_gl_forward_sov_sym(), ssht_core_mod::ssht_core_gl_inverse_sov_sym(), ssht_core_mod::ssht_core_mw_forward_sov_conv_sym(), ssht_core_mod::ssht_core_mw_inverse_sov_sym(), ssht_core_mod::ssht_core_mweo_forward_sov_conv_sym(), and ssht_core_mod::ssht_core_mweo_inverse_sov_sym().

subroutine ssht_dl_mod::ssht_dl_halfpi_trapani_fill_eighth2tophalf ( real(kind = dp),dimension(-el:el,0:el),intent(inout)  dl,
integer,intent(in)  el 
)

Fill in half Wigner plane for m = -l:l and mm = 0:l from the eighth m = 0:l and mm = 0:m, i.e. compute positive mm's.

Variables:

  • dl: Dl matrix values for lth plane.
  • l: Plane of dl matrix to compute values for.
Author:
Jason McEwen

Definition at line 716 of file ssht_dl_mod.f90.

subroutine ssht_dl_mod::ssht_dl_halfpi_trapani_fill_eighth2tophalf_table ( real(kind = dp),dimension(-el:el,0:el),intent(inout)  dl,
integer,intent(in)  el,
real(kind = dp),dimension(0:el),intent(in)  signs 
)

Fill in half Wigner plane for m = -l:l and mm = 0:l from the eighth m = 0:l and mm = 0:m, i.e. compute positive mm's. Takes a table of precomputed signs to avoid recomputing them.

Variables:

  • dl: Dl matrix values for lth plane.
  • l: Plane of dl matrix to compute values for.
  • signs(0:l): Table of precompute terms (-1)^l.
Author:
Jason McEwen

Definition at line 758 of file ssht_dl_mod.f90.

Generated on Mon Oct 31 01:20:06 2011 by  doxygen 1.6.3