Documentation for module spherical_harmonics

Calculate spherical harmonics

source: spherical_harmonics.F
Loading...

Generic procedures:

clebsch_gordon
y_lm
rvy_lm
rry_lm
cvy_lm
ccy_lm

public Subroutines/Functions:

...
SUBROUTINE
clebsch_gordon_init (l)
...
FUNCTION
REAL(dp)
dlegendre (x, l, m)
...
FUNCTION
REAL(dp)
legendre (x, l, m)
...

Generic procedure clebsch_gordon

...

INTEGER,
INTENT(in)
:: l1 × ×
INTEGER,
INTENT(in)
:: m1 × ×
INTEGER,
INTENT(in)
:: l2 × ×
INTEGER,
INTENT(in)
:: m2 × ×
REAL(dp),
INTENT(out)
:: rlm(:,:) ×
REAL(dp),
INTENT(out)
:: clm(:) ×

Generic procedure y_lm

...

REAL(dp),
INTENT(in)
:: r(:,:) × ×
REAL(dp),
INTENT(in)
:: r(:) × ×
REAL(dp),
INTENT(out)
:: y(:) ×
REAL(dp),
INTENT(out)
:: y ×
COMPLEX(dp),
INTENT(out)
:: y(:) ×
COMPLEX(dp),
INTENT(out)
:: y ×
INTEGER,
INTENT(in)
:: l × × × ×
INTEGER,
INTENT(in)
:: m × × × ×

SUBROUTINEclebsch_gordon_deallocate()

...

SUBROUTINEclebsch_gordon_init(l)

...

Arguments:
INTEGER,
INTENT(in)
:: l ...

FUNCTIONdlegendre(x, l, m)

...

Return Value ::
REAL(dp)
Arguments:
REAL(dp),
INTENT(in)
:: x ...
INTEGER,
INTENT(in)
:: l ...
INTEGER,
INTENT(in)
:: m ...

FUNCTIONlegendre(x, l, m)

...

Return Value ::
REAL(dp)
Arguments:
REAL(dp),
INTENT(in)
:: x ...
INTEGER,
INTENT(in)
:: l ...
INTEGER,
INTENT(in)
:: m ...

SUBROUTINEclebsch_gordon_real(l1, m1, l2, m2, rlm)

...

Arguments:
INTEGER,
INTENT(in)
:: l1 ...
INTEGER,
INTENT(in)
:: m1 ...
INTEGER,
INTENT(in)
:: l2 ...
INTEGER,
INTENT(in)
:: m2 ...
REAL(dp),
INTENT(out)
:: rlm(:,:) ...

SUBROUTINEclebsch_gordon_complex(l1, m1, l2, m2, clm)

...

Arguments:
INTEGER,
INTENT(in)
:: l1 ...
INTEGER,
INTENT(in)
:: m1 ...
INTEGER,
INTENT(in)
:: l2 ...
INTEGER,
INTENT(in)
:: m2 ...
REAL(dp),
INTENT(out)
:: clm(:) ...

SUBROUTINErvy_lm(r, y, l, m)

...

Arguments:
REAL(dp),
INTENT(in)
:: r(:,:) ...
REAL(dp),
INTENT(out)
:: y(:) ...
INTEGER,
INTENT(in)
:: l ...
INTEGER,
INTENT(in)
:: m ...

SUBROUTINErry_lm(r, y, l, m)

...

Arguments:
REAL(dp),
INTENT(in)
:: r(:) ...
REAL(dp),
INTENT(out)
:: y ...
INTEGER,
INTENT(in)
:: l ...
INTEGER,
INTENT(in)
:: m ...

SUBROUTINEcvy_lm(r, y, l, m)

...

Arguments:
REAL(dp),
INTENT(in)
:: r(:,:) ...
COMPLEX(dp),
INTENT(out)
:: y(:) ...
INTEGER,
INTENT(in)
:: l ...
INTEGER,
INTENT(in)
:: m ...

SUBROUTINEccy_lm(r, y, l, m)

...

Arguments:
REAL(dp),
INTENT(in)
:: r(:) ...
COMPLEX(dp),
INTENT(out)
:: y ...
INTEGER,
INTENT(in)
:: l ...
INTEGER,
INTENT(in)
:: m ...