Changeset a315e8


Ignore:
Timestamp:
Jul 8, 2013, 2:22:04 PM (11 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:
62164d
Parents:
a504946
git-author:
Frederik Heber <heber@…> (06/26/13 18:33:00)
git-committer:
Frederik Heber <heber@…> (07/08/13 14:22:04)
Message:

Potential type is given via extra option not "fit-potential".

  • also "potential-type" is optional and "potential-file" can be given as well.
  • added EmptyStringValidator.
  • TESTFIX: Regression test FitPotential adapted to option "potential-type".
Files:
1 added
4 edited

Legend:

Unmodified
Added
Removed
  • src/Actions/FragmentationAction/FitPotentialAction.def

    ra504946 ra315e8  
    1212
    1313#include "Parameters/Validators/DummyValidator.hpp"
     14#include "Parameters/Validators/Ops_Validator.hpp"
    1415#include "Parameters/Validators/RangeValidator.hpp"
    1516#include "Parameters/Validators/STLVectorValidator.hpp"
    1617#include "Parameters/Validators/Specific/ElementValidator.hpp"
     18#include "Parameters/Validators/Specific/EmptyStringValidator.hpp"
    1719#include "Parameters/Validators/Specific/FilePresentValidator.hpp"
    1820#include "Parameters/Validators/Specific/PotentialTypeValidator.hpp"
     
    2224// "undefine" if no parameters are required, use (NOPARAM_DEFAULT) for each (undefined) default value
    2325#define paramtypes (boost::filesystem::path)(boost::filesystem::path)(std::string)(boost::filesystem::path)(std::vector<const element *>)(std::vector<const element *>)(unsigned int)
    24 #define paramtokens ("homology-file")("training-file")("fit-potential")("potential-file")("potential-charges")("fragment-charges")("take-best-of")
     26#define paramtokens ("homology-file")("training-file")("potential-type")("potential-file")("potential-charges")("fragment-charges")("take-best-of")
    2527#define paramdescriptions ("homology file to parse")("optional file to write training data to")("potential type to fit")("potential file specifying multiple potentials to fit")("charges specifying the potential")("charges specifying the fragment")("take the best among this many approximations")
    2628#define paramdefaults (NOPARAM_DEFAULT)(PARAM_DEFAULT(""))(NOPARAM_DEFAULT)(NOPARAM_DEFAULT)(NOPARAM_DEFAULT)(NOPARAM_DEFAULT)(PARAM_DEFAULT(3))
     
    2931(FilePresentValidator()) \
    3032(DummyValidator<boost::filesystem::path>()) \
    31 (PotentialTypeValidator()) \
     33(EmptyStringValidator() || PotentialTypeValidator()) \
    3234(DummyValidator<boost::filesystem::path>()) \
    3335(STLVectorValidator< std::vector<const element *> >(0,99, ElementValidator())) \
  • src/Parameters/Makefile.am

    ra504946 ra315e8  
    5050        Parameters/Validators/Specific/BoxVectorValidator.hpp \
    5151        Parameters/Validators/Specific/ElementValidator.hpp \
     52        Parameters/Validators/Specific/EmptyStringValidator.hpp \
    5253        Parameters/Validators/Specific/FilePresentValidator.hpp \
    5354        Parameters/Validators/Specific/FileSuffixValidator.hpp \
  • tests/Python/AllActions/options.dat

    ra504946 ra315e8  
    7575fill-void       "water.data"
    7676fill-void       "water.xyz"
    77 fit-potential   "morse"
    7877forces-file     "test.forces"
    7978fragment-charges        "1 1"
     
    135134potential-charges       "1 1"
    136135potential-file  "test.potentials"
     136potential-type  "morse"
    137137radius  "20."
    138138random-atom-displacement        "0."
  • tests/regression/Fragmentation/FitPotential/testsuite-fragmentation-fit-potential.at

    ra504946 ra315e8  
    2626AT_CHECK([/bin/cp -f ${abs_top_srcdir}/tests/regression/Fragmentation/FitPotential/pre/$file $file], 0)
    2727AT_CHECK([chmod u+w $file], 0, [ignore], [ignore])
    28 AT_CHECK([../../molecuilder --fit-potential "morse" --homology-file $file --potential-charges 8 1 --fragment-charges 1 8 1 --take-best-of 5], 0, [stdout], [ignore])
     28AT_CHECK([../../molecuilder --fit-potential --potential-type "morse" --homology-file $file --potential-charges 8 1 --fragment-charges 1 8 1 --take-best-of 5], 0, [stdout], [ignore])
    2929# check that L_2 error is below 1e-6
    3030AT_CHECK([grep "Best parameters with L2 error" stdout | awk '{if ($8 > 1e-6) exit 1}'], 0, [ignore], [ignore])
     
    4141AT_CHECK([/bin/cp -f ${abs_top_srcdir}/tests/regression/Fragmentation/FitPotential/pre/$file $file], 0)
    4242AT_CHECK([chmod u+w $file], 0, [ignore], [ignore])
    43 AT_CHECK([../../molecuilder --fit-potential "harmonic_angle" --homology-file $file --potential-charges 1 8 1 --fragment-charges 1 8 1 --take-best-of 5], 0, [stdout], [ignore])
     43AT_CHECK([../../molecuilder --fit-potential --potential-type "harmonic_angle" --homology-file $file --potential-charges 1 8 1 --fragment-charges 1 8 1 --take-best-of 5], 0, [stdout], [ignore])
    4444# check that L_2 error is below 1e-6
    4545AT_CHECK([grep "||e||_2:" stdout | awk '{if ($7 > 1e-6) exit 1}'], 0, [ignore], [ignore])
Note: See TracChangeset for help on using the changeset viewer.