SPH
|
Generic storage and input/output routines of settings. More...
#include "objects/Exceptions.h"
#include "objects/geometry/TracelessTensor.h"
#include "objects/utility/EnumMap.h"
#include "objects/wrappers/ClonePtr.h"
#include "objects/wrappers/Expected.h"
#include "objects/wrappers/Flags.h"
#include "objects/wrappers/Interval.h"
#include "objects/wrappers/Outcome.h"
#include "objects/wrappers/Variant.h"
#include <typeinfo>
Go to the source code of this file.
Classes | |
struct | EmptySettingsTag |
Tag for initialization of empty settings object. More... | |
struct | EnumWrapper |
Wrapper of an enum. More... | |
class | InvalidSettingsAccess |
Exception thrown on invalid access to entries of a Settings object. More... | |
class | Settings< TEnum > |
Generic object containing various settings and parameters of the run. More... | |
class | SettingsIterator< TEnum > |
Iterator useful for iterating over all entries in the settings. More... | |
struct | SettingsIterator< TEnum >::IteratorValue |
Typedefs | |
using | RunSettings = Settings< RunSettingsId > |
using | BodySettings = Settings< BodySettingsId > |
Functions | |
template<typename TEnum > | |
INLINE void | checkSettingsAccess (const bool result, const TEnum key) |
Optional< std::string > | getIoExtension (const IoEnum type) |
Returns the file extension associated with given IO type. More... | |
Optional< IoEnum > | getIoEnum (const std::string &ext) |
Returns the file type from file extension. More... | |
std::string | getIoDescription (const IoEnum type) |
Returns a short description of the file format. More... | |
Flags< IoCapability > | getIoCapabilities (const IoEnum type) |
Returns the capabilities of given file format. More... | |
Variables | |
const EmptySettingsTag | EMPTY_SETTINGS |
using BodySettings = Settings<BodySettingsId> |
Definition at line 1622 of file Settings.h.
using RunSettings = Settings<RunSettingsId> |
Definition at line 1618 of file Settings.h.
|
strong |
Definition at line 683 of file Settings.h.
|
strong |
Settings of a single body / gas phase / ...
Combines material parameters and numerical parameters of the SPH method specific for one body. Values of parameters CANNOT be changed to preserve backward compatibility of serializer. New IDs can be created as needed, parameters no longer needed can be removed.
Enumerator | |
---|---|
EOS | Equation of state for this material, see EosEnum for options. |
INITIAL_DISTRIBUTION | Initial distribution of SPH particles within the domain, see DistributionEnum for options. |
CENTER_PARTICLES | If true, generated particles will be moved so that their center of mass corresponds to the center of selected domain. Note that this will potentially move some particles outside of the domain, which can clash with boundary conditions. |
PARTICLE_SORTING | If true, particles are sorted using Morton code, preserving locality in memory. |
DISTRIBUTE_MODE_SPH5 | Turns on 'SPH5 compatibility' mode when generating particle positions. This allows 1-1 comparison of generated arrays, but results in too many generated particles (by about factor 1.4). The option also implies CENTER_PARTICLES. |
DIEHL_STRENGTH | Strength parameter of the Diehl's distribution. |
DIEHL_MAX_DIFFERENCE | Maximum allowed difference between the expected number of particles and the actual number of generated particles. Higher value speed up the generation of particle positions. |
DIEHL_ITERATION_COUNT | Number of iterations of particle repelling. |
SMOOTHING_LENGTH_ETA | Eta-factor between smoothing length and particle concentration (h = eta * n^(-1/d) ) |
DENSITY | Density at zero pressure. |
DENSITY_RANGE | Allowed range of density. Densities of all particles all clamped to fit in the range. |
DENSITY_MIN | Estimated minimal value of density. This value is NOT used to clamp densities, but for determining error of timestepping. |
ENERGY | Initial specific internal energy. |
ENERGY_RANGE | Allowed range of specific internal energy. |
ENERGY_MIN | Estimated minimal value of energy used to determine timestepping error. |
STRESS_TENSOR | Initial values of the deviatoric stress tensor. |
STRESS_TENSOR_MIN | Estimated minial value of stress tensor components used to determined timestepping error. |
DAMAGE | Initial damage of the body. |
DAMAGE_RANGE | Allowed range of damage. |
DAMAGE_MIN | Estimate minimal value of damage used to determine timestepping error. |
ADIABATIC_INDEX | Adiabatic index used by some equations of state (such as ideal gas) |
TAIT_GAMMA | Exponent of density, representing a compressibility of a fluid. Used in Tait equation of state. |
TAIT_SOUND_SPEED | Sound speed used in Tait equation of state. |
BULK_MODULUS | Bulk modulus of the material. |
TILLOTSON_NONLINEAR_B | Coefficient B of the nonlinear compressive term in Tillotson equation. |
TILLOTSON_SMALL_A | "Small a" coefficient in Tillotson equation |
TILLOTSON_SMALL_B | "Small b" coefficient in Tillotson equation |
TILLOTSON_ALPHA | Alpha coefficient in expanded phase of Tillotson equation. |
TILLOTSON_BETA | Beta coefficient in expanded phase of Tillotson equation. |
TILLOTSON_SUBLIMATION | Specific sublimation energy. |
TILLOTSON_ENERGY_IV | Specific energy of incipient vaporization. |
TILLOTSON_ENERGY_CV | Specific energy of complete vaporization. |
GRUNEISEN_GAMMA | Gruneisen's gamma paraemter used in Mie-Gruneisen equation of state. |
BULK_SOUND_SPEED | Used in Mie-Gruneisen equations of state. |
HUGONIOT_SLOPE | Linear Hugoniot slope coefficient used in Mie-Gruneisen equation of state. |
RHEOLOGY_YIELDING | Model of stress reducing used within the rheological model. |
RHEOLOGY_DAMAGE | Model of fragmentation used within the rheological model. |
SHEAR_MODULUS | Shear modulus mu (a.k.a Lame's second parameter) of the material. |
YOUNG_MODULUS | Young modulus of the material. |
ELASTIC_MODULUS | Elastic modulus lambda (a.k.a Lame's first parameter) of the material. |
ELASTICITY_LIMIT | Elasticity limit of the von Mises yielding criterion. |
MELT_ENERGY | Melting energy, used for temperature-dependence of the stress tensor. |
COHESION | Cohesion, yield strength at zero pressure. |
INTERNAL_FRICTION | Coefficient of friction for undamaged material. |
DRY_FRICTION | Coefficient of friction for fully damaged material. |
USE_ACOUSTIC_FLUDIZATION | Whether to use the acoustic fludization model. |
OSCILLATION_DECAY_TIME | Characteristic decay time of acoustic oscillations in the material. |
OSCILLATION_REGENERATION | Regeneration efficiency of acoustric oscillations. |
FLUIDIZATION_VISCOSITY | Effective viscosity of acoustic fludizations. |
RAYLEIGH_SOUND_SPEED | Speed of crack growth, in units of local sound speed. |
WEIBULL_COEFFICIENT | Coefficient (multiplier) of the Weibull distribution of flaws. |
WEIBULL_EXPONENT | Exponent of the Weibull distribution of flaws. |
WEIBULL_SAMPLE_DISTRIBUTIONS | Whether to use precomputed distributions for flaw sampling. Otherwise, flaws are sampled using uniform random number generator, which may be prohibitively slow for large particle counts. |
DISTENTION | Initial value of the material distention, used in the P-alpha model. |
BULK_VISCOSITY | |
SHEAR_VISCOSITY | |
DAMPING_COEFFICIENT | |
DIFFUSIVITY | |
SURFACE_TENSION | Coefficient of surface tension. |
PARTICLE_COUNT | Number of SPH particles in the body. |
MIN_PARTICLE_COUNT | Minimal number of particles per one body. Used when creating 'sub-bodies' withing one 'parent' body, for example when creating rubble-pile asteroids, ice blocks inside an asteroid, etc. Parameter has no effect for creation of a single monolithic body; the number of particles from PARTICLE_COUNT is used in any case. |
AV_ALPHA | Initial alpha coefficient of the artificial viscosity. This is only used if the coefficient is different for each particle. For constant coefficient shared for all particles, use value from global settings. |
AV_ALPHA_RANGE | Lower and upper bound of the alpha coefficient, used only for time-dependent artificial viscosity. |
BULK_POROSITY | Bulk (macro)porosity of the body. |
HEAT_CAPACITY | Heat capacity at constant pressure,. |
BODY_SHAPE_TYPE | |
BODY_CENTER | Center point of the body. Currently used only by StabilizationSolver. |
BODY_RADIUS | |
BODY_DIMENSIONS | |
BODY_HEIGHT | |
BODY_SPIN_RATE | |
VISUALIZATION_TEXTURE | |
IDENTIFIER | Arbitrary string identifying this material. |
Definition at line 1394 of file Settings.h.
|
strong |
Enumerator | |
---|---|
NONE | Do not use any boundary conditions (= vacuum conditions) |
FROZEN_PARTICLES | Highest derivatives of all particles close to the boundary are set to zero. |
GHOST_PARTICLES | Create ghosts to keep particles inside domain. |
FIXED_PARTICLES | Creates dummy particles along the boundary. |
WIND_TUNNEL | Extension of Frozen Particles, pushing particles inside the domain and removing them on the other end. |
PERIODIC | Periodic boundary conditions. |
SYMMETRIC | Particles are duplicated along the z=0 plane. |
KILL_ESCAPERS | Removes particles outside the domain. |
PROJECT_1D | Project all movement onto a line, effectivelly reducing the simulation to 1D. |
Definition at line 604 of file Settings.h.
|
strong |
Definition at line 808 of file Settings.h.
|
strong |
Definition at line 721 of file Settings.h.
|
strong |
Enumerator | |
---|---|
STANDARD | P_i / rho_i^2 + P_j / rho_j^2. |
BENZ_ASPHAUG | (P_i + P_j) / (rho_i rho_j) |
Definition at line 735 of file Settings.h.
|
strong |
Definition at line 1339 of file Settings.h.
|
strong |
Enumerator | |
---|---|
NONE | No computational domain (can only be used with BoundaryEnum::NONE) |
SPHERICAL | Sphere with given radius. |
ELLIPSOIDAL | Axis-aligned ellipsoid. |
BLOCK | Block with edge sizes given by vector. |
CYLINDER | Cylindrical domain aligned with z axis. |
GAUSSIAN_SPHERE | Gaussian random sphere. |
HALF_SPACE | Half-space z>0. |
Definition at line 633 of file Settings.h.
|
strong |
Definition at line 1363 of file Settings.h.
|
strong |
Definition at line 584 of file Settings.h.
|
strong |
List of forces to compute by the solver. This does not include numerical terms, see ArtificialViscosityEnum.
Definition at line 658 of file Settings.h.
|
strong |
Enumerator | |
---|---|
NONE | No fragmentation. |
SCALAR_GRADY_KIPP | Grady-Kipp model of fragmentation using scalar damage. |
TENSOR_GRADY_KIPP | Grady-Kipp model of fragmentation using tensor damage. |
Definition at line 757 of file Settings.h.
|
strong |
Definition at line 785 of file Settings.h.
|
strong |
Definition at line 796 of file Settings.h.
|
strong |
Enumerator | |
---|---|
INPUT | The format can be used as file input. |
OUTPUT | The format can be used as file output. |
Definition at line 906 of file Settings.h.
|
strong |
Definition at line 859 of file Settings.h.
|
strong |
Enumerator | |
---|---|
CUBIC_SPLINE | M4 B-spline (piecewise cubic polynomial) |
FOURTH_ORDER_SPLINE | M5 B-spline (piecewise 4th-order polynomial) |
GAUSSIAN | Gaussian function. |
TRIANGLE | Simple triangle (piecewise linear) kernel. |
CORE_TRIANGLE | Core Triangle (CT) kernel by Read et al. (2010) |
THOMAS_COUCHMAN | Modification of the standard M4 B-spline kernel, used to avoid particle clustering. |
WENDLAND_C2 | Wendland kernel C2. |
WENDLAND_C4 | Wendland kernel C4. |
WENDLAND_C6 | Wendland kernel C6. |
Definition at line 518 of file Settings.h.
|
strong |
Enumerator | |
---|---|
NONE | Do not log anything. |
STD_OUT | Print log to standard output. |
FILE | Print log to file.
|
Definition at line 846 of file Settings.h.
|
strong |
Enumerator | |
---|---|
LINEAR | Constant time between consecutive output times. |
LOGARITHMIC | Constant ratio between consecutive output times. |
CUSTOM | User-defined list of output times. |
Definition at line 918 of file Settings.h.
|
strong |
Definition at line 826 of file Settings.h.
|
strong |
Enumerator | |
---|---|
UNIFORM | Mersenne Twister PRNG from Standard library. |
HALTON | Halton QRNG. |
BENZ_ASPHAUG | Same RNG as used in SPH5, used for 1-1 comparison. |
Definition at line 929 of file Settings.h.
|
strong |
Settings relevant for whole run of the simulation.
Enumerator | |
---|---|
RUN_NAME | User-specified name of the run, used in some output files. |
RUN_COMMENT | User-specified comment. |
RUN_AUTHOR | Name of the person running the simulation. |
RUN_EMAIL | E-mail of the person running the simulation. |
RUN_TYPE | Specifies the type of the simulation. Does not have to be specified to run the simulation; this information is saved in output files and taken into account by visualization tools, for example. |
RUN_OUTPUT_TYPE | Selected format of the output file, see IoEnum. |
RUN_OUTPUT_INTERVAL | Time interval of dumping data to disk. |
RUN_OUTPUT_SPACING | Type of output spacing in time, see enum OutputSpacing. |
RUN_OUTPUT_CUSTOM_TIMES | List of comma-separated output times, used when RUN_OUTPUT_SPACING is set to CUSTOM. |
RUN_OUTPUT_FIRST_INDEX | Index of the first generated output file. Might not be zero if the simulation is resumed. |
RUN_OUTPUT_NAME | File name of the output file (including extension), where d is a placeholder for output number. |
RUN_OUTPUT_PATH | Path where all output files (dumps, logs, ...) will be written. |
RUN_OUTPUT_QUANTITIES | List of quantities to write to text output. Binary output always stores all quantitites. |
RUN_THREAD_CNT | Number of threads used by the code. If 0, all available threads are used. |
RUN_THREAD_GRANULARITY | Number of particles processed by one thread in a single batch. Lower number can help to distribute tasks between threads more evenly, higher number means faster processing of particles within single thread. |
RUN_LOGGER | Selected logger of a run, see LoggerEnum. |
RUN_LOGGER_FILE | Path of a file where the log is printed, used only when selected logger is LoggerEnum::FILE. |
RUN_LOGGER_VERBOSITY | Number specifying log verbosity. Can be between 0 and 3, going from least to most verbose. |
RUN_VERBOSE_ENABLE | Enables verbose log of a simulation. |
RUN_VERBOSE_NAME | Path of a file where the verbose log is printed. |
RUN_START_TIME | Starting time of the simulation in seconds. This is usually 0, although it can be set to a non-zero for simulations resumed from saved state. |
RUN_END_TIME | End time of the simulation in seconds. For new simulations (not resumed from saved state), this corresponds to the total duration of the simulation. |
RUN_TIMESTEP_CNT | Maximum number of timesteps after which run ends. 0 means run duration is not limited by number of timesteps. Note that if adaptive timestepping is used, run can end at different times for different initial conditions. This condition should only be used for debugging purposes. |
RUN_WALLCLOCK_TIME | Maximum duration of the run in milliseconds, measured in real-world time. 0 means run duration is not limited by this value. |
RUN_RNG | Selected random-number generator used within the run. |
RUN_RNG_SEED | Seed for the random-number generator. |
RUN_DIAGNOSTICS_INTERVAL | Time period (in run time) of running diagnostics of the run. 0 means the diagnostics are run every time step. |
SPH_SOLVER_TYPE | Selected solver for computing derivatives of physical variables. |
SPH_SOLVER_FORCES | List of forces to compute by the solver. |
SPH_ADAPTIVE_SMOOTHING_LENGTH | Solution for evolutions of the smoothing length. |
SPH_SUMMATION_MAX_ITERATIONS | Maximum number of iterations for self-consistent density computation of summation solver. |
SPH_SUMMATION_DENSITY_DELTA | Target relative difference of density in successive iterations. Density computation in summation solver is ended when the density changes by less than the delta or the iteration number exceeds SOLVER_SUMMATION_MAX_ITERATIONS. |
SPH_ASYMMETRIC_COMPUTE_RADII_HASH_MAP | If true, the SPH solver computes a hash map connecting position in space with required search radius. Otherwise, the radius is determined from the maximal smoothing length in the simulation. Used only by the AsymmetricSolver. |
SPH_KERNEL | Index of SPH Kernel, see KernelEnum. |
SPH_FINDER | Structure for searching nearest neighbours of particles. |
SPH_DISCRETIZATION | Specifies a discretization of SPH equations; see DiscretizationEnum. |
SPH_STRAIN_RATE_CORRECTION_TENSOR | If true, the kernel gradient for evaluation of strain rate will be corrected for each particle by an inversion of an SPH-discretized identity matrix. This generally improves stability of the run and conservation of total angular momentum, but comes at the cost of higher memory consumption and slower evaluation of SPH derivatives. |
SPH_SUM_ONLY_UNDAMAGED | If true, derivatives with flag DerivativeFlag::SUM_ONLY_UNDAMAGED will evaluate only undamaged particles belonging to the same body. Otherwise, all particle are evaluated, regardless of derivative flags. |
SPH_CONTINUITY_MODE | Specifies how the density is evolved, see ContinuityEnum. |
SPH_PHASE_ANGLE | Evolve particle phase angle. |
SPH_NEIGHBOUR_RANGE | Minimum and maximum number of neighbours SPH solver tries to enforce. Note that the solver cannot guarantee the actual number of neighbours will be within the range. |
SPH_NEIGHBOUR_ENFORCING | Strength of enforcing neighbour number. Higher value makes enforcing more strict (number of neighbours gets into required range faster), but also makes code less stable. Can be a negative number, -INFTY technically disables enforcing altogether. |
SPH_AV_ALPHA | Artificial viscosity alpha coefficient. |
SPH_AV_BETA | Artificial viscosity beta coefficient. |
SPH_SMOOTHING_LENGTH_MIN | Minimal value of smoothing length. |
SPH_AV_TYPE | Type of used artificial viscosity. |
SPH_AV_USE_BALSARA | Whether to use balsara switch for computing artificial viscosity dissipation. If no artificial viscosity is used, the value has no effect. |
SPH_AV_BALSARA_STORE | If true, Balsara factors will be saved as quantity AV_BALSARA. Mainly for debugging purposes. |
SPH_USE_AC | Enables the artificial thermal conductivity term. |
SPH_AC_ALPHA | Artificial conductivity alpha coefficient. |
SPH_AC_BETA | Artificial conductivity beta coefficient. |
SPH_AC_SIGNAL_SPEED | Type of the signal speed used by artificial conductivity. |
SPH_USE_XSPH | Turn on the XSPH correction. |
SPH_XSPH_EPSILON | Epsilon-factor of XSPH correction (Monaghan, 1992). Value 0 turns off the correction, epsilon shouldn't be larger than 1. |
SPH_USE_DELTASPH | Turn on the delta-SPH correction. |
SPH_DENSITY_DIFFUSION_DELTA | Delta-coefficient of the delta-SPH modification, see Marrone et al. 2011. |
SPH_VELOCITY_DIFFUSION_ALPHA | Alpha-coefficient of the delta-SPH modification. |
SPH_AV_USE_STRESS | Whether to use artificial stress. |
SPH_AV_STRESS_EXPONENT | Weighting function exponent n in artificial stress term. |
SPH_AV_STRESS_FACTOR | Multiplicative factor of the artificial stress term (= strength of the viscosity) |
SPH_STABILIZATION_DAMPING | Damping coefficient of particle velocities, mainly intended for setting up initial conditions. Higher values damp the oscillation/instabilities faster, but may converge to incorrect (unstable) configuration. Lower values lead to (slower) convergence to correct (stable) configuration, but it may cause body dissintegration if the initial conditions are to far from the stable solution. Zero disables the damping. |
SPH_DI_ALPHA | Alpha parameter of the density-independent solver. |
SPH_SCRIPT_ENABLE | Enables or disables scripted term. |
SPH_SCRIPT_FILE | Path of an arbitrary ChaiScript script executed each timestep. |
SPH_SCRIPT_PERIOD | Period or time point to execute the script. Zero means the time step is executed immediately or every time step, depending on the value of SPH_SCRIPT_ONESHOT. |
SPH_SCRIPT_ONESHOT | Whether to execute the script only once or periodically. |
NBODY_INERTIA_TENSOR | If true, all particles have also a moment of inertia, representing a non-homogeneous mass distribution. Otherwise, particles are spherical with inertia tensor I = 2/5 mr^2 |
NBODY_MAX_ROTATION_ANGLE | |
NBODY_AGGREGATES_ENABLE | If true, colliding particles form aggregates, which then move and rotate as rigid bodies. There are no collisions between particles belonging to the same aggregate, only collisions of different aggregates need to be handled. Note that enabling aggregates overrides handlers of collisions and overlaps. |
NBODY_AGGREGATES_SOURCE | Specifies the initial aggregates used in the simulation. See AggregateEnum. |
GRAVITY_SOLVER | Algorithm to compute gravitational acceleration. |
GRAVITY_OPENING_ANGLE | Opening angle Theta for multipole approximation of gravity. |
GRAVITY_MULTIPOLE_ORDER | Order of multipole expansion. |
GRAVITY_KERNEL | Gravity smoothing kernel. |
GRAVITY_CONSTANT | Gravitational constant. To be generalized. |
GRAVITY_RECOMPUTATION_PERIOD | Period of gravity evaluation. If zero, gravity is computed every time step, for any positive value, gravitational acceleration is cached for each particle and used each time step until next recomputation. |
COLLISION_HANDLER | Specifies how the collisions of particles should be handler; see CollisionHandlerEnum. |
COLLISION_OVERLAP | Specifies how particle overlaps should be handled. |
COLLISION_RESTITUTION_NORMAL | Coefficient of restitution for normal component (alongside particle direction vector) of velocity. Applicable only for bounce collisions. |
COLLISION_RESTITUTION_TANGENT | Coefficient of restitution for tangent component (perpendicular to particle direction vector) of velocity. Applicable only for bounce collisions. |
COLLISION_ALLOWED_OVERLAP | Relative particle overlap (0 for particles in contact, 1 for particles lying on top of each other) for which the collision is handled as overlap. Used to avoid very small (<EPS) overlaps not being handled as collision due to numerical imprecisions. |
COLLISION_BOUNCE_MERGE_LIMIT | Multiplier of the relative velocity, used when determining whether to merge the collided particles or reject the collision. If zero, particles are always merged. Larger values than 1 can be used to merge only very slowly moving particles. |
COLLISION_ROTATION_MERGE_LIMIT | Parameter analogous to COLLISION_BOUNCE_MERGE_LIMIT, but used for the rotation of the merger. Particles can only be merged if the angular frequency multiplied by this parameter is lower than the breakup frequency. If zero, particles are always merged, values larger than 1 can be used to avoid fast rotators in the simulation. |
SOFT_REPEL_STRENGTH | Magnitude of the repel force for the soft-body solver. |
SOFT_FRICTION_STRENGTH | Magnitude of the friction force for the soft-body solver. |
TIMESTEPPING_INTEGRATOR | Selected timestepping integrator. |
TIMESTEPPING_COURANT_NUMBER | Courant number. |
TIMESTEPPING_MAX_TIMESTEP | Upper limit of the time step. The timestep is guaranteed to never exceed this value for any timestep criterion. The lowest possible timestep is not set, timestep can be any positive value. |
TIMESTEPPING_INITIAL_TIMESTEP | Initial value of time step. If dynamic timestep is disabled, the run will keep the initial timestep for the whole duration. Some timestepping algorithms might not use the initial timestep and directly compute new value of timestep, in which case this parameter has no effect. |
TIMESTEPPING_CRITERION | Criterion used to determine value of time step. More criteria may be compined, in which case the smallest time step of all is selected. |
TIMESTEPPING_DERIVATIVE_FACTOR | Multiplicative factor k for the derivative criterion; dt = k * v / dv. |
TIMESTEPPING_DIVERGENCE_FACTOR | Multiplicative factor for the divergence criterion. |
TIMESTEPPING_MEAN_POWER | Power of the generalized mean, used to compute the final timestep from timesteps of individual particles. Negative infinity means the minimal timestep is used. This value will also set statistics of the restricting particle, namely the particle index and the quantity value and corresponding derivative of the particle; these statistics are not saved for other powers. |
TIMESTEPPING_MAX_INCREASE | Maximum relative increase of a timestep in two subsequent timesteps. Used to 'smooth' the timesteps, as it prevents very fast increase of the time step, especially if the initial time step is very low. Used only by MultiCriterion. |
TIMESTEPPING_MIDPOINT_COUNT | Number of sub-steps in the modified midpoint method. |
TIMESTEPPING_BS_ACCURACY | Required relative accuracy of the Bulirsch-Stoer integrator. |
FRAME_ANGULAR_FREQUENCY | Global rotation of the coordinate system around axis (0, 0, 1) passing through origin. If non-zero, causes non-intertial acceleration. |
FRAME_CONSTANT_ACCELERATION | |
FRAME_TIDES_MASS | |
FRAME_TIDES_POSITION | |
FINDER_LEAF_SIZE | Maximum number of particles in a leaf node. |
FINDER_MAX_PARALLEL_DEPTH | Maximal in a a tree depth to be processed in parallel. While a larger value implies better distribution of work between threads, it also comes up with performance penalty due to scheduling overhead. |
DOMAIN_TYPE | Computational domain, enforced by boundary conditions. |
DOMAIN_BOUNDARY | Type of boundary conditions. |
DOMAIN_CENTER | Center point of the domain. |
DOMAIN_RADIUS | Radius of a spherical and cylindrical domain. |
DOMAIN_HEIGHT | Height of a cylindrical domain. |
DOMAIN_SIZE | (Vector) size of a block domain |
DOMAIN_GHOST_MIN_DIST | Minimal distance between a particle and its ghost, in units of smoothing length. |
DOMAIN_FROZEN_DIST | Distance to the boundary in units of smoothing length under which the particles are frozen. |
GENERATE_UVWS | If true, the mapping coordinates will be computed and saved for all bodies in the simulation. |
UVW_MAPPING | Type of the UV mapping. |
Definition at line 949 of file Settings.h.
|
strong |
Definition at line 777 of file Settings.h.
|
strong |
Definition at line 768 of file Settings.h.
|
strong |
Definition at line 697 of file Settings.h.
|
strong |
Definition at line 567 of file Settings.h.
|
strong |
Definition at line 547 of file Settings.h.
|
strong |
Enumerator | |
---|---|
PLANAR | Planar mapping. |
SPHERICAL | Spherical mapping. |
Definition at line 940 of file Settings.h.
|
strong |
Definition at line 743 of file Settings.h.
INLINE void checkSettingsAccess | ( | const bool | result, |
const TEnum | key | ||
) |
Definition at line 87 of file Settings.h.
Flags<IoCapability> getIoCapabilities | ( | const IoEnum | type | ) |
Returns the capabilities of given file format.
Definition at line 412 of file Settings.cpp.
std::string getIoDescription | ( | const IoEnum | type | ) |
Returns a short description of the file format.
Definition at line 387 of file Settings.cpp.
Returns the file type from file extension.
Result NOTHING indicates there is no file type associated with the extension.
Definition at line 367 of file Settings.cpp.
Returns the file extension associated with given IO type.
Result NOTHING indicates there is no particular extension associated with the IO type.
Definition at line 343 of file Settings.cpp.
const EmptySettingsTag EMPTY_SETTINGS |
Definition at line 32 of file Settings.h.