|
| Shell (const Shell &)=default |
|
| Shell (Shell &&other) noexcept |
|
Shell & | operator= (const Shell &)=default |
|
Shell & | operator= (Shell &&other) noexcept |
|
| Shell (svector< real_t > _alpha, svector< Contraction > _contr, std::array< real_t, 3 > _O) |
|
Shell & | move (std::array< real_t, 3 > new_origin) |
|
size_t | cartesian_size () const |
|
size_t | size () const |
|
size_t | ncontr () const |
|
size_t | nprim () const |
|
bool | operator== (const Shell &other) const |
|
bool | operator!= (const Shell &other) const |
|
real_t | coeff_normalized (size_t c, size_t p) const |
|
generally-contracted Solid-Harmonic/Cartesion Gaussian Shell
A simple-to-use Gaussian shell. Here's an example of how to create an s+p shell of the STO-3G basis on the oxygen atom located at the origin.
* auto s = Shell{
* {5.033151300, 1.169596100, 0.380389000},
* {
* {0, false, {-0.09996723, 0.39951283, 0.70011547}},
* {1, false, {0.15591627, 0.60768372, 0.39195739}}
* },
* {{0.0, 0.0, 0.0}}
* };
*
- Note
- The contraction coefficients correspond to unity-normalized primitives. EMSL Gaussian Basis Set Database, as well as basis set libraries embedded into most quantum chemistry programs use this convention. However, coefficients are automatically converted internally to refer to normalization-free primitives before computing integrals (see
Shell::renorm()
).