Advanced Parameters

SPONGE 2.0 documentation: Advanced Parameters.

Organized by GPT-6-Astra. SPONGE 2.0 is under active, iterative development; features, parameters, and documentation may change. Consult the GitHub repository’s docs and skills for the latest version information.

Source snapshot for this page.

Advanced Parameters

Device and Parallelism

ParameterTypeDefaultDescription
devicestringauto-detectedGPU device ID
device_optimized_blockint-GPU block size optimization

Domain Decomposition

MPI domain decomposition parameters are read from the [DOM_DEC] scope:

[DOM_DEC]
update_interval = 100
split_nx = 2
split_ny = 2
split_nz = 1
ParameterScopeTypeDefaultDescription
update_intervalDOM_DECint100Domain-decomposition refresh interval
split_nxDOM_DECintautoNumber of splits in X
split_nyDOM_DECintautoNumber of splits in Y
split_nzDOM_DECintautoNumber of splits in Z

When the split counts are omitted, SPONGE chooses them automatically from the PP MPI size and box geometry. Current MPI domain decomposition only supports orthogonal boxes.

Minimization

Minimization-specific parameters use the [minimization] scope:

mode = "minimization"

[minimization]
dynamic_dt = 1
max_move = 0.1
beta1 = 0.9
epsilon = 1e-4
ParameterScopeTypeDefaultDescription
dynamic_dtminimizationint1Use the ADAM-like dynamic-step minimizer
max_moveminimizationfloat0.1Maximum coordinate displacement per step in angstrom
momentum_keepminimizationfloat0.0 when dynamic_dt = 0Momentum retention factor in gradient-descent mode
beta1minimizationfloat0.9First ADAM parameter used when dynamic_dt != 0
beta2minimizationfloat0.9 in the current sourceSecond ADAM parameter used when dynamic_dt != 0
epsilonminimizationfloat1e-4Numerical stabilizer used when dynamic_dt != 0

When dynamic_dt != 0, SPONGE internally resets dt to 3e-4 ps. When dynamic_dt = 0, it uses a tiny fixed dt and the gradient-descent path.

Rerun Mode

rerun uses the normal top-level trajectory file keys plus several rerun-specific flat keys:

mode = "rerun"
crd = "traj.dat"
box = "traj.box"
vel = "traj.vel"
frame_limit = 1000
rerun_start = 0
rerun_strip = 0
rerun_need_box_update = 0
ParameterScopeTypeDefaultDescription
crdtop-levelstringrequiredInput coordinate trajectory for rerun
boxtop-levelstringrequiredInput box trajectory for rerun
veltop-levelstringoptionalInput velocity trajectory for rerun
frame_limittop-levelint-Maximum number of rerun frames
rerun_frame_limittop-levelintalias of frame_limitCompatibility alias
rerun_starttop-levelint0Starting frame offset
rerun_striptop-levelint0Number of frames skipped between processed frames
rerun_need_box_updatetop-levelint0Whether to update the box deformation tensor during rerun

The current source uses flat rerun_* keys rather than a [rerun] TOML section.

Wall Constraints

Hard Walls

Hard-wall limits are configured through the [hard_wall] prefix:

[hard_wall]
x_low = 0.0
x_high = 40.0
ParameterScopeTypeDescription
x_low, x_highhard_wallfloatHard-wall position in the X direction
y_low, y_highhard_wallfloatHard-wall position in the Y direction
z_low, z_highhard_wallfloatHard-wall position in the Z direction

Hard walls cannot be used in npt mode.

Soft Walls

Soft walls are enabled by providing a configuration file:

[soft_walls]
in_file = "soft_walls.txt"
ParameterScopeTypeDescription
in_filesoft_wallsstringSoft-wall configuration file path

ReaxFF Reactive Force Field

Configured via [REAXFF] section:

[REAXFF]
in_file = "ffield.reax.cho"
type_in_file = "atom_types.txt"
ParameterTypeDescription
in_filestringReaxFF parameter file
type_in_filestringAtom type mapping file

Generalized Born

Generalized Born parameters are configured through the [gb] scope:

[gb]
in_file = "gb.txt"
epsilon = 78.5
radii_offset = 0.09
radii_cutoff = 25.0
ParameterScopeTypeDefaultDescription
in_filegbstring-Native GB parameter file
epsilongbfloat78.5Relative dielectric constant
radii_offsetgbfloat0.09Offset subtracted from self radii
radii_cutoffgbfloatcutoffCutoff used when building effective Born radii

LJ Soft Core

If a native soft-core LJ parameter file is provided through LJ_soft_core_in_file, SPONGE also reads several top-level alchemical parameters:

ParameterScopeTypeDefaultDescription
lambda_ljtop-levelfloatrequiredSoft-core LJ coupling parameter
soft_core_alphatop-levelfloat0.5Soft-core alpha parameter
soft_core_powfertop-levelfloat1.0Soft-core power parameter
soft_core_sigmatop-levelfloat3.0Soft-core sigma parameter
soft_core_sigma_mintop-levelfloat0.0Lower bound for the effective sigma term

These keys are top-level in the current source, not nested under [LJ_soft_core].

Custom Forces

ParameterScopeTypeDescription
in_filepairwise_forcestringPairwise-force configuration file
in_filelisted_forcesstringListed-force configuration file

Output Mapping For Periodic Molecules

ParameterScopeTypeDefaultDescription
force_whole_outputtop-levelboolfalseForce whole-molecule output mapping for periodic systems
make_output_wholetop-levelstring-Extra connectivity edges written as atom_i-atom_j pairs to help rebuild whole molecules

These keys are only meaningful when pbc = true.

Solvent LJ Shortcut

ParameterScopeTypeDefaultDescription
solvent_LJtop-levelboolautoEnable the water-specific solvent LJ shortcut

On GPU builds, if solvent_LJ is omitted, SPONGE may enable it automatically for suitable water-only tail residues. Setting the key explicitly overrides that heuristic.

Plugins

Plugins are configured by the top-level key plugin, which is a whitespace- separated list of shared-library paths. This is not currently a TOML table interface.

Control Parameters

ParameterTypeDefaultDescription
command_onlyboolfalseUse command-line arguments only, skip mdin file
dont_check_inputboolfalseSkip unused parameter checking
end_pauseboolfalsePause after simulation ends