Programs in Physics & Physical Chemistry
|[Licence| Download | New Version Template] aabi_v1_0.gz(36 Kbytes)|
|Manuscript Title: A function subprogram in order to calculate the matrix elements of rotation operators.|
|Authors: F. Brut|
|Program title: ROTATION MATRIX ELEMENTS D|
|Catalogue identifier: AABI_v1_0|
Distribution format: gz
|Journal reference: Comput. Phys. Commun. 36(1985)213|
|Programming language: Fortran.|
|Computer: CDC CYBER 750.|
|Operating system: NOS/BE.|
|RAM: 7K words|
|Word size: 60|
|Keywords: General purpose, Algebras, Quantum mechanics, Angular momentum Projection techniques, Particle physics.|
Nature of problem:
The reduced matrix elements of rotation operators are calculated. The sum is done for all the values for which the argument of the factorials are greater than or equal to zero. Each matrix element is written explicitly as a literal polynomial on the variables cos (beta/2) and sin (beta/2).
The reduced matrix elements djmm'(Beta) are homogeneous polynomials of degree 2j on the variables cos(Beta/2) and sin(Beta/2). With the phase convention of Wigner, namely:
djmm'(Beta) = (-1)m-m' djm'm(Beta) = dj-m',-m(Beta)
only the matrix elements which satisfy simultaneously the following conditions
-j <= m <= 0
|m'| <= |m|
are considered. The others can be deduced from the above relations. Each single term of the polynomial includes three factors : a signed numerical constant, the appropriate power of cos(Beta/2) and the appropriate power of sin(Beta/2). Each of these factors is stored, as data for the first of them, in a variable name and the polynomial is then written explicitly.
In the present version, the program assumes that the quantum number j can take integer and half-integer values from 0 up to and including 15/2. The range or the values of the spin j can be changed easily. In fact, this function subprogram is the output resulting from a FORTRAN program. Thus, it is somewhat easy to make reasonable changes on the boundaries of the spin j, if required.
For the maximum efficiency, the function must be called for very many times, in the same program unit, in order to give the best response time. The execution time required to calculate one matrix element depends mainly upon the values of its arguments. But for instance, 15000 calls, for various values of the Euler angle Beta and for all the values of j between 0 and 15/2, took less than 1s CPU time for execution on a CDC CYBER 750.
|Disclaimer | ScienceDirect | CPC Journal | CPC | QUB|