Configuration files¶
In exaStamp, multiple configuration files are located in the data/config folder. The master configuration file is the main-config.msp file which controls the entire simulation graph and defines both simulation, includes and configuration blocks. The content of main-config.msp and all other configuration files are displayed below.
Files included by default¶
Main configuration¶
The main-config.msp file is included by default by your input file when launching exaStamp. You can redefine its content to define new simulation scenarios at your own risk.
main-config.msp content
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 | |
Particle species¶
The config_species.msp file defines the default periodic table (H to Og) used to generate default particle species, with mass, atomic number and charge, whenever the input data reader does not provide a species description itself. It also defines reduce_species_after_read, which trims this species list down to the species actually present in the system once the input data has been read.
config_species.msp content
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 | |
Default configuration block¶
The config_defaults.msp file defines the configuration block, which sets the default physical units (angstrom, Dalton, picosecond, elementary charge, kelvin, etc.), logging/profiling/debug options, and threading settings (mpimt, pinethreads, num_threads).
config_defaults.msp content
Particle motion and neighbor lists¶
The config_move_particles.msp file defines the operators used to move particles across MPI domains, update ghost particles and neighbor lists, and trigger load balancing. It includes config_load_balance.msp by default, which defines the default load-balancing cost model and RCB-based balancing operators.
config_move_particles.msp content
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 | |
Numerical schemes¶
The config_numerical_schemes.msp file contains the exaStamp default and available numerical schemes: velocity-Verlet NVE, Langevin NVT, Berendsen NVT, and Nosé-Hoover NVT/NPT. The scheme actually used is selected through the numerical_scheme variable.
config_numerical_schemes.msp content
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 | |
Global block¶
The config_globals.msp file defines the global block, which holds simulation-wide default variables such as the number of timesteps, timestep size, restart/snapshot/analysis/thermostate frequencies, and load-balancing parameters.
config_globals.msp content
Thermodynamic state¶
The config_thermostate.msp file defines the trigger, compute, screen-print and file-write operators for the thermodynamic state (temperature, pressure, energy, etc.).
config_thermostate.msp content
Snapshots¶
The config_snapshot.msp file defines the trigger and write operators for simulation snapshots, along with a collection of predefined writers (Paraview, grid VTK, XYZ, LAMMPS data) used for visualization.
config_snapshot.msp content
Restarts¶
The config_restart.msp file defines the trigger and write operators for restart files, along with a collection of predefined writers (ExaStampV4, StampV4, StampV3, native atoms/molecule/rigid-molecule formats) used to continue a stopped simulation.
config_restart.msp content
Analysis¶
The config_analysis.msp file defines the trigger and compute operators for on-the-fly analysis, along with a predefined connected-component labeling operator (perform_analysis_ccl).
config_analysis.msp content
System setup¶
The config_setup_system.msp file contains the default definition of the setup_system block. By default, it tries to read the lastLegacyDump file with StampV3 format. If the read fails, it generates a default species and print the message No input data.
config_setup_system.msp content
Additional available files¶
Additional files available to the includes: command are located in data/config. Depending on your simulation scenario, include them as follows:
Applying deformation¶
Whenever you need to dynamically impose a deformation to your box through the xform_function operator, include the config_deformation.msp file. This file pre-applies a deformation gradient tensor called deformation_xform to the simulation cell and appends the xform_function operator to the md_loop_prolog. This basically means that each timestep, the user-defined deformation will be applied at the end of the step.
config_deformation.msp content
Nosé-Hoover ensembles¶
Whenever you use one of the Nosé-Hoover numerical schemes (verlet_nhnvt or verlet_nhnpt, defined in config_numerical_schemes.msp), include the config_nose_hoover.msp file. It initializes the Nosé-Hoover chain variables and defines nose_hoover_additional_step, the extra integration step these schemes require at the end of each timestep.
config_nose_hoover.msp content
Symmetric force contributions¶
Whenever your force field can exploit Newton's third law to halve pair computations, include the config_update_symmetric_forces.msp file. It zeroes forces and energies on ghost particles too, then adds a step that accumulates ghost contributions back onto local particles before forces are pushed to acceleration.
config_update_symmetric_forces.msp content
Flexible molecules¶
Whenever your simulation involves flexible (bonded) molecules, include the config_molecule.msp file. It switches to an extramolecular neighbor list, adds bonded (bond/bend/torsion/improper) and non-bonded force computations, sets a dedicated molecule restart writer, and adjusts the default domain cell size.
config_molecule.msp content
Rigid molecules¶
Whenever your simulation involves rigid molecules, include the config_rigid_molecule.msp file. It defines rigid-molecule-specific thermodynamic state, restart, and numerical-scheme operators (quaternion/torque integration), plus an optional temperature initialization step.
config_rigid_molecule.msp content
Load balancing auto-tuning¶
Whenever you want the load-balancing cost model to be fitted automatically from measured per-cell compute costs, instead of relying on the fixed cost_model_coefs values, include the config_load_balance_auto_tune.msp file. It periodically profiles the grid and re-fits the cost model at the frequency set by simulation_load_balance_frequency.