Settings via preprocessor directives, typedefs, constants, structs. More...
#include <limits>
#include <iostream>
Go to the source code of this file.
Classes | |
struct | SimulationParameters |
struct | To |
Specify target: device or host. More... | |
struct | Smoothing |
(SPH) available smoothing kernels. More... | |
struct | Execution |
Execution location (host/device). More... | |
struct | Curve |
Available space-filling curves. More... | |
struct | IntegratorSelection |
Available integrators. More... | |
struct | Entry |
Namespaces | |
namespace | Constants |
(Physical) constants | |
Macros | |
#define | MAX_LEVEL 21 |
#define | DEBUGGING 0 |
#define | SAFETY_LEVEL 1 |
#define | DIM 3 |
Dimension of the problem. More... | |
#define | power_two(x) (1 << (x)) |
#define | POW_DIM power_two(DIM) |
#define | SI_UNITS 0 |
[0]: natural units, [1]: SI units More... | |
#define | CUBIC_DOMAINS 1 |
#define | GRAVITY_SIM 1 |
Simulation with gravitational forces. More... | |
#define | SPH_SIM 0 |
SPH simulation. More... | |
#define | INTEGRATE_ENERGY 0 |
integrate energy equation More... | |
#define | INTEGRATE_DENSITY 0 |
integrate density equation More... | |
#define | INTEGRATE_SML 0 |
integrate smoothing length More... | |
#define | DECOUPLE_SML 0 |
decouple smoothing length for pc integrator(s) More... | |
#define | VARIABLE_SML 0 |
variable smoothing length More... | |
#define | SML_CORRECTION 0 |
correct smoothing length More... | |
#define | SPH_EQU_VERSION 1 |
#define | ARTIFICIAL_VISCOSITY 1 |
#define | BALSARA_SWITCH 0 |
#define | AVERAGE_KERNELS 0 |
#define | DEAL_WITH_TOO_MANY_INTERACTIONS 0 |
#define | SHEPARD_CORRECTION 0 |
#define | SOLID 0 |
#define | NAVIER_STOKES 0 |
#define | ARTIFICIAL_STRESS 0 |
#define | POROSITY 0 |
#define | ZERO_CONSISTENCY 0 |
#define | LINEAR_CONSISTENCY 0 |
#define | FRAGMENTATION 0 |
#define | PALPHA_POROSITY 0 |
#define | PLASTICITY 0 |
#define | KLEY_VISCOSITY 0 |
#define | KEY_MAX ULONG_MAX |
#define | DOMAIN_LIST_SIZE 512 |
#define | MAX_DEPTH 128 |
#define | MAX_NUM_INTERACTIONS 180 |
#define | NUM_THREADS_LIMIT_TIME_STEP 256 |
#define | NUM_THREADS_CALC_CENTER_OF_MASS 256 |
#define | COURANT_FACT 0.4 |
#define | FORCES_FACT 0.2 |
#define | DBL_MAX dbl_max; |
Typedefs | |
typedef double | real |
typedef int | integer |
typedef unsigned long | keyType |
typedef int | idInteger |
typedef struct SimulationParameters | SimulationParameters |
Enumerations | |
enum | EquationOfStates { EOS_TYPE_POLYTROPIC_GAS = 0 , EOS_TYPE_ISOTHERMAL_GAS = 3 , EOS_TYPE_IDEAL_GAS = 9 , EOS_TYPE_LOCALLY_ISOTHERMAL_GAS = 12 , EOS_TYPE_POLYTROPIC_GAS = 0 , EOS_TYPE_ISOTHERMAL_GAS = 3 , EOS_TYPE_IDEAL_GAS = 9 , EOS_TYPE_LOCALLY_ISOTHERMAL_GAS = 12 } |
implemented equation of states More... | |
Variables | |
constexpr real | dbl_max = std::numeric_limits<real>::max() |
constexpr real | Constants::G = 6.67430e-11 |
Gravitational constant. More... | |
Settings via preprocessor directives, typedefs, constants, structs.
Many pre-processor directives are part of the implementation. The code can be used for simulations in one dimension, two dimensions and three dimensions via conditional compiling in dependence of the pre-processor directive DIM.
DIM 1
and DIM 2
and therefore no statement about the functionality and correctness can be made at this point.Most important are the flags GRAVITY_SIM and SPH_SIM which enable or disable the gravitational and SPH part of the code.
Definition in file parameter.h.
#define ARTIFICIAL_STRESS 0 |
Definition at line 93 of file parameter.h.
#define ARTIFICIAL_VISCOSITY 1 |
Definition at line 84 of file parameter.h.
#define AVERAGE_KERNELS 0 |
Definition at line 88 of file parameter.h.
#define BALSARA_SWITCH 0 |
Definition at line 85 of file parameter.h.
#define COURANT_FACT 0.4 |
Definition at line 111 of file parameter.h.
#define CUBIC_DOMAINS 1 |
Definition at line 46 of file parameter.h.
#define DBL_MAX dbl_max; |
Definition at line 116 of file parameter.h.
#define DEAL_WITH_TOO_MANY_INTERACTIONS 0 |
Definition at line 89 of file parameter.h.
#define DEBUGGING 0 |
Definition at line 27 of file parameter.h.
#define DECOUPLE_SML 0 |
decouple smoothing length for pc integrator(s)
Definition at line 64 of file parameter.h.
#define DIM 3 |
Dimension of the problem.
Definition at line 38 of file parameter.h.
#define DOMAIN_LIST_SIZE 512 |
Definition at line 104 of file parameter.h.
#define FORCES_FACT 0.2 |
Definition at line 113 of file parameter.h.
#define FRAGMENTATION 0 |
Definition at line 97 of file parameter.h.
#define GRAVITY_SIM 1 |
Simulation with gravitational forces.
Definition at line 49 of file parameter.h.
#define INTEGRATE_DENSITY 0 |
integrate density equation
Definition at line 58 of file parameter.h.
#define INTEGRATE_ENERGY 0 |
integrate energy equation
Definition at line 55 of file parameter.h.
#define INTEGRATE_SML 0 |
integrate smoothing length
Definition at line 61 of file parameter.h.
#define KEY_MAX ULONG_MAX |
Definition at line 102 of file parameter.h.
#define KLEY_VISCOSITY 0 |
Definition at line 100 of file parameter.h.
#define LINEAR_CONSISTENCY 0 |
Definition at line 96 of file parameter.h.
#define MAX_DEPTH 128 |
Definition at line 105 of file parameter.h.
#define MAX_LEVEL 21 |
Definition at line 25 of file parameter.h.
#define MAX_NUM_INTERACTIONS 180 |
Definition at line 106 of file parameter.h.
#define NAVIER_STOKES 0 |
Definition at line 92 of file parameter.h.
#define NUM_THREADS_CALC_CENTER_OF_MASS 256 |
Definition at line 108 of file parameter.h.
#define NUM_THREADS_LIMIT_TIME_STEP 256 |
Definition at line 107 of file parameter.h.
#define PALPHA_POROSITY 0 |
Definition at line 98 of file parameter.h.
#define PLASTICITY 0 |
Definition at line 99 of file parameter.h.
#define POROSITY 0 |
Definition at line 94 of file parameter.h.
Definition at line 40 of file parameter.h.
#define power_two | ( | x | ) | (1 << (x)) |
Definition at line 39 of file parameter.h.
#define SAFETY_LEVEL 1 |
SAFETY_LEVEL 0
: almost no safety measuresSAFETY_LEVEL 1
: most relevant/important safety measuresSAFETY_LEVEL 2
: more safety measures, including assertionsSAFETY_LEVEL 3
: many security measures, including all assertions Definition at line 35 of file parameter.h.
#define SHEPARD_CORRECTION 0 |
Definition at line 90 of file parameter.h.
#define SI_UNITS 0 |
[0]: natural units, [1]: SI units
Definition at line 43 of file parameter.h.
#define SML_CORRECTION 0 |
correct smoothing length
Definition at line 70 of file parameter.h.
#define SOLID 0 |
Definition at line 91 of file parameter.h.
#define SPH_EQU_VERSION 1 |
Choose the SPH representation to solve the momentum and energy equation:
Definition at line 81 of file parameter.h.
#define SPH_SIM 0 |
SPH simulation.
Definition at line 52 of file parameter.h.
#define VARIABLE_SML 0 |
variable smoothing length
Definition at line 67 of file parameter.h.
#define ZERO_CONSISTENCY 0 |
Definition at line 95 of file parameter.h.
typedef int idInteger |
Definition at line 19 of file parameter.h.
typedef int integer |
Definition at line 17 of file parameter.h.
typedef unsigned long keyType |
Definition at line 18 of file parameter.h.
typedef double real |
Type definitions
real
corresponds to floating point precision for whole programkeyType
influences the maximal tree depthDefinition at line 15 of file parameter.h.
typedef struct SimulationParameters SimulationParameters |
enum EquationOfStates |
implemented equation of states
Enumerator | |
---|---|
EOS_TYPE_POLYTROPIC_GAS | |
EOS_TYPE_ISOTHERMAL_GAS | polytropic EOS for gas, needs polytropic_K and polytropic_gamma in material.cfg file |
EOS_TYPE_IDEAL_GAS | this is pure molecular hydrogen at 10 K |
EOS_TYPE_LOCALLY_ISOTHERMAL_GAS | ideal gas equation, set polytropic_gamma in material.cfg |
EOS_TYPE_POLYTROPIC_GAS | polytropic EOS for gas, needs polytropic_K and polytropic_gamma in material.cfg file |
EOS_TYPE_ISOTHERMAL_GAS | this is pure molecular hydrogen at 10 K |
EOS_TYPE_IDEAL_GAS | ideal gas equation, set polytropic_gamma in material.cfg |
EOS_TYPE_LOCALLY_ISOTHERMAL_GAS | locally isothermal gas: \( p = c_s^2 \cdot \rho \) |
Definition at line 233 of file parameter.h.
Definition at line 115 of file parameter.h.