Command line and build options
rockable
rockable [conf-file] [options]
The positional argument is the conf-file to load; it defaults to conf0.
Everything happens in the current folder: the companion files are looked up
there, and the dumps are written there.
Option |
Description |
|---|---|
|
Number of OpenMP threads, 1 by default. The parallel strategy itself is
a conf-file keyword, |
|
Verbosity, from 0 to 6: |
|
Delete |
|
Print the banner, which lists the version, the git tag and the compilation options actually used, then exit. |
|
Non-regression check. After the run, compare the two conf-files line by
line from their |
|
The usual help. |
|
The git tag the binary was built from. |
rockable input.txt -j 8 -v 5
Warning
rockable -c deletes files without asking for a confirmation. Run it in
the folder of the simulation you really mean to clean.
Tip
Any dump is a valid input file, so rockable conf27 -j 8 resumes the
computation from configuration 27. The companion files are re-read from the
folder, which is how a loading can be changed mid-course.
The other executables
Command |
Description |
|---|---|
|
The OpenGL viewer. |
|
Dear My Seer, the Dear ImGui viewer that supersedes |
|
Dear My Shape, the Dear ImGui browser of shape libraries. See Visualisation tools. |
|
Convert every |
|
Run a post-processor over a range of dumps. See Post-processing (postpro). |
|
Build shape files, input files and packings. See the |
|
Inspect and pre-compute a shape library. See Application shapeSurvey. |
|
Generate a tree of input files for a parameter sweep. |
|
Convert a binary STL file into a shape. See Converters. |
Building
git clone https://github.com/richefeu/rockable.git
cd rockable
sh install_rockable.sh
The build happens in BUILD and the binaries are installed into INSTALL.
Depending on the system, a few packages may be needed beforehand: glfw3,
opengl, freeglut, and optionally libpng for PNG screenshots.
To change the options:
cd BUILD
ccmake .
# set the options, then c, then e, then g
cmake ..
make -j
make install
To make the binaries reachable from the shell:
source add_install_to_path.sh
Important
The script must be sourced, not executed. A script run in a subshell
cannot change the PATH of the shell that launched it.
Compilation options
Options that change the physics, or the set of keywords understood. All default
to OFF.
Option |
Effect |
|---|---|
|
Tri-periodic cell: the |
|
Homogeneous straining of the particles, keyword |
|
The special boundary shapes, |
|
Objectivity correction of the tangential forces under large rotations. |
|
Time profiling of the main routines, reported into |
Warning
ROCKABLE_ENABLE_BOUNDARY compiles the Ball and Cylinder
boundaries, but their read methods are still empty stubs in the source.
Enabling the option therefore does not yet give a usable feature.
Options that select what gets compiled:
Option |
Default |
Builds |
|---|---|---|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
the pre-processing tools |
|
|
the regression tests |
Tip
rockable -b prints which of these were actually enabled. It is the
quickest way to explain a keyword that appears to do nothing.
Files of a simulation folder
mySimulation/
input.txt # the conf-file you write
shapes.txt # shape library, named by shapeFile
shapes.rmsh # optional skin meshes, used by see
drivingSystem.txt # optional driving and servo
dataExtractors.txt # optional measurements
see.json # optional view settings
probe.txt # optional measurement box
------------ produced by the run ------------
conf0 conf1 conf2 ... # the dumps
extractedDataDoc.txt # what each extractor column holds
perf.txt # time, efficiency, profiling
kineticEnergy.txt # time, translational and rotational energy
staticBalance.txt # time, equilibrium indicators
checkplots.txt # gnuplot script for the three files above
Tip
gnuplot checkplots.txt plots the performance, the kinetic energy and the
static balance in one go. Watching the kinetic energy fall is the usual way
of deciding that a sample has reached equilibrium.