28 #ifndef _chemistry_qc_psi_exenv_h
29 #define _chemistry_qc_psi_exenv_h
33 #include <libpsio/psio.hpp>
34 #include <libchkpt/chkpt.hpp>
35 #include <chemistry/qc/psi/psiinput.h>
36 #include <chemistry/qc/psi/psifile11.h>
37 #include <chemistry/qc/wfn/spin.h>
50 static std::string defaultinputname_;
51 static std::string defaultoutputname_;
52 static std::string file11name_;
56 static std::string defaultpsiprefix_;
57 static std::string defaultcwd_;
58 static std::string defaultfileprefix_;
59 static std::string defaultstdout_;
60 static std::string defaultstderr_;
63 std::string psiprefix_;
65 std::string inputname_;
66 std::string outputname_;
67 std::string fileprefix_;
71 std::vector<std::string> scratch_;
82 void add_to_path(
const std::string &);
129 void run_psi(
bool skip_input =
false);
131 void run_psi_module(
const char * module,
const std::vector<std::string>& args = std::vector<std::string>());
137 const std::string&
get_cwd()
const {
return cwd_;};
143 const std::string&
get_scratch(
int i)
const {
return scratch_[i]; };
146 psi::PSIO&
psio() {
return psio_; }
165 int debug()
const {
return debug_; }
174 bool spin_restricted =
true)
const;
177 bool spin_restricted =
true)
const;
179 std::vector< std::pair<unsigned int,unsigned int> >
shell_map()
const;
181 std::vector<unsigned int>
ao_map()
const;
Ref< PsiFile11 > get_psi_file11()
Creates the PsiFile11 object which PsiExEnv uses.
const std::string & get_scratch(int i) const
Returns the ith scratch location.
Definition: psiexenv.h:143
bool have_spin_unrestricted_mos() const
are there spin-specific orbitals?
Ref< PsiInput > get_psi_input()
Creates the PsiInput object which PsiExEnv uses.
void print(std::ostream &o=ExEnv::out0()) const
Print the object.
void keep_output()
this will cause psi driver to keep the output next time it's run. Must be called every time to preven...
The RefSCMatrix class is a smart pointer to an SCMatrix specialization.
Definition: matrix.h:135
A template class that maintains references counts.
Definition: ref.h:361
RefDiagSCMatrix evals(SpinCase1 s, bool spin_restricted=true) const
read the orbital energies for spincase s and return as a diagonal matrix
PsiChkpt know to read data from Psi checkpoint file and convert it to conform to the representations ...
Definition: psiexenv.h:157
The RefDiagSCMatrix class is a smart pointer to an DiagSCMatrix specialization.
Definition: matrix.h:389
std::vector< std::pair< unsigned int, unsigned int > > shell_map() const
Returns a map from shells in Psi3 basis to std::pair<shell,contraction> in MPQC basis (note that Psi3...
int get_nscratch() const
Returns the number of scratch locations.
Definition: psiexenv.h:141
std::vector< unsigned int > ao_map() const
Returns a map from AO in Psi3 basis to AO in MPQC basis.
PsiChkpt(const Ref< PsiExEnv > &exenv, const Ref< Integral > &integral, int debug)
Assume environment described by exenv; integrals specifies the basis set and the factory with convent...
psi::Chkpt & chkpt()
Returns an instance of psi::Chkpt.
Ref< PsiInput > psi_input() const
Returns the PsiInput object which PsiExEnv uses.
Definition: psiexenv.h:118
RefSCMatrix coefs(SpinCase1 s, bool spin_restricted=true) const
read the orbital coefficients for spincase s
void run_psi_module(const char *module, const std::vector< std::string > &args=std::vector< std::string >())
Executes a Psi module using a system call. Throws if psi fails.
Classes which need runtime information about themselves and their relationship to other classes can v...
Definition: class.h:233
const std::string & get_cwd() const
Returns current working directory.
Definition: psiexenv.h:137
static std::ostream & out0()
Return an ostream that writes from node 0.
Ref< PsiFile11 > psi_file11() const
Returns the PsiFile11 object which PsiExEnv uses.
Definition: psiexenv.h:120
const std::string & get_fileprefix() const
Returns the Psi file prefix.
Definition: psiexenv.h:139
PsiExEnv specifies a Psi execution environment.
Definition: psiexenv.h:42
psi::PSIO & psio()
Returns an instance of psi::PSIO.
Definition: psiexenv.h:146
The base class for all reference counted objects.
Definition: ref.h:192
void run_psi(bool skip_input=false)
Executes Psi input+driver.
Contains all MPQC code up to version 3.
Definition: mpqcin.h:14
void run_psiclean(bool fullclean=true)
cleans Psi scratch files using the same approach as psiclean.
Generated at Sun Jan 26 2020 23:23:59 for MPQC
3.0.0-alpha using the documentation package Doxygen
1.8.16.