21#ifndef _libint2_src_lib_libint_initialize_h_
22#define _libint2_src_lib_libint_initialize_h_
24#include <libint2/util/cxxstd.h>
25#if LIBINT2_CPLUSPLUS_STD < 2011
26#error "Libint2 C++ API requires C++11 support"
30#include <libint2/deriv_map.h>
31#include <libint2/shgshell_ordering.h>
32#include <libint2/util/deprecated.h>
33#include <libint2/util/singleton.h>
44 libint2_static_init();
45 libint2::DerivMapGenerator::initialize();
50inline std::atomic<bool>& verbose_accessor() {
51 static std::atomic<bool> value{
false};
54inline std::ostream*& verbose_stream_accessor() {
55 static std::ostream* value = &std::clog;
58inline std::atomic<SHGShellOrdering>& solid_harmonics_ordering_accessor() {
59 static std::atomic<SHGShellOrdering> value{
60 libint2::SHGShellOrdering_Standard};
69 using namespace detail;
70 return managed_singleton<__initializer>::instance_exists();
78 using namespace detail;
79 LIBINT_MAYBE_UNUSED __initializer* x =
80 managed_singleton<__initializer>::instance();
100 using namespace detail;
101 verbose_stream_accessor() = &os;
107 using namespace detail;
108 managed_singleton<__initializer>::delete_instance();
109 verbose_accessor() =
true;
110 verbose_stream_accessor() = &std::clog;
111 solid_harmonics_ordering_accessor() = libint2::SHGShellOrdering_Standard;
118 detail::solid_harmonics_ordering_accessor() = sho;
123 return detail::solid_harmonics_ordering_accessor();
129 return *detail::verbose_stream_accessor();
137 return detail::verbose_accessor();
Defaults definitions for various parameters assumed by Libint.
Definition algebra.cc:24
void initialize(bool verbose=false)
initializes the libint library if not currently initialized, no-op otherwise
Definition initialize.h:76
void set_solid_harmonics_ordering(SHGShellOrdering sho)
Setter for the SHGShellOrdering.
Definition initialize.h:117
std::ostream & verbose_stream()
Accessor for the disgnostics stream.
Definition initialize.h:128
bool initialized()
checks if the libint has been initialized.
Definition initialize.h:68
bool verbose()
Accessor for the verbose flag.
Definition initialize.h:135
void finalize()
finalizes the libint library.
Definition initialize.h:105
SHGShellOrdering solid_harmonics_ordering()
Accessor for the SHGShellOrdering.
Definition initialize.h:122
Definition initialize.h:42