feat: add dice input generation and player routines for NVT/NPT simulations

This commit is contained in:
2026-03-14 18:28:15 -03:00
parent 53eb34a83e
commit 9f22304dd8
10 changed files with 534 additions and 51 deletions

View File

@@ -29,6 +29,13 @@ class DiceConfig(BaseModel):
upbuf: int = Field(
360, description="Buffer size for the potential energy calculations"
)
irdf: int = Field(
0,
description="Flag for calculating radial distribution functions (0: no, 1: yes)",
)
vstep: int = Field(
5000, description="Frequency of volume change moves in NPT simulations"
)
combrule: Literal["+", "*"] = Field(
"*", description="Combination rule for the Lennard-Jones potential"
)

View File

@@ -20,7 +20,20 @@ class RoutineType(str, Enum):
class PlayerConfig(BaseModel):
"""
Data Transfer Object for the player configuration.
Configuration for DICEPlayer simulations.
Attributes:
type: Type of simulation to perform (charge, geometry, or both).
max_cyc: Maximum number of cycles for the geometry optimization.
switch_cyc: Cycle at which to switch from charge to geometry optimization (if type is "both").
mem: Memory configuration for QM calculations.
nprocs: Number of processors to use for QM calculations.
ncores: Number of cores to use for QM calculations.
dice: Configuration parameters specific to DICE simulations.
gaussian: Configuration parameters specific to Gaussian calculations.
altsteps: Number of steps for the alternate simulation (default: 20000).
geoms_file: File name for the geometries output (default: "geoms.xyz").
simulation_dir: Directory name for the simulation files (default: "simfiles").
"""
model_config = ConfigDict(