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. |
Functionality to compute specified plane of the Wigner dl matrix.
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 | |||
) |
Calculates the lth plane of a d-matrix using Turok & Bucher's operator-based method.
Variables:
Definition at line 957 of file ssht_dl_mod.f90.
References ssht_dl_beta_operator_fill(), and ssht_dl_beta_operator_quarter().
Referenced by ssht_core_mod::ssht_core_dh_forward_sov(), ssht_core_mod::ssht_core_dh_forward_sov_direct(), ssht_core_mod::ssht_core_dh_inverse_direct(), ssht_core_mod::ssht_core_dh_inverse_direct_factored(), ssht_core_mod::ssht_core_dh_inverse_sov(), ssht_core_mod::ssht_core_dh_inverse_sov_direct(), ssht_core_mod::ssht_core_mw_forward_sov(), ssht_core_mod::ssht_core_mw_forward_sov_conv(), ssht_core_mod::ssht_core_mw_forward_sov_direct(), ssht_core_mod::ssht_core_mw_inverse_sov(), ssht_core_mod::ssht_core_mw_inverse_sov_direct(), ssht_core_mod::ssht_core_mweo_forward_sov(), ssht_core_mod::ssht_core_mweo_forward_sov_conv(), ssht_core_mod::ssht_core_mweo_forward_sov_direct(), ssht_core_mod::ssht_core_mweo_inverse_direct(), ssht_core_mod::ssht_core_mweo_inverse_sov(), and ssht_core_mod::ssht_core_mweo_inverse_sov_direct().
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:
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:
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:
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:
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:
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:
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:
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:
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:
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:
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:
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:
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:
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:
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:
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:
Definition at line 758 of file ssht_dl_mod.f90.