Changeset 0ea063 for src


Ignore:
Timestamp:
Oct 19, 2014, 5:08:51 PM (10 years ago)
Author:
Frederik Heber <heber@…>
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:
9e1bfb
Parents:
f1eabd
git-author:
Frederik Heber <heber@…> (09/12/14 07:54:12)
git-committer:
Frederik Heber <heber@…> (10/19/14 17:08:51)
Message:

Extracted SavePotentialsAction.

  • PotentialTrainer::StorePotentials removed.
  • Fit...Actions do not store anymore.
  • TESTFIX: potential regression tests now use save-potentials and compare against stored file.
Location:
src
Files:
3 added
8 edited

Legend:

Unmodified
Added
Removed
  • TabularUnified src/Actions/GlobalListOfActions.hpp

    rf1eabd r0ea063  
    8585  (PotentialParsePotentials) \
    8686  (PotentialSaveHomologies) \
     87  (PotentialSavePotentials) \
    8788  (ParserParseTremoloPotentials) \
    8889  (ParserSaveSelectedAtomsAsExtTypes) \
  • TabularUnified src/Actions/Makefile.am

    rf1eabd r0ea063  
    352352  Actions/PotentialAction/ParseHomologiesAction.cpp \
    353353  Actions/PotentialAction/ParsePotentialsAction.cpp \
    354   Actions/PotentialAction/SaveHomologiesAction.cpp
     354  Actions/PotentialAction/SaveHomologiesAction.cpp \
     355  Actions/PotentialAction/SavePotentialsAction.cpp
    355356POTENTIALACTIONHEADER = \
    356357  Actions/PotentialAction/FitParticleChargesAction.hpp \
    357358  Actions/PotentialAction/ParseHomologiesAction.hpp \
    358359  Actions/PotentialAction/ParsePotentialsAction.hpp \
    359   Actions/PotentialAction/SaveHomologiesAction.hpp
     360  Actions/PotentialAction/SaveHomologiesAction.hpp \
     361  Actions/PotentialAction/SavePotentialsAction.hpp
    360362POTENTIALACTIONDEFS = \
    361363  Actions/PotentialAction/FitParticleChargesAction.def  \
    362364  Actions/PotentialAction/ParseHomologiesAction.def \
    363365  Actions/PotentialAction/ParsePotentialsAction.def \
    364   Actions/PotentialAction/SaveHomologiesAction.def
     366  Actions/PotentialAction/SaveHomologiesAction.def \
     367  Actions/PotentialAction/SavePotentialsAction.def
    365368
    366369if CONDLEVMAR
  • TabularUnified src/Actions/PotentialAction/FitCompoundPotentialAction.cpp

    rf1eabd r0ea063  
    103103  }
    104104
    105   // store the potentials
    106   if (!params.potential_file.get().string().empty()) {
    107     PotentialTrainer::storePotentials(params.potential_file.get());
    108   }
    109 
    110105  return Action::success;
    111106}
  • TabularUnified src/Actions/PotentialAction/FitCompoundPotentialAction.def

    rf1eabd r0ea063  
    2323// ValueStorage by the token "Z" -> first column: int, Z, "Z"
    2424// "undefine" if no parameters are required, use (NOPARAM_DEFAULT) for each (undefined) default value
    25 #define paramtypes (boost::filesystem::path)(boost::filesystem::path)(std::vector<const element *>)(unsigned int)(double)
    26 #define paramtokens ("training-file")("potential-file")("fragment-charges")("take-best-of")("set-threshold")
    27 #define paramdescriptions ("optional file to write training data to")("potential file specifying multiple potentials to fit")("charges specifying the fragment")("take the best among this many approximations")("Require L2 error to be smaller than threshold, overrides number of attempts")
    28 #define paramdefaults (PARAM_DEFAULT(""))(NOPARAM_DEFAULT)(NOPARAM_DEFAULT)(PARAM_DEFAULT(3))(PARAM_DEFAULT(1.))
    29 #define paramreferences (training_file)(potential_file)(fragment)(best_of_howmany)(threshold)
     25#define paramtypes (boost::filesystem::path)(std::vector<const element *>)(unsigned int)(double)
     26#define paramtokens ("training-file")("fragment-charges")("take-best-of")("set-threshold")
     27#define paramdescriptions ("optional file to write training data to")("charges specifying the fragment")("take the best among this many approximations")("Require L2 error to be smaller than threshold, overrides number of attempts")
     28#define paramdefaults (PARAM_DEFAULT(""))(NOPARAM_DEFAULT)(PARAM_DEFAULT(3))(PARAM_DEFAULT(1.))
     29#define paramreferences (training_file)(fragment)(best_of_howmany)(threshold)
    3030#define paramvalids \
    3131(DummyValidator<boost::filesystem::path>()) \
    32 (FileSuffixValidator("potentials")) \
    3332(STLVectorValidator< std::vector<const element *> >(1,99, ElementValidator())) \
    3433(PositiveValidator<unsigned int>()) \
  • TabularUnified src/Actions/PotentialAction/FitPotentialAction.cpp

    rf1eabd r0ea063  
    154154  }
    155155
    156   // store the potentials
    157   // print fitted potentials
    158   std::stringstream potentials;
    159   PotentialSerializer serialize(potentials);
    160   serialize();
    161   LOG(1, "STATUS: Resulting parameters are " << std::endl << potentials.str());
    162   if (!params.potential_file.get().string().empty()) {
    163     PotentialTrainer::storePotentials(params.potential_file.get());
    164   }
    165 
    166156  return Action::success;
    167157}
  • TabularUnified src/Actions/PotentialAction/FitPotentialAction.def

    rf1eabd r0ea063  
    1818#include "Parameters/Validators/Specific/ElementValidator.hpp"
    1919#include "Parameters/Validators/Specific/EmptyStringValidator.hpp"
    20 #include "Parameters/Validators/Specific/FileSuffixValidator.hpp"
    21 #include "Parameters/Validators/Specific/FilePresentValidator.hpp"
    22 #include "Parameters/Validators/Specific/FileSuffixValidator.hpp"
    2320#include "Parameters/Validators/Specific/PotentialTypeValidator.hpp"
    2421
     
    2623// ValueStorage by the token "Z" -> first column: int, Z, "Z"
    2724// "undefine" if no parameters are required, use (NOPARAM_DEFAULT) for each (undefined) default value
    28 #define paramtypes (boost::filesystem::path)(boost::filesystem::path)(std::string)(std::vector<const element *>)(std::vector<const element *>)(unsigned int)(double)
    29 #define paramtokens ("training-file")("potential-file")("potential-type")("potential-charges")("fragment-charges")("take-best-of")("set-threshold")
    30 #define paramdescriptions ("optional file to write training data to")("optional potential file to wrote resulting potentials to")("potential type to fit")("charges specifying the potential")("charges specifying the fragment")("take the best among this many approximations")("Require L2 error to be smaller than threshold, overrides number of attempts")
    31 #define paramdefaults (PARAM_DEFAULT(""))(PARAM_DEFAULT(""))(NOPARAM_DEFAULT)(NOPARAM_DEFAULT)(NOPARAM_DEFAULT)(PARAM_DEFAULT(3))(PARAM_DEFAULT(1.))
    32 #define paramreferences (training_file)(potential_file)(potentialtype)(charges)(fragment)(best_of_howmany)(threshold)
     25#define paramtypes (boost::filesystem::path)(std::string)(std::vector<const element *>)(std::vector<const element *>)(unsigned int)(double)
     26#define paramtokens ("training-file")("potential-type")("potential-charges")("fragment-charges")("take-best-of")("set-threshold")
     27#define paramdescriptions ("optional file to write training data to")("potential type to fit")("charges specifying the potential")("charges specifying the fragment")("take the best among this many approximations")("Require L2 error to be smaller than threshold, overrides number of attempts")
     28#define paramdefaults (PARAM_DEFAULT(""))(NOPARAM_DEFAULT)(NOPARAM_DEFAULT)(NOPARAM_DEFAULT)(PARAM_DEFAULT(3))(PARAM_DEFAULT(1.))
     29#define paramreferences (training_file)(potentialtype)(charges)(fragment)(best_of_howmany)(threshold)
    3330#define paramvalids \
    3431(DummyValidator<boost::filesystem::path>()) \
    35 (!FilePresentValidator() || FileSuffixValidator("potentials")) \
    3632(PotentialTypeValidator()) \
    3733(STLVectorValidator< std::vector<const element *> >(0,99, ElementValidator())) \
  • TabularUnified src/Potentials/PotentialTrainer.cpp

    rf1eabd r0ea063  
    167167}
    168168
    169 void PotentialTrainer::storePotentials(
    170     const boost::filesystem::path &_potentialfile
    171     )
    172 {
    173   // print fitted potentials
    174   std::stringstream potentials;
    175   PotentialSerializer serialize(potentials);
    176   serialize();
    177   std::ofstream returnstream(_potentialfile.string().c_str());
    178   if (returnstream.good()) {
    179     returnstream << potentials.str();
    180   }
    181 }
    182 
    183169HomologyGraph PotentialTrainer::getFirstGraphwithSpecifiedElements(
    184170    const HomologyContainer &homologies,
  • TabularUnified src/Potentials/PotentialTrainer.hpp

    rf1eabd r0ea063  
    3939        const unsigned int _best_of_howmany) const;
    4040
    41   static void storePotentials(
    42       const boost::filesystem::path &_potentialfile
    43       );
    44 
    4541  static
    4642  HomologyGraph getFirstGraphwithSpecifiedElements(
Note: See TracChangeset for help on using the changeset viewer.