MPQC 3.0.0-alpha
Loading...
Searching...
No Matches
molcas_pt2r12.h
1//
2// molcas_pt2r12.h
3//
4// Copyright (C) 2014 Chong Peng
5//
6// Authors: Chong Peng
7// Maintainer: Chong Peng and Edward Valeev
8//
9// This file is part of the MPQC Toolkit.
10//
11// The MPQC Toolkit is free software; you can redistribute it and/or modify
12// it under the terms of the GNU Library General Public License as published by
13// the Free Software Foundation; either version 2, or (at your option)
14// any later version.
15//
16// The MPQC Toolkit is distributed in the hope that it will be useful,
17// but WITHOUT ANY WARRANTY; without even the implied warranty of
18// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
19// GNU Library General Public License for more details.
20//
21// You should have received a copy of the GNU Library General Public License
22// along with the MPQC Toolkit; see the file COPYING.LIB. If not, write to
23// the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.
24//
25// The U.S. Government is granted a limited license as per AL 91-7.
26//
27
28
29#ifndef _mpqc_src_lib_chemistry_qc_mbptr12_molcas_pt2r12_h
30#define _mpqc_src_lib_chemistry_qc_mbptr12_molcas_pt2r12_h
31
32#include <chemistry/qc/mbptr12/extern_pt2r12.h>
33
34namespace sc{
35 // //////////////////////////////////////////////////////////////////////
36
97 public:
98
169
170 void compute();
171
174
175 // run molcas input file
176 void run_molcas();
177
180
184
187
189 void purge();
190
192 void obsolete();
193
195 int value_implemented() const { return 1; }
196
198 void print(std::ostream& os=ExEnv::out0()) const;
199
200 private:
202 std::string prefix_;
204 std::string xyz_file_;
206 std::string molcas_;
208 std::string molcas_input_;
210 std::string molcas_options_;
212 std::vector<int> inactive_;
214 std::vector<int> active_;
216 std::vector<int> active_electron_;
218 std::string symmetry_;
219
220 double rasscf_energy_;
221 double caspt2_energy_;
222
224 Ref<ExternPT2R12> extern_pt2r12_;
226 Ref<AssignedKeyVal> extern_pt2r12_akv_;
227
228 static ClassDesc class_desc_;
229 };
230} // end of namespace sc
231
232#endif //end of header guard
This class is used to contain information about classes.
Definition class.h:147
static std::ostream & out0()
Return an ostream that writes from node 0.
The MolcasPT2R12 class is a interface between Molcas and MPQC to perform CASPT2F12 calculations.
Definition molcas_pt2r12.h:96
void read_energy()
read molcas log file and get the energy needed
int value_implemented() const
set value implemented
Definition molcas_pt2r12.h:195
MolcasPT2R12(const Ref< KeyVal > &kv)
The KeyVal constructor reads the following keywords:
void print(std::ostream &os=ExEnv::out0()) const
print function
void compute()
Recompute at least the results that have compute true and are not already computed.
void purge()
purge
void restore_molcas_input()
restore the original input file after change of symmetry
void initialize()
initialize values needed for ExternPT2R12
void convert_c1_symmetry()
convert input to c1 symmetry when the symmetry from MPQC is different than original symmetry
void obsolete()
obsolete
The MolecularEnergy abstract class inherits from the Function class.
Definition energy.h:54
A template class that maintains references counts.
Definition ref.h:361
Contains all MPQC code up to version 3.
Definition mpqcin.h:14

Generated at Wed Sep 25 2024 02:45:29 for MPQC 3.0.0-alpha using the documentation package Doxygen 1.12.0.