amici.petab_objective

PEtab Objective

Functionality related to running simulations or evaluating the objective function as defined by a PEtab problem

Functions Summary

aggregate_sllh(amici_model, rdatas, …)

Aggregate likelihood gradient for all conditions, according to PEtab parameter mapping.

create_edata_for_condition(condition, …)

Get amici.amici.ExpData for the given PEtab condition.

create_edatas(amici_model, petab_problem[, …])

Create list of amici.amici.ExpData objects for PEtab problem.

create_parameter_mapping(petab_problem, …)

Generate AMICI specific parameter mapping.

create_parameter_mapping_for_condition(…)

Generate AMICI specific parameter mapping for condition.

create_parameterized_edatas(amici_model, …)

Create list of :class:amici.ExpData objects with parameters filled in.

rdatas_to_measurement_df(rdatas, model, …)

Create a measurement dataframe in the PEtab format from the passed rdatas and own information.

rdatas_to_simulation_df(rdatas, model, …)

Create a PEtab simulation dataframe from amici.ReturnDatas.

simulate_petab(petab_problem, amici_model[, …])

Simulate PEtab model.

subset_dict(full, *args)

Get subset of dictionary based on provided keys

Functions

amici.petab_objective.aggregate_sllh(amici_model, rdatas, parameter_mapping)[source]

Aggregate likelihood gradient for all conditions, according to PEtab parameter mapping.

Parameters
Return type

typing.Optional[typing.Dict[str, float]]

Returns

aggregated sllh

amici.petab_objective.create_edata_for_condition(condition, amici_model, petab_problem, observable_ids)[source]

Get amici.amici.ExpData for the given PEtab condition.

Sets timepoints, observed data and sigmas.

Parameters
Return type

amici.ExpData

Returns

ExpData instance.

amici.petab_objective.create_edatas(amici_model, petab_problem, simulation_conditions=None)[source]

Create list of amici.amici.ExpData objects for PEtab problem.

Parameters
Return type

typing.List[amici.ExpData]

Returns

List with one amici.amici.ExpData per simulation condition, with filled in timepoints and data.

amici.petab_objective.create_parameter_mapping(petab_problem, simulation_conditions, scaled_parameters, amici_model)[source]

Generate AMICI specific parameter mapping.

Parameters
  • petab_problem (petab.problem.Problem) – PEtab problem

  • simulation_conditions (typing.Union[pandas.core.frame.DataFrame, typing.Dict]) – Result of petab.get_simulation_conditions. Can be provided to save time if this has been obtained before.

  • scaled_parameters (bool) – If True, problem_parameters are assumed to be on the scale provided in the PEtab parameter table and will be unscaled. If False, they are assumed to be in linear scale.

  • amici_model (typing.Union[amici.amici.Model, amici.amici.ModelPtr]) – AMICI model.

Return type

amici.parameter_mapping.ParameterMapping

Returns

List of the parameter mappings.

amici.petab_objective.create_parameter_mapping_for_condition(parameter_mapping_for_condition, condition, petab_problem, amici_model)[source]

Generate AMICI specific parameter mapping for condition.

Parameters
Return type

amici.parameter_mapping.ParameterMappingForCondition

Returns

The parameter and parameter scale mappings, for fixed preequilibration, fixed simulation, and variable simulation parameters, and then the respective scalings.

amici.petab_objective.create_parameterized_edatas(amici_model, petab_problem, problem_parameters, scaled_parameters=False, parameter_mapping=None, simulation_conditions=None)[source]

Create list of :class:amici.ExpData objects with parameters filled in.

Parameters
  • amici_model (typing.Union[amici.amici.Model, amici.amici.ModelPtr]) – AMICI Model assumed to be compatible with petab_problem.

  • petab_problem (petab.problem.Problem) – PEtab problem to work on.

  • problem_parameters (typing.Dict[str, numbers.Number]) – Run simulation with these parameters. If None, PEtab nominalValues will be used). To be provided as dict, mapping PEtab problem parameters to SBML IDs.

  • scaled_parameters (bool) – If True, problem_parameters are assumed to be on the scale provided in the PEtab parameter table and will be unscaled. If False, they are assumed to be in linear scale.

  • parameter_mapping (typing.Optional[amici.parameter_mapping.ParameterMapping]) – Optional precomputed PEtab parameter mapping for efficiency, as generated by create_parameter_mapping.

  • simulation_conditions (typing.Union[pandas.core.frame.DataFrame, typing.Dict, None]) – Result of petab.get_simulation_conditions. Can be provided to save time if this has been obtained before.

Return type

typing.List[amici.ExpData]

Returns

List with one amici.amici.ExpData per simulation condition, with filled in timepoints, data and parameters.

amici.petab_objective.rdatas_to_measurement_df(rdatas, model, measurement_df)[source]

Create a measurement dataframe in the PEtab format from the passed rdatas and own information.

Parameters
Return type

pandas.core.frame.DataFrame

Returns

A dataframe built from the rdatas in the format of measurement_df.

amici.petab_objective.rdatas_to_simulation_df(rdatas, model, measurement_df)[source]

Create a PEtab simulation dataframe from amici.ReturnDatas.

See rdatas_to_measurement_df for details, only that model outputs will appear in column “simulation” instead of “measurement”.

Return type

pandas.core.frame.DataFrame

amici.petab_objective.simulate_petab(petab_problem, amici_model, solver=None, problem_parameters=None, simulation_conditions=None, edatas=None, parameter_mapping=None, scaled_parameters=False, log_level=30)[source]

Simulate PEtab model.

Parameters
Return type

typing.Dict[str, typing.Any]

Returns

Dictionary of

  • cost function value (LLH),

  • const function sensitivity w.r.t. parameters (SLLH), (NOTE: Sensitivities are computed for the scaled parameters)

  • list of ReturnData (RDATAS),

corresponding to the different simulation conditions. For ordering of simulation conditions, see petab.Problem.get_simulation_conditions_from_measurement_df().

amici.petab_objective.subset_dict(full, *args)[source]

Get subset of dictionary based on provided keys

Parameters
Return type

typing.Iterator[typing.Dict[typing.Any, typing.Any]]

Returns

subsetted dictionary