ARTS  2.2.66
wigner_functions.h
Go to the documentation of this file.
1 /* Copyright (C) 2012
2  * Richard Larsson <ric.larsson@gmail.com>
3  *
4  * This program is free software; you can redistribute it and/or modify it
5  * under the terms of the GNU General Public License as published by the
6  * Free Software Foundation; either version 2, or (at your option) any
7  * later version.
8  *
9  * This program is distributed in the hope that it will be useful,
10  * but WITHOUT ANY WARRANTY; without even the implied warranty of
11  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12  * GNU General Public License for more details.
13  *
14  * You should have received a copy of the GNU General Public License
15  * along with this program; if not, write to the Free Software
16  * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307,
17  * USA. */
18 
19 #include "rational.h"
20 #include <cmath>
21 #include "make_array.h"
22 
23 Numeric wigner3j(const Rational j1,const Rational j2,const Rational j3,
24  const Rational m1,const Rational m2,const Rational m3);
25 
26 Numeric wigner6j(const Rational j1,const Rational j2,const Rational j3,
27  const Rational l1,const Rational l2,const Rational l3);
28 
30  Rational Jk_lower, Rational Jl_lower,
31  Rational Jk_upper, Rational Jl_upper);
32 
33 Numeric factorials(const ArrayOfIndex& NomFac, const ArrayOfIndex& DenomFac);
34 
35 void primes(ArrayOfIndex& output, const Index input);
36 void powers(ArrayOfIndex& output, const ArrayOfIndex primes, const Index input);
37 
39 bool triangular_inequality(const Rational x, const Rational y, const Rational z);
ECS_wigner
Numeric ECS_wigner(Rational L, Rational Nl, Rational Nk, Rational Jk_lower, Rational Jl_lower, Rational Jk_upper, Rational Jl_upper)
rational.h
Contains the rational class definition.
Array< Index >
triangle_coefficient
Numeric triangle_coefficient(const Rational a, const Rational b, const Rational c)
wigner3j
Numeric wigner3j(const Rational j1, const Rational j2, const Rational j3, const Rational m1, const Rational m2, const Rational m3)
Definition: wigner_functions.cc:28
Numeric
NUMERIC Numeric
The type to use for all floating point numbers.
Definition: matpack.h:29
make_array.h
Implements the class MakeArray, which is a derived class of Array, allowing explicit initialization.
factorials
Numeric factorials(const ArrayOfIndex &NomFac, const ArrayOfIndex &DenomFac)
wigner6j
Numeric wigner6j(const Rational j1, const Rational j2, const Rational j3, const Rational l1, const Rational l2, const Rational l3)
Definition: wigner_functions.cc:119
primes
void primes(ArrayOfIndex &output, const Index input)
triangular_inequality
bool triangular_inequality(const Rational x, const Rational y, const Rational z)
Index
INDEX Index
The type to use for all integer numbers and indices.
Definition: matpack.h:35
Rational
Definition: rational.h:35
powers
void powers(ArrayOfIndex &output, const ArrayOfIndex primes, const Index input)