source: ThirdParty/mpqc_open/src/lib/chemistry/qc/psi/psiexenv.h@ 72461c

Action_Thermostats Add_AtomRandomPerturbation Add_RotateAroundBondAction Add_SelectAtomByNameAction Adding_Graph_to_ChangeBondActions Adding_MD_integration_tests Adding_StructOpt_integration_tests AutomationFragmentation_failures Candidate_v1.6.0 Candidate_v1.6.1 ChangeBugEmailaddress ChangingTestPorts ChemicalSpaceEvaluator Combining_Subpackages Debian_Package_split Debian_package_split_molecuildergui_only Disabling_MemDebug Docu_Python_wait EmpiricalPotential_contain_HomologyGraph_documentation Enable_parallel_make_install Enhance_userguide Enhanced_StructuralOptimization Enhanced_StructuralOptimization_continued Example_ManyWaysToTranslateAtom Exclude_Hydrogens_annealWithBondGraph FitPartialCharges_GlobalError Fix_ChronosMutex Fix_StatusMsg Fix_StepWorldTime_single_argument Fix_Verbose_Codepatterns ForceAnnealing_goodresults ForceAnnealing_oldresults ForceAnnealing_tocheck ForceAnnealing_with_BondGraph ForceAnnealing_with_BondGraph_continued ForceAnnealing_with_BondGraph_continued_betteresults ForceAnnealing_with_BondGraph_contraction-expansion GeometryObjects Gui_displays_atomic_force_velocity IndependentFragmentGrids_IntegrationTest JobMarket_RobustOnKillsSegFaults JobMarket_StableWorkerPool JobMarket_unresolvable_hostname_fix ODR_violation_mpqc_open PartialCharges_OrthogonalSummation PythonUI_with_named_parameters QtGui_reactivate_TimeChanged_changes Recreated_GuiChecks RotateToPrincipalAxisSystem_UndoRedo StoppableMakroAction Subpackage_levmar Subpackage_vmg ThirdParty_MPQC_rebuilt_buildsystem TremoloParser_IncreasedPrecision TremoloParser_MultipleTimesteps Ubuntu_1604_changes stable
Last change on this file since 72461c was 860145, checked in by Frederik Heber <heber@…>, 8 years ago

Merge commit '0b990dfaa8c6007a996d030163a25f7f5fc8a7e7' as 'ThirdParty/mpqc_open'

  • Property mode set to 100644
File size: 2.0 KB
Line 
1
2#ifdef __GNUC__
3#pragma interface
4#endif
5
6#ifndef _chemistry_qc_psi_exenv_h
7#define _chemistry_qc_psi_exenv_h
8
9using namespace std;
10
11#include <string>
12#include <chemistry/qc/psi/psiinput.h>
13#include <chemistry/qc/psi/psifile11.h>
14
15namespace sc {
16
17/// PsiExEnv specifies a Psi calculation
18
19class PsiExEnv: public DescribedClass {
20
21 // Static Psi info
22 static string inputname_;
23 static string file11name_;
24 static int ckptfile_;
25
26 // Defaults
27 static string defaultpsiprefix_;
28 static string defaultcwd_;
29 static string defaultfileprefix_;
30 static string defaultstdout_;
31 static string defaultstderr_;
32
33 // Calculation-specific info
34 string psiprefix_;
35 string cwd_; // working directory where all files will be placed
36 string fileprefix_;
37 string stdout_; // Standard output of psi modules
38 string stderr_; // Standard error of psi modules
39 int nscratch_;
40 string *scratch_;
41 Ref<PsiInput> psiinput_;
42 Ref<PsiFile11> psifile11_;
43
44 // Add the following to the PATH environmental variable
45 void add_to_path(const string &);
46
47 public:
48 PsiExEnv(const Ref<KeyVal>&);
49 PsiExEnv(char *cwd, char *fileprefix, int nscratch, char **scratch);
50 ~PsiExEnv();
51
52 /// Returns the PsiInput object which PsiExEnv uses
53 Ref<PsiInput> get_psi_input() const { return psiinput_;};
54 /// Returns the PsiFile11 object which PsiExEnv uses
55 Ref<PsiFile11> get_psi_file11() const { return psifile11_;};
56
57 /// Executes Psi input+driver
58 int run_psi();
59 /// Executes a Psi module
60 int run_psi_module(char *);
61
62 /// Returns current working directory
63 string get_cwd() const { return cwd_;};
64 /// Returns the Psi file prefix
65 string get_fileprefix() const { return fileprefix_; };
66 /// Returns the number of scratch locations
67 int get_nscratch() const { return nscratch_; };
68 /// Returns the ith scratch location
69 string get_scratch(int i) const { return scratch_[i]; };
70
71 void print(std::ostream&o=ExEnv::out0()) const;
72};
73
74}
75
76#endif
Note: See TracBrowser for help on using the repository browser.