From: Edward V. <ev...@us...> - 2006-04-21 00:36:30
|
Update of /cvsroot/mpqc/mpqc/src/lib/chemistry/qc/mbptr12 In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv30544 Modified Files: Tag: Libint2-branch Makefile compute_energy_a.cc linearr12.h mbptr12.cc mbptr12.h mp2r12_energy.cc mp2r12_energy_compute.cc r12int_eval.cc r12int_eval.h Added Files: Tag: Libint2-branch approxApp.cc Log Message: Added code for approximation A'' (exchange is dropped completely from H^{0} operator). specifying stdapprox=C means only MP2-F12/C energy will be computed. Index: mp2r12_energy.cc =================================================================== RCS file: /cvsroot/mpqc/mpqc/src/lib/chemistry/qc/mbptr12/mp2r12_energy.cc,v retrieving revision 1.11.2.17 retrieving revision 1.11.2.18 diff -u -d -r1.11.2.17 -r1.11.2.18 --- mp2r12_energy.cc 20 Apr 2006 19:15:44 -0000 1.11.2.17 +++ mp2r12_energy.cc 21 Apr 2006 00:36:24 -0000 1.11.2.18 @@ -445,24 +445,14 @@ [...20 lines suppressed...] + case LinearR12::StdApprox_App: SA_str = "A''"; break; + case LinearR12::StdApprox_B: SA_str = "B"; break; + case LinearR12::StdApprox_C: SA_str = "C"; break; default: - throw std::runtime_error("MP2R12Energy::print_pair_energies -- stdapprox_ is not valid"); + throw InputError("MP2R12Energy::print_pair_energies -- stdapprox_ is not valid", + __FILE__,__LINE__); } const Ref<R12IntEvalInfo> r12info = r12eval_->r12info(); Index: linearr12.h =================================================================== RCS file: /cvsroot/mpqc/mpqc/src/lib/chemistry/qc/mbptr12/linearr12.h,v retrieving revision 1.5.2.11 retrieving revision 1.5.2.12 diff -u -d -r1.5.2.11 -r1.5.2.12 --- linearr12.h 20 Apr 2006 19:15:44 -0000 1.5.2.11 +++ linearr12.h 21 Apr 2006 00:36:24 -0000 1.5.2.12 @@ -192,8 +192,9 @@ Ansatz_3 = 3}; enum StandardApproximation {StdApprox_A = 0, StdApprox_Ap = 1, - StdApprox_B = 2, - StdApprox_C = 3}; + StdApprox_App = 2, + StdApprox_B = 3, + StdApprox_C = 4}; enum ABSMethod {ABS_ABS = 0, ABS_ABSPlus = 1, ABS_CABS = 2, Index: Makefile =================================================================== RCS file: /cvsroot/mpqc/mpqc/src/lib/chemistry/qc/mbptr12/Makefile,v retrieving revision 1.22.2.16 retrieving revision 1.22.2.17 diff -u -d -r1.22.2.16 -r1.22.2.17 --- Makefile 27 Mar 2006 22:58:15 -0000 1.22.2.16 +++ Makefile 21 Apr 2006 00:36:24 -0000 1.22.2.17 @@ -55,7 +55,7 @@ twoparticlecontraction.cc spin.cc \ mp2r12_energy_compute.cc mp2_pair_energies.cc \ ebc_contribs.cc gbc_contribs.cc approxB.cc Xgen.cc FxFgen.cc \ - creator.cc approxC.cc + creator.cc approxC.cc approxApp.cc ifeq ($(HAVE_MPIIO),yes) CXXSRCS += r12ia_mpiiofile.cc Index: compute_energy_a.cc =================================================================== RCS file: /cvsroot/mpqc/mpqc/src/lib/chemistry/qc/mbptr12/compute_energy_a.cc,v retrieving revision 1.20.2.12 retrieving revision 1.20.2.13 diff -u -d -r1.20.2.12 -r1.20.2.13 --- compute_energy_a.cc 20 Apr 2006 19:15:44 -0000 1.20.2.12 +++ compute_energy_a.cc 21 Apr 2006 00:36:24 -0000 1.20.2.13 @@ -39,7 +39,7 @@ using namespace sc; [...141 lines suppressed...] + static_cast<SpinCase2>(sc2), + twopdm_grid_); + } + } +#endif + + return; } Index: r12int_eval.cc =================================================================== RCS file: /cvsroot/mpqc/mpqc/src/lib/chemistry/qc/mbptr12/r12int_eval.cc,v retrieving revision 1.17.2.62 retrieving revision 1.17.2.63 diff -u -d -r1.17.2.62 -r1.17.2.63 --- r12int_eval.cc 20 Apr 2006 19:15:45 -0000 1.17.2.62 +++ r12int_eval.cc 21 Apr 2006 00:36:24 -0000 1.17.2.63 @@ -149,8 +149,7 @@ V_[s] = local_matrix_kit->matrix(dim_f12_[s],dim_oo_[s]); [...56 lines suppressed...] for(int s=0; s<nspincases2(); s++) @@ -2024,7 +2025,7 @@ occ1_act, r12info()->refinfo()->orbs(spin1), occ2_act, - r12info()->refinfo()->orbs(spin2),0); + r12info()->refinfo()->orbs(spin2),1); fill_container(tform_creator,tforms); } else { Index: r12int_eval.h =================================================================== RCS file: /cvsroot/mpqc/mpqc/src/lib/chemistry/qc/mbptr12/r12int_eval.h,v retrieving revision 1.12.2.34 retrieving revision 1.12.2.35 diff -u -d -r1.12.2.34 -r1.12.2.35 --- r12int_eval.h 20 Apr 2006 19:15:45 -0000 1.12.2.34 +++ r12int_eval.h 21 Apr 2006 00:36:24 -0000 1.12.2.35 @@ -377,6 +377,9 @@ /** Compute B using standard approximation C */ void compute_BC_(); + /** Compute B using standard approximation A'' -- exchange is dropped completely! */ + void compute_BApp_(); + /// Compute dual-basis MP1 energy (contribution from singles to HF energy) void compute_dualEmp1_(); --- NEW FILE: approxApp.cc --- // // approxApp.cc // // Copyright (C) 2006 Edward Valeev // // Author: Edward Valeev <edw...@ch...> // Maintainer: EV // // This file is part of the SC Toolkit. [...127 lines suppressed...] tim_exit("B(app. A'') intermediate"); } //////////////////////////////////////////////////////////////////////////// // Local Variables: // mode: c++ // c-file-style: "CLJ-CONDENSED" // End: Index: mp2r12_energy_compute.cc =================================================================== RCS file: /cvsroot/mpqc/mpqc/src/lib/chemistry/qc/mbptr12/Attic/mp2r12_energy_compute.cc,v retrieving revision 1.1.2.16 retrieving revision 1.1.2.17 diff -u -d -r1.1.2.16 -r1.1.2.17 --- mp2r12_energy_compute.cc 27 Mar 2006 22:58:15 -0000 1.1.2.16 +++ mp2r12_energy_compute.cc 21 Apr 2006 00:36:24 -0000 1.1.2.17 @@ -193,7 +193,8 @@ continue; double fx; - if (stdapprox_ != LinearR12::StdApprox_C) + if (stdapprox_ != LinearR12::StdApprox_C && + stdapprox_ != LinearR12::StdApprox_App) fx = 0.5 * (evals_act_occ1[k] + evals_act_occ2[l] + evals_act_occ1[o] + evals_act_occ2[w] - 2.0*evals_act_occ1[i] - 2.0*evals_act_occ2[j]) * X.get_element(kl,ow); Index: mbptr12.cc =================================================================== RCS file: /cvsroot/mpqc/mpqc/src/lib/chemistry/qc/mbptr12/mbptr12.cc,v retrieving revision 1.27.2.25 retrieving revision 1.27.2.26 diff -u -d -r1.27.2.25 -r1.27.2.26 --- mbptr12.cc 20 Apr 2006 19:15:44 -0000 1.27.2.25 +++ mbptr12.cc 21 Apr 2006 00:36:24 -0000 1.27.2.26 @@ -66,7 +66,9 @@ r12eval_ << SavableState::restore_state(s); [...90 lines suppressed...] @@ -562,7 +572,9 @@ r12eval_ = 0; r12a_energy_ = 0; r12ap_energy_ = 0; + r12app_energy_ = 0; r12b_energy_ = 0; + r12c_energy_ = 0; mp2_corr_energy_ = 0.0; r12_corr_energy_ = 0.0; MBPT2::obsolete(); Index: mbptr12.h =================================================================== RCS file: /cvsroot/mpqc/mpqc/src/lib/chemistry/qc/mbptr12/mbptr12.h,v retrieving revision 1.20.2.15 retrieving revision 1.20.2.16 diff -u -d -r1.20.2.15 -r1.20.2.16 --- mbptr12.h 20 Apr 2006 19:15:44 -0000 1.20.2.15 +++ mbptr12.h 21 Apr 2006 00:36:24 -0000 1.20.2.16 @@ -66,6 +66,7 @@ can be evaluated with the same set of intermediates */ [...26 lines suppressed...] with linear R12 terms in standard approximation B. + This will cause A and A' energies to be computed also. + Only energies can be computed with the MP2-R12/B method. <dt><tt>C</tt><dd> Use second order Møller-Plesset perturbation theory with linear R12 terms in standard approximation C. + Only energies can be computed with the MP2-R12/C method. </dl> |