ESPResSo
Extensible Simulation Package for Research on Soft Matter Systems
Loading...
Searching...
No Matches
integrate.hpp
Go to the documentation of this file.
1
/*
2
* Copyright (C) 2010-2022 The ESPResSo project
3
* Copyright (C) 2002,2003,2004,2005,2006,2007,2008,2009,2010
4
* Max-Planck-Institute for Polymer Research, Theory Group
5
*
6
* This file is part of ESPResSo.
7
*
8
* ESPResSo is free software: you can redistribute it and/or modify
9
* it under the terms of the GNU General Public License as published by
10
* the Free Software Foundation, either version 3 of the License, or
11
* (at your option) any later version.
12
*
13
* ESPResSo is distributed in the hope that it will be useful,
14
* but WITHOUT ANY WARRANTY; without even the implied warranty of
15
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
16
* GNU General Public License for more details.
17
*
18
* You should have received a copy of the GNU General Public License
19
* along with this program. If not, see <http://www.gnu.org/licenses/>.
20
*/
21
22
#pragma once
23
24
/** \file
25
* Molecular dynamics integrator.
26
*
27
* Implementation in \ref integrate.cpp.
28
*/
29
30
#include "
config/config.hpp
"
31
32
#include "
PropagationMode.hpp
"
33
34
#ifdef WALBERLA
35
#include <string>
36
37
#include <
utils/Vector.hpp
>
38
#endif
39
40
/** \name Integrator error codes */
41
/**@{*/
42
#define INTEG_ERROR_RUNTIME -1
43
#define INTEG_ERROR_SIGINT -2
44
/**@}*/
45
46
/** \name Integrator flags */
47
/**@{*/
48
/// recalculate forces unconditionally (mostly used for timing)
49
#define INTEG_REUSE_FORCES_NEVER -1
50
/// recalculate forces only if @ref Propagation::recalc_forces is set
51
#define INTEG_REUSE_FORCES_CONDITIONALLY 0
52
/// do not recalculate forces (mostly when reading checkpoints with forces)
53
#define INTEG_REUSE_FORCES_ALWAYS 1
54
/**@}*/
55
56
#ifdef WALBERLA
57
void
walberla_tau_sanity_checks
(std::string method,
double
tau,
58
double
time_step);
59
void
walberla_agrid_sanity_checks
(std::string method,
60
Utils::Vector3d
const
&geo_left,
61
Utils::Vector3d
const
&geo_right,
62
Utils::Vector3d
const
&lattice_left,
63
Utils::Vector3d
const
&lattice_right,
64
double
agrid);
65
#endif
// WALBERLA
PropagationMode.hpp
Vector.hpp
Vector implementation and trait types for boost qvm interoperability.
Utils::Vector
Definition
Vector.hpp:48
config.hpp
This file contains the defaults for ESPResSo.
walberla_agrid_sanity_checks
void walberla_agrid_sanity_checks(std::string method, Utils::Vector3d const &geo_left, Utils::Vector3d const &geo_right, Utils::Vector3d const &lattice_left, Utils::Vector3d const &lattice_right, double agrid)
Definition
integrate.cpp:282
walberla_tau_sanity_checks
void walberla_tau_sanity_checks(std::string method, double tau, double time_step)
Definition
integrate.cpp:262
src
core
integrate.hpp
Generated on Fri Nov 22 2024 02:13:54 for ESPResSo by
1.9.8