ESPResSo
Extensible Simulation Package for Research on Soft Matter Systems
Loading...
Searching...
No Matches
constraints/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 "
Constraints.hpp
"
22
23
#include "
HomogeneousMagneticField.hpp
"
24
#include "
ShapeBasedConstraint.hpp
"
25
26
#include "
ExternalField.hpp
"
27
#include "
ExternalPotential.hpp
"
28
29
#include "
couplings.hpp
"
30
#include "
fields.hpp
"
31
32
namespace
ScriptInterface
{
33
namespace
Constraints
{
34
35
using namespace
FieldCoupling::Coupling
;
36
using namespace
FieldCoupling::Fields
;
37
38
/* Generic Fields */
39
using
TabulatedForceField
=
ExternalField<Scaled, Interpolated<double, 3>
>;
40
using
TabulatedPotentialField
=
41
ExternalPotential<Scaled, Interpolated<double, 1>
>;
42
43
/* Physical Fields */
44
using
Gravity
=
ExternalField<Mass, Constant<double, 3>
>;
45
46
using
FlowField
=
ExternalField<Viscous, Interpolated<double, 3>
>;
47
using
LinearFlowField
=
ExternalField<Viscous, AffineMap<double, 3>
>;
48
using
HomogeneousFlowField
=
ExternalField<Viscous, Constant<double, 3>
>;
49
50
using
ElectricPotential
=
ExternalPotential<Charge, Interpolated<double, 1>
>;
51
using
LinearElectricPotential
=
ExternalPotential<Charge, AffineMap<double, 1>
>;
52
using
ElectricPlaneWave
=
ExternalField<Charge, PlaneWave<double, 3>
>;
53
54
void
initialize
(
Utils::Factory<ObjectHandle>
*
om
) {
55
om
->register_new<
Constraints
>(
"Constraints::Constraints"
);
56
om
->register_new<
ShapeBasedConstraint
>(
"Constraints::ShapeBasedConstraint"
);
57
om
->register_new<
HomogeneousMagneticField
>(
58
"Constraints::HomogeneousMagneticField"
);
59
om
->register_new<
TabulatedForceField
>(
"Constraints::ForceField"
);
60
om
->register_new<
TabulatedPotentialField
>(
"Constraints::PotentialField"
);
61
om
->register_new<
Gravity
>(
"Constraints::Gravity"
);
62
om
->register_new<
FlowField
>(
"Constraints::FlowField"
);
63
om
->register_new<
HomogeneousFlowField
>(
"Constraints::HomogeneousFlowField"
);
64
#ifdef ELECTROSTATICS
65
om
->register_new<
ElectricPotential
>(
"Constraints::ElectricPotential"
);
66
om
->register_new<
LinearElectricPotential
>(
67
"Constraints::LinearElectricPotential"
);
68
om
->register_new<
ElectricPlaneWave
>(
"Constraints::ElectricPlaneWave"
);
69
#endif
70
}
71
}
/* namespace Constraints */
72
}
/* namespace ScriptInterface */
ScriptInterface::Constraints::ExternalField
Definition
script_interface/constraints/ExternalField.hpp:42
ScriptInterface::Constraints::ExternalPotential
Definition
script_interface/constraints/ExternalPotential.hpp:41
ScriptInterface::Constraints::HomogeneousMagneticField
Definition
script_interface/constraints/HomogeneousMagneticField.hpp:37
ScriptInterface::Constraints::ShapeBasedConstraint
Definition
script_interface/constraints/ShapeBasedConstraint.hpp:40
Utils::Factory
Factory template.
Definition
Factory.hpp:78
couplings.hpp
ScriptInterface implementations for the various couplings provided.
fields.hpp
Constraints
Definition
core/constraints/Constraint.hpp:29
FieldCoupling::Coupling
Definition
Charge.hpp:23
FieldCoupling::Fields
Definition
AffineMap.hpp:28
ScriptInterface::Constraints::initialize
void initialize(Utils::Factory< ObjectHandle > *om)
Definition
constraints/initialize.cpp:54
ScriptInterface
Definition
script_interface/accumulators/AccumulatorBase.hpp:33
ScriptInterface::get_value
T get_value(Variant const &v)
Extract value of specific type T from a Variant.
Definition
get_value.hpp:400
Constraints.hpp
ExternalField.hpp
ExternalPotential.hpp
HomogeneousMagneticField.hpp
ShapeBasedConstraint.hpp
initialize.hpp
src
script_interface
constraints
initialize.cpp
Generated on Fri Nov 8 2024 02:12:53 for ESPResSo by
1.9.8