Ignore:
Timestamp:
Jul 8, 2013, 2:22:02 PM (12 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:
1e242a
Parents:
919c8a
git-author:
Frederik Heber <heber@…> (05/09/13 13:43:29)
git-committer:
Frederik Heber <heber@…> (07/08/13 14:22:02)
Message:

Removed energy_offset from PairPotential_Harmonic.

Location:
src/Potentials/Specifics
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • src/Potentials/Specifics/PairPotential_Harmonic.cpp

    r919c8a r065a16  
    5959      ("spring_constant")
    6060      ("equilibrium_distance")
    61       ("") //energy_offset
    6261    ;
    6362const std::string PairPotential_Harmonic::potential_token("harmonic_bond");
     
    7170  params[spring_constant] = 1.;
    7271  params[equilibrium_distance] = 1.;
    73   params[energy_offset] = 0.1;
    7472}
    7573
     
    7775    const ParticleTypes_t &_ParticleTypes,
    7876    const double _spring_constant,
    79     const double _equilibrium_distance,
    80     const double _energy_offset) :
     77    const double _equilibrium_distance) :
    8178  EmpiricalPotential(_ParticleTypes),
    8279  params(parameters_t(MAXPARAMS, 0.))
     
    8481  params[spring_constant] = _spring_constant;
    8582  params[equilibrium_distance] = _equilibrium_distance;
    86   params[energy_offset] = _energy_offset;
    8783}
    8884
     
    118114  const result_t result =
    119115      params[spring_constant]
    120              * Helpers::pow( r_ij.distance - params[equilibrium_distance], 2 )
    121             + params[energy_offset];
     116             * Helpers::pow( r_ij.distance - params[equilibrium_distance], 2 );
    122117  return std::vector<result_t>(1, result);
    123118}
     
    169164      break;
    170165    }
    171     case energy_offset:
    172     {
    173       const result_t result = +1.;
    174       return std::vector<result_t>(1, result);
    175       break;
    176     }
    177166    default:
     167      ASSERT(0, "PairPotential_Harmonic::parameter_derivative() - derivative to unknown parameter desired.");
    178168      break;
    179169  }
     
    202192    const TrainingData &data)
    203193{
    204   params[PairPotential_Harmonic::energy_offset] =
    205       data.getTrainingOutputAverage()[0];// -1.;
    206194  params[PairPotential_Harmonic::equilibrium_distance] = 3e+0*rand()/(double)RAND_MAX + .5;// 1.;
    207195  params[PairPotential_Harmonic::spring_constant] = 1e+0*rand()/(double)RAND_MAX;// 0.2;
  • src/Potentials/Specifics/PairPotential_Harmonic.hpp

    r919c8a r065a16  
    4242      const ParticleTypes_t &_ParticleTypes,
    4343      const double _spring_constant,
    44       const double _equilibrium_distance,
    45       const double _energy_offset);
     44      const double _equilibrium_distance);
    4645  virtual ~PairPotential_Harmonic() {}
    4746
     
    7372  size_t getParameterDimension() const
    7473  {
    75     return 3;
     74    return MAXPARAMS;
    7675  }
    7776
     
    155154    spring_constant=0,
    156155    equilibrium_distance=1,
    157     energy_offset=2,
    158156    MAXPARAMS
    159157  };
  • src/Potentials/Specifics/unittests/PairPotential_HarmonicUnitTest.cpp

    r919c8a r065a16  
    6868  input += 0., 1., 2., 3., 4., 5., 6., 7., 8., 9.;
    6969  output +=
    70       .5*1.+.1,
    71       .5*0.+.1,
    72       .5*1.+.1,
    73       .5*4.+.1,
    74       .5*9.+.1,
    75       .5*16.+.1,
    76       .5*25.+.1,
    77       .5*36.+.1,
    78       .5*49.+.1,
    79       .5*64.+.1;
     70      .5*1.,
     71      .5*0.,
     72      .5*1.,
     73      .5*4.,
     74      .5*9.,
     75      .5*16.,
     76      .5*25.,
     77      .5*36.,
     78      .5*49.,
     79      .5*64.;
    8080
    8181  CPPUNIT_ASSERT_EQUAL( input.size(), output.size() );
     
    9595        (0)(1)
    9696      ;
    97   PairPotential_Harmonic harmonic(types, .5,1.,.1);
     97  PairPotential_Harmonic harmonic(types, .5,1.);
    9898  for (size_t index = 0; index < input.size(); ++index) {
    9999    argument_t arg(argument_t::indices_t(0,1), argument_t::types_t(0,1), input[index]);
     
    115115        (0)(1)
    116116      ;
    117   PairPotential_Harmonic harmonic(types, .5,1.,.1);
     117  PairPotential_Harmonic harmonic(types, .5,1.);
    118118  argument_t arg(argument_t::indices_t(0,1), argument_t::types_t(0,1), 1.);
    119119  CPPUNIT_ASSERT(
     
    136136        (0)(1)
    137137      ;
    138   PairPotential_Harmonic harmonic(types, .5,1.,.1);
     138  PairPotential_Harmonic harmonic(types, .5,1.);
    139139  argument_t arg(argument_t::indices_t(0,1), argument_t::types_t(0,1), 1.);
    140140  CPPUNIT_ASSERT(
     
    156156      )
    157157  );
    158   CPPUNIT_ASSERT(
    159       Helpers::isEqual(
    160           1.,
    161           harmonic.parameter_derivative(
    162               FunctionModel::arguments_t(1,arg),
    163               2
    164           )[0]
    165       )
    166   );
    167158}
Note: See TracChangeset for help on using the changeset viewer.