Settings via preprocessor directives, typedefs, constants, structs. More...
#include <limits>#include <iostream>
Include dependency graph for parameter.h:
This graph shows which files directly or indirectly include this file:
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.