Job
- nimbus_splash.job.parse_input_contents(input_file: str | Path, instance_name: str, skip_xyz: bool = False) dict[str, Path]
Checks contents of input file and returns file dependencies
- Parameters:
input_file (str | pathlib.Path) – Full path to orca input file
instance_name (str) – Name of Nimbus instance e.g. spot-fsv2-32
skip_xyz (bool, default False) – If True, skips checking of xyz file formatting
- Returns:
Relative paths of files required by this this input file
Key is identifier (xyz, gbw, hess), Value is file name as Path object
- Return type:
dict[str, pathlib.Path]
- Raises:
ValueError – If errors encountered in input file format or xyz file format
FileNotFound – If xyz, gbw, or hessian file cannot be found
Warning – If specified per-core memory exceeds instance limit
- nimbus_splash.job.write_file(input_file: str | Path, instance_name: str, time: str, dependencies: dict[str, str | Path], orca_version: str, research_allocation_id: str, verbose: bool = False, email: str = '', job_name: str = None) str
Writes slurm jobscript to file for ORCA calculation on nimbus
Output file name is input_file with .slm extension
- Parameters:
input_file (str | pathlib.Path) – Full path to input file, including extension
instance_name (str) – Name of Nimbus instance to use e.g. spot-hc-44
time (str) – Job time limit formatted as HH:MM:SS
verbose (bool, default=False) – If True, prints job file name to screen
dependencies (dict[str | pathlib.Path]) – Files required by job - e.g. xyz, gbw, hess
orca_version (str) – string name of orca version e.g. 5.0.4
research_allocation_id (str) – Research allocation ID
email (str, optional) –
If provided, adds the specified email to the jobscript.
Users recieve an email for all changes in job status
job_name (str, optional) – Name of job. If not provided, then job name defaults to stem of input file
- Returns:
Name of jobscript file
- Return type:
str
- Raises:
ValueError – If ORCA version not available on instance