seams-core v2.6.0
libyodaLib, the C++ engine of d-SEAMS
☾
Toggle main menu visibility
Loading...
Searching...
No Matches
sphericart_ylm.hpp
Go to the documentation of this file.
1
#ifndef SEAMS_SPHERICART_YLM_H_
2
#define SEAMS_SPHERICART_YLM_H_
3
4
// Sphericart (Bigi, Fraux, Browning, Ceriotti, J. Chem. Phys. 159,
5
// 064802 (2023); 10.1063/5.0156307) evaluates real Y_lm from
6
// Cartesian coordinates. Host Steinhardt pass 1 can batch every bond.
7
// The OpenMP-target kernel keeps the closed-form ylmAll.
8
9
namespace
seams
{
10
namespace
sphericart_ylm
{
11
12
bool
available
();
13
14
// xyz is nVec * 3 Cartesian components (need not be unit). ylmOut is
15
// nVec * (2*orderL+1) * 2 interleaved complex values in the same m
16
// order as ylmAll (m = -l .. +l). Real spherical harmonics are packed
17
// into the real parts; imaginary parts are zero. Returns 0 on success.
18
int
ylmCartesian
(
int
orderL,
const
double
*xyz,
int
nVec,
double
*ylmOut);
19
20
}
// namespace sphericart_ylm
21
}
// namespace seams
22
23
#endif
seams::sphericart_ylm
Definition
sphericart_ylm.hpp:10
seams::sphericart_ylm::ylmCartesian
int ylmCartesian(int orderL, const double *xyz, int nVec, double *ylmOut)
seams::sphericart_ylm::available
bool available()
seams
Definition
seams_config.hpp:27
src
include
internal
sphericart_ylm.hpp
Generated by
1.17.0
Generated by
Doxygen 1.17.0
Analytics by
Antics
provided by
TurtleTech ehf