bug-gsl
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Bug-gsl] [bug #46677] Wigner d-matrix


From: Patrick Alken
Subject: [Bug-gsl] [bug #46677] Wigner d-matrix
Date: Sat, 12 Dec 2015 21:07:41 +0000
User-agent: Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:42.0) Gecko/20100101 Firefox/42.0

URL:
  <http://savannah.gnu.org/bugs/?46677>

                 Summary: Wigner d-matrix
                 Project: GNU Scientific Library
            Submitted by: psa
            Submitted on: Sat 12 Dec 2015 09:07:40 PM GMT
                Category: None
                Severity: 3 - Normal
        Operating System: 
                  Status: None
             Assigned to: None
             Open/Closed: Open
                 Release: 
         Discussion Lock: Any

    _______________________________________________________

Details:

from holocronweaver =at= gmail =dot= com

Hello all,

While it seems most of contribs/wigner.h was ported to
specfunc/gsl_sf_coupling.h, the Wigner (small) d-matrix was not. Indeed, the
wigner_drot function seems to be the only reason for keeping the contribs file
around. Is there a particular reason this function has not been ported? If
not, what would porting it entail?

I assume the main obstacle is adding tests and verifying the implementation.
As-is, simply copy/pasting the files into specfunc/, renaming them according
to gsl convention, and adding the necessary lines to specfunc/Makefile.ac
allows me to compile wigner.h into the library as-is.

I manually tested the function via a wrapper I wrote in Julia and was able to
reproduce the expected results for j = 1/2, 1, 3/2, and 2 (i.e. j = int 1, 2,
3, 4 according to the parameter convention of multiplying by two to get an
integer). All results were as expected based on the analytic formula on
Wikipedia:
https://en.wikipedia.org/wiki/Wigner_D-matrix#List_of_d-matrix_elements

For example, for j = m' = m = 3/2 (i.e., int 3) and theta = 3/4 * pi:

julia> theta = 3/4 * pi
julia> (1 + cos(theta)) / 2 * cos(theta/2)
0.05604269114599566
julia> sf_wigner_drot(3, 3, 3, theta)
0.05604269114599567

It seems strange to have the Wigner coefficients but not the rotation matrix,
and I am sure others would find it useful, so please consider allowing this
addition. 




    _______________________________________________________

Reply to this item at:

  <http://savannah.gnu.org/bugs/?46677>

_______________________________________________
  Message sent via/by Savannah
  http://savannah.gnu.org/




reply via email to

[Prev in Thread] Current Thread [Next in Thread]