- Timestamp:
- Oct 11, 2015, 7:11:38 AM (9 years ago)
- Branches:
- Action_Thermostats, Add_AtomRandomPerturbation, Add_FitFragmentPartialChargesAction, Add_RotateAroundBondAction, Add_SelectAtomByNameAction, Added_ParseSaveFragmentResults, AddingActions_SaveParseParticleParameters, Adding_Graph_to_ChangeBondActions, Adding_MD_integration_tests, Adding_ParticleName_to_Atom, Adding_StructOpt_integration_tests, AtomFragments, Automaking_mpqc_open, AutomationFragmentation_failures, Candidate_v1.5.4, Candidate_v1.6.0, Candidate_v1.6.1, ChangeBugEmailaddress, ChangingTestPorts, ChemicalSpaceEvaluator, CombiningParticlePotentialParsing, Combining_Subpackages, Debian_Package_split, Debian_package_split_molecuildergui_only, Disabling_MemDebug, Docu_Python_wait, EmpiricalPotential_contain_HomologyGraph, EmpiricalPotential_contain_HomologyGraph_documentation, Enable_parallel_make_install, Enhance_userguide, Enhanced_StructuralOptimization, Enhanced_StructuralOptimization_continued, Example_ManyWaysToTranslateAtom, Exclude_Hydrogens_annealWithBondGraph, FitPartialCharges_GlobalError, Fix_BoundInBox_CenterInBox_MoleculeActions, Fix_ChargeSampling_PBC, Fix_ChronosMutex, Fix_FitPartialCharges, Fix_FitPotential_needs_atomicnumbers, Fix_ForceAnnealing, Fix_IndependentFragmentGrids, Fix_ParseParticles, Fix_ParseParticles_split_forward_backward_Actions, Fix_PopActions, Fix_QtFragmentList_sorted_selection, Fix_Restrictedkeyset_FragmentMolecule, Fix_StatusMsg, Fix_StepWorldTime_single_argument, Fix_Verbose_Codepatterns, Fix_fitting_potentials, Fixes, ForceAnnealing_goodresults, ForceAnnealing_oldresults, ForceAnnealing_tocheck, ForceAnnealing_with_BondGraph, ForceAnnealing_with_BondGraph_continued, ForceAnnealing_with_BondGraph_continued_betteresults, ForceAnnealing_with_BondGraph_contraction-expansion, FragmentAction_writes_AtomFragments, FragmentMolecule_checks_bonddegrees, GeometryObjects, Gui_Fixes, Gui_displays_atomic_force_velocity, ImplicitCharges, IndependentFragmentGrids, IndependentFragmentGrids_IndividualZeroInstances, IndependentFragmentGrids_IntegrationTest, IndependentFragmentGrids_Sole_NN_Calculation, JobMarket_RobustOnKillsSegFaults, JobMarket_StableWorkerPool, JobMarket_unresolvable_hostname_fix, MoreRobust_FragmentAutomation, ODR_violation_mpqc_open, PartialCharges_OrthogonalSummation, PdbParser_setsAtomName, PythonUI_with_named_parameters, QtGui_reactivate_TimeChanged_changes, Recreated_GuiChecks, Rewrite_FitPartialCharges, RotateToPrincipalAxisSystem_UndoRedo, SaturateAtoms_findBestMatching, SaturateAtoms_singleDegree, StoppableMakroAction, Subpackage_CodePatterns, Subpackage_JobMarket, Subpackage_LinearAlgebra, Subpackage_levmar, Subpackage_mpqc_open, Subpackage_vmg, Switchable_LogView, ThirdParty_MPQC_rebuilt_buildsystem, TrajectoryDependenant_MaxOrder, TremoloParser_IncreasedPrecision, TremoloParser_MultipleTimesteps, TremoloParser_setsAtomName, Ubuntu_1604_changes, stable
- Children:
- 4f8079
- Parents:
- 6c30ab
- git-author:
- Frederik Heber <heber@…> (09/10/15 14:41:24)
- git-committer:
- Frederik Heber <heber@…> (10/11/15 07:11:38)
- Location:
- src/Parser
- Files:
-
- 4 edited
Legend:
- Unmodified
- Added
- Removed
-
src/Parser/MpqcParser.cpp
r6c30ab re3c4c5 309 309 *file << "% Created by MoleCuilder" << endl; 310 310 *file << "mpqc: (" << endl; 311 *file << "\tcheckpoint = no" << endl; 311 312 *file << "\tsavestate = " << getParams().getParameter(MpqcParser_Parameters::savestateParam) << endl; 312 313 *file << "\tdo_gradient = " << getParams().getParameter(MpqcParser_Parameters::do_gradientParam) << endl; … … 374 375 ELOG(0, "Unknown level of theory requested for MPQC output file."); 375 376 } 377 const std::string jobtype = getParams().getParameter(MpqcParser_Parameters::jobtypeParam); 378 if (jobtype == getParams().getJobtypeName(MpqcParser_Parameters::Optimization)) { 379 *file << "\t% optimizer object for the molecular geometry" << endl; 380 *file << "\topt<QNewtonOpt>: (" << endl; 381 *file << "\t\tfunction = $..:mole" << endl; 382 *file << "\t\tupdate<BFGSUpdate>: ()" << endl; 383 *file << "\t\tconvergence<MolEnergyConvergence>: (" << endl; 384 *file << "\t\t\tcartesian = yes" << endl; 385 *file << "\t\t\tenergy = $..:..:mole" << endl; 386 *file << "\t\t)" << endl; 387 *file << "\t)" << endl; 388 } 376 389 *file << ")" << endl; 377 390 *file << "molecule<Molecule>: (" << endl; -
src/Parser/MpqcParser_Parameters.cpp
r6c30ab re3c4c5 69 69 ParamNames[integrationParam] = "integration"; 70 70 ParamNames[theoryParam] = "theory"; 71 ParamNames[jobtypeParam] = "jobtype"; 71 72 } 72 73 … … 87 88 //InvertMap<TheoryNamesType,TheoryLookupType>(TheoryNames,TheoryLookup); 88 89 90 // create Jobs parameter 91 { 92 ValidJobtypes.clear(); 93 ValidJobtypes.resize(unknownJob); 94 ValidJobtypes[Default]="Default"; 95 ValidJobtypes[Optimization]="Optimization"; 96 appendParameter( 97 new Parameter<std::string>( 98 ParamNames[jobtypeParam], 99 ValidJobtypes, 100 ValidJobtypes[Default])); 101 } 102 89 103 // create integration parameter 90 104 { … … 177 191 } 178 192 193 /** Getter for name of a specific Parameter. 194 * 195 * @param param index among enum Jobtype 196 * @return name of the desired Jobtype 197 */ 198 const std::string &MpqcParser_Parameters::getJobtypeName(const enum Jobtype jobtype) const 199 { 200 return ValidJobtypes[jobtype]; 201 } 202 179 203 /** Getter for the name of specific of IntegrationMethod. 180 204 * -
src/Parser/MpqcParser_Parameters.hpp
r6c30ab re3c4c5 58 58 integrationParam,//!< integrationParam, integration method to use in MBPT2 R12 59 59 theoryParam, //!< theoryParam, level of theory to use 60 jobtypeParam, //!< jobtypeParam, job type to use 60 61 unknownParam}; //!< unknownParam, designates an unknown parameter 61 62 … … 69 70 MBPT2_R12, //!< Moeller Plesset Perturbation Theory second order with R12 integral 70 71 unknownTheory //!< designates an unknown theory 72 }; 73 74 /** Enumeration of all known jobtypes. 75 * 76 */ 77 enum Jobtype { 78 Default, //!< standard energy and force calculation 79 Optimization, //!< additional optimization of geometry 80 unknownJob //!< designates an unknown job 71 81 }; 72 82 … … 93 103 const std::string &getParameterName(const enum Parameters param) const; 94 104 const std::string &getTheoryName(const enum Theory theory) const; 105 const std::string &getJobtypeName(const enum Jobtype jobtype) const; 95 106 const std::string &getIntegrationMethodName(const enum IntegrationMethod integration) const; 96 107 … … 99 110 //!> vector with all available theories in same order as enum Theory. 100 111 std::vector<std::string> ValidTheories; 112 113 //!> vector with all available jobtypes in same order as enum Jobs. 114 std::vector<std::string> ValidJobtypes; 101 115 102 116 //!> vector with all available integration methods in same order as enum IntegrationMethod. -
src/Parser/unittests/ParserMpqcUnitTest.cpp
r6c30ab re3c4c5 63 63 static string waterMpqc_CLHF ="% Created by MoleCuilder\n\ 64 64 mpqc: (\n\ 65 \tcheckpoint = no\n\ 65 66 \tsavestate = no\n\ 66 67 \tdo_gradient = yes\n\ … … 86 87 static string waterMpqc_CLKS ="% Created by MoleCuilder\n\ 87 88 mpqc: (\n\ 89 \tcheckpoint = no\n\ 88 90 \tsavestate = no\n\ 89 91 \tdo_gradient = yes\n\ … … 110 112 static string waterMpqc_MBPT2 ="% Created by MoleCuilder\n\ 111 113 mpqc: (\n\ 114 \tcheckpoint = no\n\ 112 115 \tsavestate = no\n\ 113 116 \tdo_gradient = yes\n\ … … 138 141 static string waterMpqc_MBPT2_R12 ="% Created by MoleCuilder\n\ 139 142 mpqc: (\n\ 143 \tcheckpoint = no\n\ 140 144 \tsavestate = no\n\ 141 145 \tdo_gradient = yes\n\
Note:
See TracChangeset
for help on using the changeset viewer.