Ignore:
Timestamp:
Feb 25, 2013, 5:29:09 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:
0496af
Parents:
6efcae
git-author:
Frederik Heber <heber@…> (11/25/12 09:10:44)
git-committer:
Frederik Heber <heber@…> (02/25/13 17:29:09)
Message:

All Pair_.. and ManyBodyPotentials are now also derived from SerializablePotential.

  • added static ParameterNames, skipping "energy_offset" which should not go to file.
  • overrode operator<<() and ..>>() for SaturationPotential to print both potentials independently.
  • adapted LevMartest and all unit tests.
Location:
src/Potentials/Specifics
Files:
14 edited

Legend:

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

    r6efcae red2551  
    3939#include "ManyBodyPotential_Tersoff.hpp"
    4040
     41#include <boost/assign/list_of.hpp> // for 'map_list_of()'
    4142#include <boost/bind.hpp>
    4243#include <cmath>
     44#include <string>
    4345
    4446#include "CodePatterns/Assert.hpp"
     
    4850#include "Potentials/helpers.hpp"
    4951
     52// static definitions
     53const ManyBodyPotential_Tersoff::ParameterNames_t
     54ManyBodyPotential_Tersoff::ParameterNames =
     55      boost::assign::list_of<std::string>
     56      ("A")
     57      ("B")
     58      ("lambda")
     59      ("mu")
     60      ("beta")
     61      ("n")
     62      ("c")
     63      ("d")
     64      ("h")
     65      ("offset")
     66//      ("R")
     67//      ("S")
     68//      ("lambda3")
     69//      ("alpha")
     70//      ("chi")
     71//      ("omega")
     72    ;
     73const std::string ManyBodyPotential_Tersoff::potential_token("tersoff");
     74
    5075ManyBodyPotential_Tersoff::ManyBodyPotential_Tersoff(
     76    const ParticleTypes_t &_ParticleTypes,
    5177    boost::function< std::vector<arguments_t>(const argument_t &, const double)> &_triplefunction
    5278    ) :
     79    SerializablePotential(_ParticleTypes),
    5380    params(parameters_t(MAXPARAMS, 0.)),
    5481    R(3.2),
     
    6289
    6390ManyBodyPotential_Tersoff::ManyBodyPotential_Tersoff(
     91    const ParticleTypes_t &_ParticleTypes,
    6492    const double &_R,
    6593    const double &_S,
     
    79107    const double &_offset,
    80108    boost::function< std::vector<arguments_t>(const argument_t &, const double)> &_triplefunction) :
     109  SerializablePotential(_ParticleTypes),
    81110  params(parameters_t(MAXPARAMS, 0.)),
    82111  R(_R),
  • src/Potentials/Specifics/ManyBodyPotential_Tersoff.hpp

    r6efcae red2551  
    1919
    2020#include "Potentials/EmpiricalPotential.hpp"
     21#include "Potentials/SerializablePotential.hpp"
    2122#include "FunctionApproximation/FunctionModel.hpp"
    2223
     
    2829 *
    2930 */
    30 class ManyBodyPotential_Tersoff : virtual public EmpiricalPotential, virtual public FunctionModel
     31class ManyBodyPotential_Tersoff :
     32  virtual public EmpiricalPotential,
     33  virtual public FunctionModel,
     34  virtual public SerializablePotential
    3135{
    3236  //!> grant unit test access to internal parts
     
    4650   */
    4751  ManyBodyPotential_Tersoff(
     52      const ParticleTypes_t &_ParticleTypes,
    4853      boost::function< std::vector<arguments_t>(const argument_t &, const double)> &_triplefunction
    4954      );
     
    7277   */
    7378  ManyBodyPotential_Tersoff(
     79      const ParticleTypes_t &_ParticleTypes,
    7480      const double &_R,
    7581      const double &_S,
     
    124130   * \return token name of the potential
    125131   */
    126   const std::string getToken() const {
    127     return std::string("tersoff");
    128   }
     132  const std::string& getToken() const
     133  { return potential_token; }
     134
     135  /** Returns a vector of parameter names.
     136   *
     137   * This is required from the specific implementation
     138   *
     139   * \return vector of strings containing parameter names
     140   */
     141  const ParameterNames_t& getParameterNames() const
     142  { return ParameterNames; }
    129143
    130144  /** States whether lower and upper boundaries should be used to constraint
     
    308322  //!> bound function that obtains the triples for the internal coordinationb summation.
    309323  const boost::function< std::vector< arguments_t >(const argument_t &, const double)> &triplefunction;
     324
     325  //!> static definitions of the parameter name for this potential
     326  static const ParameterNames_t ParameterNames;
     327
     328  //!> static token of this potential type
     329  static const std::string potential_token;
    310330};
    311331
  • src/Potentials/Specifics/PairPotential_Angle.cpp

    r6efcae red2551  
    3939#include "PairPotential_Angle.hpp"
    4040
     41#include <boost/assign/list_of.hpp> // for 'map_list_of()'
     42#include <string>
     43
    4144#include "CodePatterns/Assert.hpp"
    4245
    4346#include "Potentials/helpers.hpp"
    4447
    45 PairPotential_Angle::PairPotential_Angle() :
     48// static definitions
     49const PairPotential_Angle::ParameterNames_t
     50PairPotential_Angle::ParameterNames =
     51      boost::assign::list_of<std::string>
     52      ("spring_constant")
     53      ("equilibrium_distance")
     54      ("") //energy_offset
     55    ;
     56const std::string PairPotential_Angle::potential_token("harmonic_angle");
     57
     58PairPotential_Angle::PairPotential_Angle(
     59    const ParticleTypes_t &_ParticleTypes
     60    ) :
     61  SerializablePotential(_ParticleTypes),
    4662  params(parameters_t(MAXPARAMS, 0.))
    4763{}
    4864
    4965PairPotential_Angle::PairPotential_Angle(
     66    const ParticleTypes_t &_ParticleTypes,
    5067    const double _spring_constant,
    5168    const double _equilibrium_distance,
    5269    const double _energy_offset) :
    53       params(parameters_t(MAXPARAMS, 0.))
     70  SerializablePotential(_ParticleTypes),
     71  params(parameters_t(MAXPARAMS, 0.))
    5472{
    5573  params[spring_constant] = _spring_constant;
  • src/Potentials/Specifics/PairPotential_Angle.hpp

    r6efcae red2551  
    2020
    2121#include "Potentials/EmpiricalPotential.hpp"
     22#include "Potentials/SerializablePotential.hpp"
    2223#include "FunctionApproximation/FunctionModel.hpp"
    2324
     
    2728 *
    2829 */
    29 class PairPotential_Angle : virtual public EmpiricalPotential, virtual public FunctionModel
     30class PairPotential_Angle :
     31  virtual public EmpiricalPotential,
     32  virtual public FunctionModel,
     33  virtual public SerializablePotential
    3034{
    3135  //!> grant unit test access to internal parts
     
    3842  typedef FunctionModel::parameters_t parameters_t;
    3943public:
    40   PairPotential_Angle();
     44  PairPotential_Angle(const ParticleTypes_t &_ParticleTypes);
    4145  PairPotential_Angle(
     46      const ParticleTypes_t &_ParticleTypes,
    4247      const double _spring_constant,
    4348      const double _equilibrium_distance,
     
    97102   * \return token name of the potential
    98103   */
    99   const std::string getToken() const {
    100     return std::string("harmonic_angle");
    101   }
     104  const std::string& getToken() const
     105  { return potential_token; }
     106
     107  /** Returns a vector of parameter names.
     108   *
     109   * This is required from the specific implementation
     110   *
     111   * \return vector of strings containing parameter names
     112   */
     113  const ParameterNames_t& getParameterNames() const
     114  { return ParameterNames; }
    102115
    103116  /** States whether lower and upper boundaries should be used to constraint
     
    149162  //!> parameter vector with parameters as in enum parameter_enum_t
    150163  parameters_t params;
     164
     165  //!> static definitions of the parameter name for this potential
     166  static const ParameterNames_t ParameterNames;
     167
     168  //!> static token of this potential type
     169  static const std::string potential_token;
    151170};
    152171
  • src/Potentials/Specifics/PairPotential_Harmonic.cpp

    r6efcae red2551  
    3939#include "PairPotential_Harmonic.hpp"
    4040
     41#include <boost/assign/list_of.hpp> // for 'map_list_of()'
     42#include <string>
     43
    4144#include "CodePatterns/Assert.hpp"
    4245
    4346#include "Potentials/helpers.hpp"
    4447
    45 PairPotential_Harmonic::PairPotential_Harmonic() :
     48// static definitions
     49const PairPotential_Harmonic::ParameterNames_t
     50PairPotential_Harmonic::ParameterNames =
     51      boost::assign::list_of<std::string>
     52      ("spring_constant")
     53      ("equilibrium_distance")
     54      ("") //energy_offset
     55    ;
     56const std::string PairPotential_Harmonic::potential_token("harmonic_bond");
     57
     58PairPotential_Harmonic::PairPotential_Harmonic(
     59    const ParticleTypes_t &_ParticleTypes) :
     60    SerializablePotential(_ParticleTypes),
    4661  params(parameters_t(MAXPARAMS, 0.))
    4762{}
    4863
    4964PairPotential_Harmonic::PairPotential_Harmonic(
     65    const ParticleTypes_t &_ParticleTypes,
    5066    const double _spring_constant,
    5167    const double _equilibrium_distance,
    5268    const double _energy_offset) :
    53       params(parameters_t(MAXPARAMS, 0.))
     69  SerializablePotential(_ParticleTypes),
     70  params(parameters_t(MAXPARAMS, 0.))
    5471{
    5572  params[spring_constant] = _spring_constant;
  • src/Potentials/Specifics/PairPotential_Harmonic.hpp

    r6efcae red2551  
    2020
    2121#include "Potentials/EmpiricalPotential.hpp"
     22#include "Potentials/SerializablePotential.hpp"
    2223#include "FunctionApproximation/FunctionModel.hpp"
    2324
     
    2728 *
    2829 */
    29 class PairPotential_Harmonic : virtual public EmpiricalPotential, virtual public FunctionModel
     30class PairPotential_Harmonic :
     31  virtual public EmpiricalPotential,
     32  virtual public FunctionModel,
     33  virtual public SerializablePotential
    3034{
    3135  //!> grant unit test access to internal parts
     
    3842  typedef FunctionModel::parameters_t parameters_t;
    3943public:
    40   PairPotential_Harmonic();
     44  PairPotential_Harmonic(const ParticleTypes_t &_ParticleTypes);
    4145  PairPotential_Harmonic(
     46      const ParticleTypes_t &_ParticleTypes,
    4247      const double _spring_constant,
    4348      const double _equilibrium_distance,
     
    126131   * \return token name of the potential
    127132   */
    128   const std::string getToken() const {
    129     return std::string("harmonic_bond");
    130   }
     133  const std::string& getToken() const
     134  { return potential_token; }
     135
     136  /** Returns a vector of parameter names.
     137   *
     138   * This is required from the specific implementation
     139   *
     140   * \return vector of strings containing parameter names
     141   */
     142  const ParameterNames_t& getParameterNames() const
     143  { return ParameterNames; }
    131144
    132145  enum parameter_enum_t {
     
    139152  //!> parameter vector with parameters as in enum parameter_enum_t
    140153  parameters_t params;
     154
     155  //!> static definitions of the parameter name for this potential
     156  static const ParameterNames_t ParameterNames;
     157
     158  //!> static token of this potential type
     159  static const std::string potential_token;
    141160};
    142161
  • src/Potentials/Specifics/PairPotential_Morse.cpp

    r6efcae red2551  
    3939#include "PairPotential_Morse.hpp"
    4040
     41#include <boost/assign/list_of.hpp> // for 'map_list_of()'
    4142#include <cmath>
     43#include <string>
    4244
    4345#include "CodePatterns/Assert.hpp"
     
    4547#include "Potentials/helpers.hpp"
    4648
    47 PairPotential_Morse::PairPotential_Morse() :
     49// static definitions
     50const PairPotential_Morse::ParameterNames_t
     51PairPotential_Morse::ParameterNames =
     52      boost::assign::list_of<std::string>
     53      ("spring_constant")
     54      ("equilibrium_distance")
     55      ("dissociation_energy")
     56      ("") //energy_offset
     57    ;
     58const std::string PairPotential_Morse::potential_token("morse");
     59
     60PairPotential_Morse::PairPotential_Morse(
     61    const ParticleTypes_t &_ParticleTypes
     62    ) :
     63  SerializablePotential(_ParticleTypes),
    4864  params(parameters_t(MAXPARAMS, 0.))
    4965{}
    5066
    5167PairPotential_Morse::PairPotential_Morse(
     68    const ParticleTypes_t &_ParticleTypes,
    5269    const double _spring_constant,
    5370    const double _equilibrium_distance,
    5471    const double _dissociation_energy,
    5572    const double _energy_offset) :
    56       params(parameters_t(MAXPARAMS, 0.))
     73  SerializablePotential(_ParticleTypes),
     74  params(parameters_t(MAXPARAMS, 0.))
    5775{
    5876  params[spring_constant] = _spring_constant;
  • src/Potentials/Specifics/PairPotential_Morse.hpp

    r6efcae red2551  
    2020
    2121#include "Potentials/EmpiricalPotential.hpp"
     22#include "Potentials/SerializablePotential.hpp"
    2223#include "FunctionApproximation/FunctionModel.hpp"
    2324
     
    2728 *
    2829 */
    29 class PairPotential_Morse : virtual public EmpiricalPotential, virtual public FunctionModel
     30class PairPotential_Morse :
     31  virtual public EmpiricalPotential,
     32  virtual public FunctionModel,
     33  virtual public SerializablePotential
    3034{
    3135  //!> grant unit test access to internal parts
     
    3842  typedef FunctionModel::parameters_t parameters_t;
    3943public:
    40   PairPotential_Morse();
     44  PairPotential_Morse(const ParticleTypes_t &_ParticleTypes);
    4145  PairPotential_Morse(
     46      const ParticleTypes_t &_ParticleTypes,
    4247      const double _spring_constant,
    4348      const double _equilibrium_distance,
     
    98103   * \return token name of the potential
    99104   */
    100   const std::string getToken() const {
    101     return std::string("morse");
    102   }
     105  const std::string& getToken() const
     106  { return potential_token; }
     107
     108  /** Returns a vector of parameter names.
     109   *
     110   * This is required from the specific implementation
     111   *
     112   * \return vector of strings containing parameter names
     113   */
     114  const ParameterNames_t& getParameterNames() const
     115  { return ParameterNames; }
    103116
    104117  /** States whether lower and upper boundaries should be used to constraint
     
    142155  //!> parameter vector with parameters as in enum parameter_enum_t
    143156  parameters_t params;
     157
     158  //!> static definitions of the parameter name for this potential
     159  static const ParameterNames_t ParameterNames;
     160
     161  //!> static token of this potential type
     162  static const std::string potential_token;
    144163};
    145164
  • src/Potentials/Specifics/SaturationPotential.cpp

    r6efcae red2551  
    3939#include "SaturationPotential.hpp"
    4040
     41#include <boost/assign/list_of.hpp> // for 'map_list_of()'
     42#include <iostream>
     43#include <string>
     44
    4145#include "CodePatterns/Assert.hpp"
    4246#include "CodePatterns/Log.hpp"
     
    4448#include "Potentials/helpers.hpp"
    4549
     50// static definitions
     51const SaturationPotential::ParameterNames_t
     52SaturationPotential::ParameterNames =
     53      boost::assign::list_of<std::string>
     54      ("all_energy_offset")
     55      ("")
     56      ("")
     57      ("")
     58      ("")
     59      ("")
     60    ;
     61const std::string SaturationPotential::potential_token("saturation");
     62
    4663SaturationPotential::SaturationPotential(
     64    const ParticleTypes_t &_ParticleTypes,
    4765    const double _saturation_cutoff,
    4866    boost::function< std::vector<arguments_t>(const argument_t &, const double)> &_triplefunction) :
     67  SerializablePotential(_ParticleTypes),
     68  morse(_ParticleTypes),
     69  angle(_ParticleTypes),
    4970  energy_offset(0.),
    5071  triplefunction(_triplefunction),
     
    5374
    5475SaturationPotential::SaturationPotential(
     76    const ParticleTypes_t &_ParticleTypes,
    5577    const double _morse_spring_constant,
    5678    const double _morse_equilibrium_distance,
     
    6183    const double _saturation_cutoff,
    6284    boost::function< std::vector<arguments_t>(const argument_t &, const double)> &_triplefunction) :
     85  SerializablePotential(_ParticleTypes),
     86  morse(_ParticleTypes),
     87  angle(_ParticleTypes),
    6388  energy_offset(_all_energy_offset),
    6489  triplefunction(_triplefunction),
     
    262287  return SaturationPotential::results_t(1, result);
    263288}
     289
     290std::ostream& operator<<(std::ostream &ost, const SaturationPotential &potential)
     291{
     292  ost << potential.morse;
     293  ost << potential.angle;
     294  return ost;
     295}
     296
     297std::istream& operator>>(std::istream &ist, SaturationPotential &potential)
     298{
     299  ist >> potential.morse;
     300  ist >> potential.angle;
     301  return ist;
     302}
  • src/Potentials/Specifics/SaturationPotential.hpp

    r6efcae red2551  
    1616
    1717#include <boost/function.hpp>
     18#include <iosfwd>
    1819#include <limits>
    1920
    2021#include "Potentials/EmpiricalPotential.hpp"
     22#include "Potentials/SerializablePotential.hpp"
    2123#include "Potentials/Specifics/PairPotential_Angle.hpp"
    2224#include "Potentials/Specifics/PairPotential_Morse.hpp"
     
    2628 *
    2729 */
    28 class SaturationPotential : virtual public EmpiricalPotential, virtual public FunctionModel
     30class SaturationPotential :
     31  virtual public EmpiricalPotential,
     32  virtual public FunctionModel,
     33  virtual public SerializablePotential
    2934{
    3035  //!> grant unit test access to internal parts
    3136  friend class SaturationPotentialTest;
     37  //!> grant operator access to private functions
     38  friend std::ostream& operator<<(std::ostream &ost, const SaturationPotential &potential);
     39  //!> grant operator access to private functions
     40  friend std::istream& operator>>(std::istream &ost, SaturationPotential &potential);
     41
    3242  // some repeated typedefs to avoid ambiguities
    3343  typedef FunctionModel::arguments_t arguments_t;
     
    3848public:
    3949  SaturationPotential(
     50      const ParticleTypes_t &_ParticleTypes,
    4051      const double _saturation_cutoff,
    4152      boost::function< std::vector<arguments_t>(const argument_t &, const double)> &_triplefunction
    4253      );
    4354  SaturationPotential(
     55      const ParticleTypes_t &_ParticleTypes,
    4456      const double _morse_spring_constant,
    4557      const double _morse_equilibrium_distance,
     
    100112   * \return token name of the potential
    101113   */
    102   const std::string getToken() const {
    103     return std::string("saturation");
    104   }
     114  const std::string& getToken() const
     115  { return potential_token; }
     116
     117  /** Returns a vector of parameter names.
     118   *
     119   * This is required from the specific implementation
     120   *
     121   * \return vector of strings containing parameter names
     122   */
     123  const ParameterNames_t& getParameterNames() const
     124  { return ParameterNames; }
    105125
    106126  /** States whether lower and upper boundaries should be used to constraint
     
    154174  const boost::function< std::vector< arguments_t >(const argument_t &, const double)> &triplefunction;
    155175  const double saturation_cutoff;
     176
     177  //!> static definitions of the parameter name for this potential
     178  static const ParameterNames_t ParameterNames;
     179
     180  //!> static token of this potential type
     181  static const std::string potential_token;
    156182};
    157183
     184/** Output operations stores .potentials line containing these parameters
     185 * coefficients and designations.
     186 *
     187 * \note We have to overrride this function in order to print both potentials
     188 * separately.
     189 *
     190 * \param ost output stream to print to
     191 * \param potential potential whose coefficients to print
     192 * \return output stream for concatenation
     193 */
     194std::ostream& operator<<(std::ostream &ost, const SaturationPotential &potential);
     195
     196/** Input operation parses coefficients from a given line of a .potentials
     197 * file.
     198 *
     199 * \note We have to override this function in order to parse both potentials
     200 * separately.
     201 *
     202 * \param ist input stream to parse from
     203 * \param potential potential to set
     204 * \return input stream for concatenation
     205 */
     206std::istream& operator>>(std::istream &ist, SaturationPotential &potential);
     207
    158208#endif /* SATURATIONPOTENTIAL_HPP_ */
  • src/Potentials/Specifics/unittests/ManyBodyPotential_TersoffUnitTest.cpp

    r6efcae red2551  
    277277    > fct =
    278278      triplefunction;
    279   ManyBodyPotential_Tersoff tersoff(fct);
     279  ManyBodyPotential_Tersoff::ParticleTypes_t types =
     280      boost::assign::list_of<ManyBodyPotential_Tersoff::ParticleType_t>
     281        (0)(1)
     282      ;
     283  ManyBodyPotential_Tersoff tersoff(types, fct);
    280284  tersoff.setParameters(params);
    281285  const_cast<double &>(tersoff.R) = 1.8;
     
    320324//    > fct =
    321325//      triplefunction;
    322 //  ManyBodyPotential_Tersoff tersoff(fct);
     326//  ManyBodyPotential_Tersoff::ParticleTypes_t types =
     327//      boost::assign::list_of<ManyBodyPotential_Tersoff::ParticleType_t>
     328//        (0)(1)
     329//      ;
     330//  ManyBodyPotential_Tersoff tersoff(types, fct);
    323331//  tersoff.setParameters(params);
    324332//  CPPUNIT_ASSERT(
     
    341349//    > fct =
    342350//      triplefunction;
    343 //  ManyBodyPotential_Tersoff tersoff(fct);
     351//  ManyBodyPotential_Tersoff::ParticleTypes_t types =
     352//      boost::assign::list_of<ManyBodyPotential_Tersoff::ParticleType_t>
     353//        (0)(1)
     354//      ;
     355//  ManyBodyPotential_Tersoff tersoff(types, fct);
    344356//  tersoff.setParameters(params);
    345357//  CPPUNIT_ASSERT(
  • src/Potentials/Specifics/unittests/PairPotential_AngleUnitTest.cpp

    r6efcae red2551  
    103103void PairPotential_AngleTest::operatorTest()
    104104{
    105   PairPotential_Angle angle(.5,0.,.1);
     105  PairPotential_Angle::ParticleTypes_t types =
     106      boost::assign::list_of<PairPotential_Angle::ParticleType_t>
     107        (0)(1)(1)
     108      ;
     109  PairPotential_Angle angle(types, .5,0.,.1);
    106110  for (size_t index = 0; index < input.size(); ++index) {
    107111    CPPUNIT_ASSERT(
     
    118122void PairPotential_AngleTest::derivativeTest()
    119123{
    120   PairPotential_Angle angle(.5,0.,.1);
     124  PairPotential_Angle::ParticleTypes_t types =
     125      boost::assign::list_of<PairPotential_Angle::ParticleType_t>
     126        (0)(1)(1)
     127      ;
     128  PairPotential_Angle angle(types, .5,0.,.1);
    121129  CPPUNIT_ASSERT(
    122130      Helpers::isEqual(
     
    135143void PairPotential_AngleTest::parameter_derivativeTest()
    136144{
    137   PairPotential_Angle angle(.5,0.,.1);
     145  PairPotential_Angle::ParticleTypes_t types =
     146      boost::assign::list_of<PairPotential_Angle::ParticleType_t>
     147        (0)(1)(1)
     148      ;
     149  PairPotential_Angle angle(types, .5,0.,.1);
    138150  CPPUNIT_ASSERT(
    139151      Helpers::isEqual(
  • src/Potentials/Specifics/unittests/PairPotential_HarmonicUnitTest.cpp

    r6efcae red2551  
    9191void PairPotential_HarmonicTest::operatorTest()
    9292{
    93   PairPotential_Harmonic harmonic(.5,1.,.1);
     93  PairPotential_Harmonic::ParticleTypes_t types =
     94      boost::assign::list_of<PairPotential_Harmonic::ParticleType_t>
     95        (0)(1)
     96      ;
     97  PairPotential_Harmonic harmonic(types, .5,1.,.1);
    9498  for (size_t index = 0; index < input.size(); ++index) {
    9599    CPPUNIT_ASSERT(
     
    106110void PairPotential_HarmonicTest::derivativeTest()
    107111{
    108   PairPotential_Harmonic harmonic(.5,1.,.1);
     112  PairPotential_Harmonic::ParticleTypes_t types =
     113      boost::assign::list_of<PairPotential_Harmonic::ParticleType_t>
     114        (0)(1)
     115      ;
     116  PairPotential_Harmonic harmonic(types, .5,1.,.1);
    109117  CPPUNIT_ASSERT(
    110118      Helpers::isEqual(
     
    122130void PairPotential_HarmonicTest::parameter_derivativeTest()
    123131{
    124   PairPotential_Harmonic harmonic(.5,1.,.1);
     132  PairPotential_Harmonic::ParticleTypes_t types =
     133      boost::assign::list_of<PairPotential_Harmonic::ParticleType_t>
     134        (0)(1)
     135      ;
     136  PairPotential_Harmonic harmonic(types, .5,1.,.1);
    125137  CPPUNIT_ASSERT(
    126138      Helpers::isEqual(
  • src/Potentials/Specifics/unittests/PairPotential_MorseUnitTest.cpp

    r6efcae red2551  
    107107void PairPotential_MorseTest::operatorTest()
    108108{
    109   PairPotential_Morse Morse(a,c,D,d);
     109  PairPotential_Morse::ParticleTypes_t types =
     110      boost::assign::list_of<PairPotential_Morse::ParticleType_t>
     111        (0)(1)
     112      ;
     113  PairPotential_Morse Morse(types, a,c,D,d);
    110114  for (size_t index = 0; index < input.size(); ++index) {
    111115    CPPUNIT_ASSERT(
     
    123127void PairPotential_MorseTest::derivativeTest()
    124128{
    125   PairPotential_Morse Morse(a,c,D,d);
     129  PairPotential_Morse::ParticleTypes_t types =
     130      boost::assign::list_of<PairPotential_Morse::ParticleType_t>
     131        (0)(1)
     132      ;
     133  PairPotential_Morse Morse(types, a,c,D,d);
    126134  CPPUNIT_ASSERT(
    127135      Helpers::isEqual(
     
    140148void PairPotential_MorseTest::parameter_derivativeTest()
    141149{
    142   PairPotential_Morse Morse(a,c,D,d);
     150  PairPotential_Morse::ParticleTypes_t types =
     151      boost::assign::list_of<PairPotential_Morse::ParticleType_t>
     152        (0)(1)
     153      ;
     154  PairPotential_Morse Morse(types, a,c,D,d);
    143155  CPPUNIT_ASSERT(
    144156      Helpers::isEqual(
Note: See TracChangeset for help on using the changeset viewer.