- Timestamp:
- Apr 15, 2013, 6:13:22 PM (12 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:
- 658485
- Parents:
- a3427f
- git-author:
- Frederik Heber <heber@…> (04/11/13 11:04:34)
- git-committer:
- Frederik Heber <heber@…> (04/15/13 18:13:22)
- Location:
- src
- Files:
-
- 5 edited
Legend:
- Unmodified
- Added
- Removed
-
src/Actions/FragmentationAction/AnalyseFragmentationResultsAction.cpp
ra3427f r55e1bc 283 283 Action::state_ptr FragmentationAnalyseFragmentationResultsAction::performCall() { 284 284 285 // TODO: Get data and keysets from ResultsContainer285 // if file is given, parse from file into resultscontainer 286 286 FragmentationResultContainer& container = FragmentationResultContainer::getInstance(); 287 if (!params.resultsfile.get().empty()) { 288 boost::filesystem::path resultsfile = params.resultsfile.get(); 289 if (boost::filesystem::exists(resultsfile)) { 290 LOG(1, "INFO: Parsing results from " << resultsfile.string() << "."); 291 std::ifstream returnstream(resultsfile.string().c_str()); 292 if (returnstream.good()) { 293 boost::archive::text_iarchive ia(returnstream); 294 ia >> container; 295 } 296 } else { 297 ELOG(1, "Given file" << resultsfile.string() << " does not exist."); 298 } 299 } 300 301 // get data and keysets from ResultsContainer 287 302 const std::map<JobId_t, MPQCData> &shortrangedata = container.getShortRangeResults(); 288 303 const KeySetsContainer &keysets = container.getKeySets(); 289 304 const KeySetsContainer &forcekeysets = container.getForceKeySets(); 290 305 const bool DoLongrange = container.areFullRangeResultsPresent(); 306 307 if (keysets.KeySets.empty()) { 308 ELOG(2, "There are no results in the container."); 309 return Action::failure; 310 } 291 311 292 312 FragmentationShortRangeResults shortrangeresults(shortrangedata, keysets, forcekeysets); -
src/Actions/FragmentationAction/AnalyseFragmentationResultsAction.def
ra3427f r55e1bc 10 10 11 11 #include "Parameters/Validators/DummyValidator.hpp" 12 #include "Parameters/Validators/Specific/FilePresentValidator.hpp" 12 13 13 14 // i.e. there is an integer with variable name Z that can be found in 14 15 // ValueStorage by the token "Z" -> first column: int, Z, "Z" 15 16 // "undefine" if no parameters are required, use (NOPARAM_DEFAULT) for each (undefined) default value 16 #define paramtypes (boost::filesystem::path) 17 #define paramtokens ("homology-file") 18 #define paramdescriptions ("path to file containing homology container to append to")19 #define paramdefaults (PARAM_DEFAULT("")) 20 #define paramreferences (homology_file) 17 #define paramtypes (boost::filesystem::path)(boost::filesystem::path) 18 #define paramtokens ("homology-file")("fragment-resultfile") 19 #define paramdescriptions ("path to file containing homology container to append to")("parse fragment results from the given file") 20 #define paramdefaults (PARAM_DEFAULT(""))(PARAM_DEFAULT("")) 21 #define paramreferences (homology_file)(resultsfile) 21 22 #define paramvalids \ 23 (DummyValidator< boost::filesystem::path >()) \ 22 24 (DummyValidator< boost::filesystem::path >()) 23 25 -
src/Actions/FragmentationAction/FragmentationAutomationAction.cpp
ra3427f r55e1bc 40 40 41 41 //// include headers that implement a archive in simple text format 42 //#include <boost/archive/text_oarchive.hpp>43 //#include <boost/archive/text_iarchive.hpp>42 #include <boost/archive/text_oarchive.hpp> 43 #include <boost/archive/text_iarchive.hpp> 44 44 45 45 // … … 200 200 FragmentJobQueue::getInstance().clear(); 201 201 202 // if file is given, advise results container to store to file 203 if (!params.resultsfile.get().empty()) { 204 boost::filesystem::path resultsfile = params.resultsfile.get(); 205 std::ofstream returnstream(resultsfile.string().c_str()); 206 if (returnstream.good()) { 207 boost::archive::text_oarchive oa(returnstream); 208 oa << container; 209 } 210 Exitflag += (int)(!returnstream.good()); 211 returnstream.close(); 212 } 213 202 214 return (Exitflag == 0) ? Action::success : Action::failure; 203 215 } -
src/Actions/FragmentationAction/FragmentationAutomationAction.def
ra3427f r55e1bc 18 18 // ValueStorage by the token "Z" -> first column: int, Z, "Z" 19 19 // "undefine" if no parameters are required, use (NOPARAM_DEFAULT) for each (undefined) default value 20 #define paramtypes (std::string)(std::string)(boost::filesystem::path)(unsigned int)(unsigned int)(unsigned int)(bool) 21 #define paramtokens ("server-address")("server-port")("fragment-executable")("grid-level")("near-field-cells")("interpolation-degree")("DoLongrange") 22 #define paramdescriptions ("hostname of server")("controller port of server")("executable to launch on clients")("resolution of multigrid")("number of cells used in smearing out core charge")("interpolation degree for getting the nuclei potential from the grid")("whether to calculate long-range contributions") 23 #define paramdefaults (PARAM_DEFAULT("127.0.0.1"))(NOPARAM_DEFAULT)(PARAM_DEFAULT("mpqc"))(PARAM_DEFAULT(5))(PARAM_DEFAULT(3))(PARAM_DEFAULT(3))(PARAM_DEFAULT("0")) 24 #define paramreferences (host)(port)(executable)(level)(near_field_cells)(interpolation_degree)(DoLongrange) 20 #define paramtypes (std::string)(std::string)(boost::filesystem::path)(unsigned int)(unsigned int)(unsigned int)(bool)(boost::filesystem::path) 21 #define paramtokens ("server-address")("server-port")("fragment-executable")("grid-level")("near-field-cells")("interpolation-degree")("DoLongrange")("fragment-resultfile") 22 #define paramdescriptions ("hostname of server")("controller port of server")("executable to launch on clients")("resolution of multigrid")("number of cells used in smearing out core charge")("interpolation degree for getting the nuclei potential from the grid")("whether to calculate long-range contributions")("parse fragment results from the given file") 23 #define paramdefaults (PARAM_DEFAULT("127.0.0.1"))(NOPARAM_DEFAULT)(PARAM_DEFAULT("mpqc"))(PARAM_DEFAULT(5))(PARAM_DEFAULT(3))(PARAM_DEFAULT(3))(PARAM_DEFAULT("0"))(PARAM_DEFAULT("")) 24 #define paramreferences (host)(port)(executable)(level)(near_field_cells)(interpolation_degree)(DoLongrange)(resultsfile) 25 25 #define paramvalids \ 26 26 (DummyValidator< std::string >()) \ … … 30 30 (RangeValidator< unsigned int >(1, 20)) \ 31 31 (RangeValidator< unsigned int >(1, 10)) \ 32 (DummyValidator< bool >()) 32 (DummyValidator< bool >()) \ 33 (DummyValidator< boost::filesystem::path >()) 33 34 34 35 #undef statetypes -
src/Fragmentation/Summation/Containers/FragmentationResultContainer.hpp
ra3427f r55e1bc 14 14 #endif 15 15 16 #include <boost/serialization/access.hpp> 16 17 #include "CodePatterns/Singleton.hpp" 17 18 19 #include <boost/filesystem/path.hpp> 18 20 #include <map> 19 21 … … 34 36 * 35 37 * The idea is that we can play around with results without having to recalculate 36 * results in between. Hence, we serialize the FragmentResult into this37 * container which can also be filled from file.38 * results in between. Hence, we place results into this container which we may 39 * full serialize. 38 40 */ 39 41 class FragmentationResultContainer: public Singleton<FragmentationResultContainer> … … 128 130 std::map<JobId_t, VMGData> longrangedata; 129 131 #endif 132 133 friend class boost::serialization::access; 134 // serialization 135 template <typename Archive> 136 void serialize(Archive& ar, const unsigned int version) 137 { 138 ar & ResultsType; 139 ar & keysets; 140 ar & forcekeysets; 141 ar & shortrangedata; 142 #ifdef HAVE_VMG 143 ar & longrangedata; 144 #endif 145 } 130 146 }; 131 147
Note:
See TracChangeset
for help on using the changeset viewer.