ESPResSo
Extensible Simulation Package for Research on Soft Matter Systems
Loading...
Searching...
No Matches
interactions/initialize.cpp
Go to the documentation of this file.
1/*
2 * Copyright (C) 2015-2022 The ESPResSo project
3 *
4 * This file is part of ESPResSo.
5 *
6 * ESPResSo is free software: you can redistribute it and/or modify
7 * it under the terms of the GNU General Public License as published by
8 * the Free Software Foundation, either version 3 of the License, or
9 * (at your option) any later version.
10 *
11 * ESPResSo is distributed in the hope that it will be useful,
12 * but WITHOUT ANY WARRANTY; without even the implied warranty of
13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 * GNU General Public License for more details.
15 *
16 * You should have received a copy of the GNU General Public License
17 * along with this program. If not, see <http://www.gnu.org/licenses/>.
18 */
19#include "initialize.hpp"
20
21#include "BondedInteraction.hpp"
25
26#include <utils/Factory.hpp>
27
28namespace ScriptInterface {
29namespace Interactions {
31 om->register_new<BondedInteractions>("Interactions::BondedInteractions");
32 om->register_new<FeneBond>("Interactions::FeneBond");
33 om->register_new<HarmonicBond>("Interactions::HarmonicBond");
34 om->register_new<QuarticBond>("Interactions::QuarticBond");
35 om->register_new<BondedCoulomb>("Interactions::BondedCoulomb");
36 om->register_new<BondedCoulombSR>("Interactions::BondedCoulombSR");
37 om->register_new<AngleHarmonicBond>("Interactions::AngleHarmonicBond");
38 om->register_new<AngleCosineBond>("Interactions::AngleCosineBond");
39 om->register_new<AngleCossquareBond>("Interactions::AngleCossquareBond");
40 om->register_new<DihedralBond>("Interactions::DihedralBond");
41 om->register_new<TabulatedDistanceBond>(
42 "Interactions::TabulatedDistanceBond");
43 om->register_new<TabulatedAngleBond>("Interactions::TabulatedAngleBond");
44 om->register_new<TabulatedDihedralBond>(
45 "Interactions::TabulatedDihedralBond");
46 om->register_new<ThermalizedBond>("Interactions::ThermalizedBond");
47 om->register_new<RigidBond>("Interactions::RigidBond");
48 om->register_new<IBMTriel>("Interactions::IBMTriel");
49 om->register_new<IBMVolCons>("Interactions::IBMVolCons");
50 om->register_new<IBMTribend>("Interactions::IBMTribend");
51 om->register_new<OifGlobalForcesBond>("Interactions::OifGlobalForcesBond");
52 om->register_new<OifLocalForcesBond>("Interactions::OifLocalForcesBond");
53 om->register_new<VirtualBond>("Interactions::VirtualBond");
54
55 om->register_new<NonBondedInteractions>(
56 "Interactions::NonBondedInteractions");
57 om->register_new<NonBondedInteractionHandle>(
58 "Interactions::NonBondedInteractionHandle");
59#ifdef LENNARD_JONES
60 om->register_new<InteractionLJ>("Interactions::InteractionLJ");
61#endif
62#ifdef LENNARD_JONES_GENERIC
63 om->register_new<InteractionLJGen>("Interactions::InteractionLJGen");
64#endif
65#ifdef LJCOS
66 om->register_new<InteractionLJcos>("Interactions::InteractionLJcos");
67#endif
68#ifdef LJCOS2
69 om->register_new<InteractionLJcos2>("Interactions::InteractionLJcos2");
70#endif
71#ifdef WCA
72 om->register_new<InteractionWCA>("Interactions::InteractionWCA");
73#endif
74#ifdef HERTZIAN
75 om->register_new<InteractionHertzian>("Interactions::InteractionHertzian");
76#endif
77#ifdef GAUSSIAN
78 om->register_new<InteractionGaussian>("Interactions::InteractionGaussian");
79#endif
80#ifdef BMHTF_NACL
81 om->register_new<InteractionBMHTF>("Interactions::InteractionBMHTF");
82#endif
83#ifdef MORSE
84 om->register_new<InteractionMorse>("Interactions::InteractionMorse");
85#endif
86#ifdef BUCKINGHAM
87 om->register_new<InteractionBuckingham>(
88 "Interactions::InteractionBuckingham");
89#endif
90#ifdef SOFT_SPHERE
91 om->register_new<InteractionSoftSphere>(
92 "Interactions::InteractionSoftSphere");
93#endif
94#ifdef HAT
95 om->register_new<InteractionHat>("Interactions::InteractionHat");
96#endif
97#ifdef GAY_BERNE
98 om->register_new<InteractionGayBerne>("Interactions::InteractionGayBerne");
99#endif
100#ifdef TABULATED
101 om->register_new<InteractionTabulated>("Interactions::InteractionTabulated");
102#endif
103#ifdef DPD
104 om->register_new<InteractionDPD>("Interactions::InteractionDPD");
105#endif
106#ifdef THOLE
107 om->register_new<InteractionThole>("Interactions::InteractionThole");
108#endif
109#ifdef SMOOTH_STEP
110 om->register_new<InteractionSmoothStep>(
111 "Interactions::InteractionSmoothStep");
112#endif
113}
114} // namespace Interactions
115} // namespace ScriptInterface
The ScriptInterface counterparts of the bonded interactions parameters structs from the core are defi...
The ScriptInterface counterparts of the non-bonded interactions parameters structs from the core are ...
Factory template.
Definition Factory.hpp:78
void initialize(Utils::Factory< ObjectHandle > *om)
T get_value(Variant const &v)
Extract value of specific type T from a Variant.