petab.yaml

Code regarding the PEtab YAML config files

Functions

assert_single_condition_and_sbml_file(...)

Check that there is only a single condition file and a single SBML file specified.

create_problem_yaml(sbml_files, ...[, ...])

Create and write default YAML file for a single PEtab problem

is_composite_problem(yaml_config)

Does this YAML file comprise multiple models?

load_yaml(yaml_config)

Load YAML

validate(yaml_config[, path_prefix])

Validate syntax and semantics of PEtab config YAML

validate_yaml_semantics(yaml_config[, ...])

Validate PEtab YAML file semantics

validate_yaml_syntax(yaml_config[, schema])

Validate PEtab YAML file syntax

write_yaml(yaml_config, filename)

Write PEtab YAML file

petab.yaml.assert_single_condition_and_sbml_file(problem_config: Dict) None[source]

Check that there is only a single condition file and a single SBML file specified.

Parameters:

problem_config – Dictionary as defined in the YAML schema inside the problems list.

Raises:

NotImplementedError – If multiple condition or SBML files specified.

petab.yaml.create_problem_yaml(sbml_files: str | Path | List[str | Path], condition_files: str | Path | List[str | Path], measurement_files: str | Path | List[str | Path], parameter_file: str | Path, observable_files: str | Path | List[str | Path], yaml_file: str | Path, visualization_files: str | Path | List[str | Path] | None = None, relative_paths: bool = True, mapping_files: str | Path | List[str | Path] | None = None) None[source]

Create and write default YAML file for a single PEtab problem

Parameters:
  • sbml_files – Path of SBML model file or list of such

  • condition_files – Path of condition file or list of such

  • measurement_files – Path of measurement file or list of such

  • parameter_file – Path of parameter file

  • observable_files – Path of observable file or list of such

  • yaml_file – Path to which YAML file should be written

  • visualization_files – Optional Path to visualization file or list of such

  • relative_paths – whether all paths in the YAML file should be relative to the location of the YAML file. If False, then paths are left unchanged.

  • mapping_files – Path of mapping file

petab.yaml.is_composite_problem(yaml_config: Dict | str | Path) bool[source]

Does this YAML file comprise multiple models?

Parameters:

yaml_config – PEtab configuration as dictionary or YAML file name

petab.yaml.load_yaml(yaml_config: Dict | Path | str) Dict[source]

Load YAML

Convenience function to allow for providing YAML inputs as filename, URL or as dictionary.

Parameters:

yaml_config – PEtab YAML config as filename or dict or URL.

Returns:

The unmodified dictionary if yaml_config was dictionary. Otherwise the parsed the YAML file.

petab.yaml.validate(yaml_config: Dict | str | Path, path_prefix: None | str | Path = None)[source]

Validate syntax and semantics of PEtab config YAML

Parameters:
  • yaml_config – PEtab YAML config as filename or dict.

  • path_prefix – Base location for relative paths. Defaults to location of YAML file if a filename was provided for yaml_config or the current working directory.

petab.yaml.validate_yaml_semantics(yaml_config: Dict | str | Path, path_prefix: None | str | Path = None)[source]

Validate PEtab YAML file semantics

Check for existence of files. Assumes valid syntax.

Version number and contents of referenced files are not yet checked.

Parameters:
  • yaml_config – PEtab YAML config as filename or dict.

  • path_prefix – Base location for relative paths. Defaults to location of YAML file if a filename was provided for yaml_config or the current working directory.

Raises:

AssertionError – in case of problems

petab.yaml.validate_yaml_syntax(yaml_config: Dict | str | Path, schema: None | Dict | str = None)[source]

Validate PEtab YAML file syntax

Parameters:
  • yaml_config – PEtab YAML file to validate, as file name or dictionary

  • schema – Custom schema for validation

:raises see jsonschema.validate():

petab.yaml.write_yaml(yaml_config: Dict[str, Any], filename: str | Path) None[source]

Write PEtab YAML file

Parameters:
  • yaml_config – Data to write

  • filename – File to create