dara.settings module#

Default DARA settings. This approach was inspired by the atomate2 package.

pydantic settings DaraSettings[source]#

Bases: BaseSettings

Settings for DARA.

To edit these, please modify the config YAML file. By default, this is located at ~/.dara.yaml, but one can specify the path by setting the environment variable: “DARA_CONFIG_FILE”.

Show JSON schema
{
   "title": "DaraSettings",
   "description": "Settings for DARA.\n\nTo edit these, please modify the config YAML file. By default, this is located at\n~/.dara.yaml, but one can specify the path by setting the environment variable:\n\"DARA_CONFIG_FILE\".",
   "type": "object",
   "properties": {
      "CONFIG_FILE": {
         "default": "~/.dara.yaml",
         "description": "File to load alternative defaults from.",
         "title": "Config File",
         "type": "string"
      },
      "PATH_TO_ICSD": {
         "default": "/home/runner/ICSD_2024/ICSD_2024_experimental_inorganic/experimental_inorganic",
         "format": "path",
         "title": "Path To Icsd",
         "type": "string"
      },
      "PATH_TO_COD": {
         "default": "/home/runner/COD_2024",
         "format": "path",
         "title": "Path To Cod",
         "type": "string"
      },
      "BGMN_N_THREADS": {
         "default": 1,
         "description": "Number of internal threads BGMN uses per refinement. Kept at 1 by default so worker parallelism (RAY_NUM_CPUS) doesn't oversubscribe the machine's cores. Override with the DARA_BGMN_N_THREADS env var.",
         "title": "Bgmn N Threads",
         "type": "integer"
      },
      "RAY_NUM_CPUS": {
         "description": "Number of CPUs Ray is told it has available, passed explicitly to ray.init() so it doesn't auto-detect (which grabs the whole node under SLURM). Defaults to the runtime-detected usable core count. Override with the DARA_RAY_NUM_CPUS env var.",
         "title": "Ray Num Cpus",
         "type": "integer"
      }
   },
   "additionalProperties": false
}

Config:
  • env_prefix: str = dara_

Fields:
Validators:
field BGMN_N_THREADS: int = 1#

Number of internal threads BGMN uses per refinement. Kept at 1 by default so worker parallelism (RAY_NUM_CPUS) doesn’t oversubscribe the machine’s cores. Override with the DARA_BGMN_N_THREADS env var.

Validated by:
field CONFIG_FILE: str = '~/.dara.yaml'#

File to load alternative defaults from.

Validated by:
field PATH_TO_COD: Path = PosixPath('/home/runner/COD_2024')#
Validated by:
field PATH_TO_ICSD: Path = PosixPath('/home/runner/ICSD_2024/ICSD_2024_experimental_inorganic/experimental_inorganic')#
Validated by:
field RAY_NUM_CPUS: int [Optional]#

Number of CPUs Ray is told it has available, passed explicitly to ray.init() so it doesn’t auto-detect (which grabs the whole node under SLURM). Defaults to the runtime-detected usable core count. Override with the DARA_RAY_NUM_CPUS env var.

Validated by:
validator load_default_settings  »  all fields[source]#

Load settings from file or environment variables.

Loads settings from a root file if available and uses that as defaults in place of built-in defaults.

This allows setting of the config file path through environment variables.

Return type:

dict