skimpy.sampling =============== .. py:module:: skimpy.sampling .. autoapi-nested-parse:: .. module:: skimpy :platform: Unix, Windows :synopsis: Simple Kinetic Models in Python .. moduleauthor:: SKiMPy team [---------] Copyright 2017 Laboratory of Computational Systems Biotechnology (LCSB), Ecole Polytechnique Federale de Lausanne (EPFL), Switzerland Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. Submodules ---------- .. toctree:: :maxdepth: 1 /autoapi/skimpy/sampling/cma_es_parameter_sampler/index /autoapi/skimpy/sampling/flux_concentration_sampler/index /autoapi/skimpy/sampling/flux_parameter_function/index /autoapi/skimpy/sampling/ga_flux_concentration_sampler/index /autoapi/skimpy/sampling/ga_parameter_sampler/index /autoapi/skimpy/sampling/parameter_sampler/index /autoapi/skimpy/sampling/saturation_parameter_function/index /autoapi/skimpy/sampling/simple_parameter_sampler/index /autoapi/skimpy/sampling/simple_resampler/index /autoapi/skimpy/sampling/utils/index Attributes ---------- .. autoapisummary:: skimpy.sampling.QSSA skimpy.sampling.TQSSA skimpy.sampling.MCA skimpy.sampling.ODE skimpy.sampling.ELEMENTARY skimpy.sampling.NUMERICAL skimpy.sampling.SYMBOLIC skimpy.sampling.NET skimpy.sampling.SPLIT skimpy.sampling.PARAMETER skimpy.sampling.VARIABLE skimpy.sampling.KCAL skimpy.sampling.KJ skimpy.sampling.JOULE skimpy.sampling.WATER_FORMULA skimpy.sampling.QSSA skimpy.sampling.TQSSA skimpy.sampling.MCA skimpy.sampling.ODE skimpy.sampling.ELEMENTARY skimpy.sampling.NUMERICAL skimpy.sampling.SYMBOLIC skimpy.sampling.NET skimpy.sampling.SPLIT skimpy.sampling.PARAMETER skimpy.sampling.VARIABLE skimpy.sampling.KCAL skimpy.sampling.KJ skimpy.sampling.JOULE skimpy.sampling.WATER_FORMULA skimpy.sampling.QSSA skimpy.sampling.TQSSA skimpy.sampling.MCA skimpy.sampling.ODE skimpy.sampling.ELEMENTARY skimpy.sampling.NUMERICAL skimpy.sampling.SYMBOLIC skimpy.sampling.NET skimpy.sampling.SPLIT skimpy.sampling.PARAMETER skimpy.sampling.VARIABLE skimpy.sampling.KCAL skimpy.sampling.KJ skimpy.sampling.JOULE skimpy.sampling.WATER_FORMULA skimpy.sampling.model_gen skimpy.sampling.QSSA skimpy.sampling.TQSSA skimpy.sampling.MCA skimpy.sampling.ODE skimpy.sampling.ELEMENTARY skimpy.sampling.NUMERICAL skimpy.sampling.SYMBOLIC skimpy.sampling.NET skimpy.sampling.SPLIT skimpy.sampling.PARAMETER skimpy.sampling.VARIABLE skimpy.sampling.KCAL skimpy.sampling.KJ skimpy.sampling.JOULE skimpy.sampling.WATER_FORMULA skimpy.sampling.QSSA skimpy.sampling.TQSSA skimpy.sampling.MCA skimpy.sampling.ODE skimpy.sampling.ELEMENTARY skimpy.sampling.NUMERICAL skimpy.sampling.SYMBOLIC skimpy.sampling.NET skimpy.sampling.SPLIT skimpy.sampling.PARAMETER skimpy.sampling.VARIABLE skimpy.sampling.KCAL skimpy.sampling.KJ skimpy.sampling.JOULE skimpy.sampling.WATER_FORMULA Classes ------- .. autoapisummary:: skimpy.sampling.SaturationParameterFunction skimpy.sampling.FluxParameterFunction skimpy.sampling.ParameterSampler skimpy.sampling.SimpleParameterSampler skimpy.sampling.GaParameterSampler skimpy.sampling.FluxConcentrationSampler skimpy.sampling.SimpleParameterSampler skimpy.sampling.FromPyTFA skimpy.sampling.ItterableSeries skimpy.sampling.GaFluxConcentrationSampler skimpy.sampling.ParameterValues skimpy.sampling.CMAESParameterSampler Functions --------- .. autoapisummary:: skimpy.sampling.calc_max_eigenvalue skimpy.sampling.calc_parameters skimpy.sampling.default_fitness skimpy.sampling.run_ea skimpy.sampling.init_parameters skimpy.sampling.pareto_dominance skimpy.sampling.calc_max_eigenvalue skimpy.sampling.calc_parameters skimpy.sampling.sanitize_cobra_vars skimpy.sampling.convex_mating skimpy.sampling.sample_parameters skimpy.sampling.deltag0_to_keq skimpy.sampling.load_fluxes skimpy.sampling.load_concentrations skimpy.sampling.load_equilibrium_constants skimpy.sampling.calc_max_eigenvalue skimpy.sampling.calc_parameters skimpy.sampling.run_ea skimpy.sampling.init_parameters skimpy.sampling.pareto_dominance Package Contents ---------------- .. py:class:: SaturationParameterFunction(model, parameters, concentrations) A class used in the process of sampling to calculate Km's. Provided with a model, creates `self.__call__` function using `Cython` to calculate Km's given (sampled) sigmas :param model: :param parameters: the parameters of the model. Parameters with a `.hook` field and an empty `.value` will be sampled :param concentrations: .. py:attribute:: sym_concentrations .. py:attribute:: saturation_parameters .. py:method:: __call__(saturations, parameters, concentrations, parameters_to_resample, fixed_parameters) .. py:class:: FluxParameterFunction(model, parameters, concentration_dict) .. py:attribute:: sym_concentrations .. py:attribute:: sym_parameters .. py:attribute:: expressions .. py:attribute:: function .. py:method:: __call__(model, parameters, concentration_dict, flux_dict) .. py:class:: ParameterSampler(parameters=None) Bases: :py:obj:`abc.ABC` Helper class that provides a standard way to create an ABC using inheritance. .. py:attribute:: parameters :value: None .. py:property:: Parameters :abstractmethod: Parameter type specified for the parameters samples :return: .. py:method:: sample() :abstractmethod: :return: .. py:data:: QSSA :value: 'qssa' .. py:data:: TQSSA :value: 'tqssa' .. py:data:: MCA :value: 'mca' .. py:data:: ODE :value: 'ode' .. py:data:: ELEMENTARY :value: 'elementary' Jacobian Types .. py:data:: NUMERICAL :value: 'numerical' .. py:data:: SYMBOLIC :value: 'symbolic' MCA Types .. py:data:: NET :value: 'net' .. py:data:: SPLIT :value: 'split' Item types .. py:data:: PARAMETER :value: 'parameter' .. py:data:: VARIABLE :value: 'variable' Units .. py:data:: KCAL :value: 'kcal' .. py:data:: KJ :value: 'kJ' .. py:data:: JOULE :value: 'JOULE' OTHER .. py:data:: WATER_FORMULA :value: 'H2O' .. py:class:: SimpleParameterSampler(parameters=None) Bases: :py:obj:`skimpy.sampling.ParameterSampler` A simple parameter sampler that samples stable model parameters with respect to a steady state flux and concentration state .. py:class:: Parameters Bases: :py:obj:`tuple` Parameter type specified for the parameters samples :return: .. py:attribute:: n_samples .. py:method:: sample(compiled_model, flux_dict, concentration_dict, only_stable=True, min_max_eigenvalues=False, seed=123, bounds_sample=(0, 1), max_trials=1000000.0) :return: .. py:method:: _compile_sampling_functions(model, concentrations, fluxes) Compiles the function for sampling using cython :param model: .. py:method:: _sample_saturation_step_compiled(compiled_model, concentration_dict, flux_dict, parameters_to_resample=None, fixed_parameters=None) Sample one set of saturations using cython complied functions :param compiled_model: :param concentration_dict: :param flux_dict: :return: .. py:data:: QSSA :value: 'qssa' .. py:data:: TQSSA :value: 'tqssa' .. py:data:: MCA :value: 'mca' .. py:data:: ODE :value: 'ode' .. py:data:: ELEMENTARY :value: 'elementary' Jacobian Types .. py:data:: NUMERICAL :value: 'numerical' .. py:data:: SYMBOLIC :value: 'symbolic' MCA Types .. py:data:: NET :value: 'net' .. py:data:: SPLIT :value: 'split' Item types .. py:data:: PARAMETER :value: 'parameter' .. py:data:: VARIABLE :value: 'variable' Units .. py:data:: KCAL :value: 'kcal' .. py:data:: KJ :value: 'kJ' .. py:data:: JOULE :value: 'JOULE' OTHER .. py:data:: WATER_FORMULA :value: 'H2O' .. py:function:: calc_max_eigenvalue(parameter_sample, compiled_model, concentration_dict, flux_dict) Sample one set of staturations using theano complied functions :param compiled_model: :param concentration_dict: :param flux_dict: :return: .. py:function:: calc_parameters(saturations, compiled_model, concentration_dict, flux_dict, parameters_to_resample=None, fixed_parameters=None) .. py:function:: default_fitness(saturations, compiled_model=None, concentration_dict=dict(), flux_dict=dict(), max_eigenvalue=0) .. py:class:: GaParameterSampler(parameters=None) Bases: :py:obj:`skimpy.sampling.ParameterSampler` A simple parameter sampler that samples stable model parameters with respect to a steady state flux and concentration state .. py:class:: Parameters Bases: :py:obj:`tuple` Parameter type specified for the parameters samples :return: .. py:attribute:: n_samples .. py:method:: sample(compiled_model, flux_dict, concentration_dict, seed=123, max_generation=10, mutation_probability=0.2, eta=20, fitness_fun=default_fitness, fitness_weights=(-1, ), **kwargs) :param compiled_model: :param flux_dict: :param concentration_dict: :param seed: :param max_generation: :param mutation_probability: :param eta: :return: .. py:method:: _compile_sampling_functions(model, concentrations, fluxes) Compliles the function for sampling using theano :param model: .. py:function:: run_ea(toolbox, stats=None, verbose=False) .. py:function:: init_parameters(low, up) .. py:function:: pareto_dominance(x, y) .. py:data:: QSSA :value: 'qssa' .. py:data:: TQSSA :value: 'tqssa' .. py:data:: MCA :value: 'mca' .. py:data:: ODE :value: 'ode' .. py:data:: ELEMENTARY :value: 'elementary' Jacobian Types .. py:data:: NUMERICAL :value: 'numerical' .. py:data:: SYMBOLIC :value: 'symbolic' MCA Types .. py:data:: NET :value: 'net' .. py:data:: SPLIT :value: 'split' Item types .. py:data:: PARAMETER :value: 'parameter' .. py:data:: VARIABLE :value: 'variable' Units .. py:data:: KCAL :value: 'kcal' .. py:data:: KJ :value: 'kJ' .. py:data:: JOULE :value: 'JOULE' OTHER .. py:data:: WATER_FORMULA :value: 'H2O' .. py:function:: calc_max_eigenvalue(parameter_sample, compiled_model, concentration_dict, flux_dict) Sample one set of staturations using theano complied functions :param compiled_model: :param concentration_dict: :param flux_dict: :return: .. py:function:: calc_parameters(saturations, compiled_model, concentration_dict, flux_dict, parameters_to_resample=None, fixed_parameters=None) .. py:function:: sanitize_cobra_vars(met_name) .. py:class:: FluxConcentrationSampler(parameters=None) Bases: :py:obj:`abc.ABC` Helper class that provides a standard way to create an ABC using inheritance. .. py:attribute:: parameters :value: None .. py:property:: Parameters :abstractmethod: Parameter type specified for the parameters sampling procedure :return: .. py:method:: sample() :abstractmethod: :return: .. py:class:: SimpleParameterSampler(parameters=None) Bases: :py:obj:`skimpy.sampling.ParameterSampler` A simple parameter sampler that samples stable model parameters with respect to a steady state flux and concentration state .. py:class:: Parameters Bases: :py:obj:`tuple` Parameter type specified for the parameters samples :return: .. py:attribute:: n_samples .. py:method:: sample(compiled_model, flux_dict, concentration_dict, only_stable=True, min_max_eigenvalues=False, seed=123, bounds_sample=(0, 1), max_trials=1000000.0) :return: .. py:method:: _compile_sampling_functions(model, concentrations, fluxes) Compiles the function for sampling using cython :param model: .. py:method:: _sample_saturation_step_compiled(compiled_model, concentration_dict, flux_dict, parameters_to_resample=None, fixed_parameters=None) Sample one set of saturations using cython complied functions :param compiled_model: :param concentration_dict: :param flux_dict: :return: .. py:class:: FromPyTFA(max_revesible_deltag_0=100, **kwargs) Bases: :py:obj:`skimpy.io.generate_from_cobra.FromCobra` Class to generate Kinetic models from cobra .. py:attribute:: max_revesible_deltag_0 :value: 100 .. py:method:: import_model(pytfa_model, pytfa_solution_raw, concentration_scaling_factor=1.0) Function to create a kinetic model from a constraint based model :param pytfa_model: :param pytfa_solution: a prepresentative solution for the pytfa model solution.raw :return: skimpy model .. py:method:: get_equlibrium_constant(pytfa_model, pytfa_solution_data, this_reaction, scaling_factor=1.0) .. py:class:: ItterableSeries(this_series) .. py:attribute:: data .. py:method:: __iter__() .. py:data:: model_gen .. py:class:: GaFluxConcentrationSampler(parameters=None) Bases: :py:obj:`skimpy.sampling.flux_concentration_sampler.FluxConcentrationSampler` This sampler performs an optimizaion .. py:class:: Parameters Bases: :py:obj:`tuple` Parameter type specified for the parameters sampling procedure :return: .. py:attribute:: n_samples .. py:attribute:: n_parameter_samples .. py:attribute:: max_generation .. py:attribute:: seed .. py:attribute:: mutation_probability .. py:attribute:: crossover_scaling .. py:attribute:: max_eigenvalue .. py:attribute:: min_eigenvalue .. py:attribute:: scaling_parameters .. py:method:: sample(tmodel, kmodel, simple_parameter_sampler, only_stable=True) :param compiled_model: :param flux_dict: :param concentration_dict: :param seed: :param max_generation: :param mutation_probability: :param eta: :return: .. py:method:: fitness(flux_concentration) .. py:method:: run_ea(toolbox, stats=None, verbose=False) .. py:method:: sample_tfa_model(n_samples) :param tmodel: pytfa.tmodel :param n_samples: integer :return: TODO pd.DataFrame indexed with reaction names and metabolite concentrations .. py:method:: mutate_ind(ind) .. py:function:: convex_mating(ind1, ind2, eta=0.5) .. py:function:: sample_parameters(kmodel, tmodel, individual, param_sampler, scaling_parameters, only_stable=True) Run sampling on first order model .. py:data:: QSSA :value: 'qssa' .. py:data:: TQSSA :value: 'tqssa' .. py:data:: MCA :value: 'mca' .. py:data:: ODE :value: 'ode' .. py:data:: ELEMENTARY :value: 'elementary' Jacobian Types .. py:data:: NUMERICAL :value: 'numerical' .. py:data:: SYMBOLIC :value: 'symbolic' MCA Types .. py:data:: NET :value: 'net' .. py:data:: SPLIT :value: 'split' Item types .. py:data:: PARAMETER :value: 'parameter' .. py:data:: VARIABLE :value: 'variable' Units .. py:data:: KCAL :value: 'kcal' .. py:data:: KJ :value: 'kJ' .. py:data:: JOULE :value: 'JOULE' OTHER .. py:data:: WATER_FORMULA :value: 'H2O' .. py:function:: deltag0_to_keq(deltag0, temp, unit=KCAL, gas_constant=None) .. py:class:: ParameterValues(parameter_values, kmodel=None) Bases: :py:obj:`object` Parameters set for kinetic models wich can be indexed with symbols or .. py:attribute:: _parameter_values .. py:attribute:: _sym_to_str .. py:method:: __getitem__(item) .. py:method:: __setitem__(item, value) .. py:method:: items() .. py:method:: keys() .. py:method:: values() .. py:function:: load_fluxes(solution_raw, tmodel, kmodel, density=None, ratio_gdw_gww=None, concentration_scaling=None, time_scaling=None, xmol_in_flux=0.001) .. py:function:: load_concentrations(solution_raw, tmodel, kmodel, concentration_scaling=None) .. py:function:: load_equilibrium_constants(solution_raw, tmodel, kmodel, concentration_scaling=None, in_place=False) .. py:function:: calc_max_eigenvalue(parameter_sample, compiled_model, concentration_dict, flux_dict) Sample one set of staturations using theano complied functions :param compiled_model: :param concentration_dict: :param flux_dict: :return: .. py:function:: calc_parameters(saturations, compiled_model, concentration_dict, flux_dict, parameters_to_resample=None, fixed_parameters=None) .. py:class:: CMAESParameterSampler(parameters=None) Bases: :py:obj:`skimpy.sampling.ParameterSampler` A simple parameter sampler that samples stable model parameters with respect to a steady state flux and concentration state .. py:class:: Parameters Bases: :py:obj:`tuple` Parameter type specified for the parameters samples :return: .. py:attribute:: n_samples .. py:method:: sample(compiled_model, flux_dict, concentration_dict, seed=123, max_generation=10, sigma=0.1, lambda_=1000, nhof=100, max_eigenvalue=0, min_km=0.001, max_km=1000.0) :param compiled_model: :param flux_dict: :param concentration_dict: :param seed: :param max_generation: :param mutation_probability: :param eta: :return: .. py:method:: _compile_sampling_functions(model, concentrations, fluxes) Compliles the function for sampling using theano :param model: .. py:method:: fitness(parameters) .. py:method:: update_parameters(parameters) .. py:function:: run_ea(toolbox, ngen=None, stats=None, hof=None, verbose=False) .. py:function:: init_parameters(low, up) .. py:function:: pareto_dominance(x, y) .. py:data:: QSSA :value: 'qssa' .. py:data:: TQSSA :value: 'tqssa' .. py:data:: MCA :value: 'mca' .. py:data:: ODE :value: 'ode' .. py:data:: ELEMENTARY :value: 'elementary' Jacobian Types .. py:data:: NUMERICAL :value: 'numerical' .. py:data:: SYMBOLIC :value: 'symbolic' MCA Types .. py:data:: NET :value: 'net' .. py:data:: SPLIT :value: 'split' Item types .. py:data:: PARAMETER :value: 'parameter' .. py:data:: VARIABLE :value: 'variable' Units .. py:data:: KCAL :value: 'kcal' .. py:data:: KJ :value: 'kJ' .. py:data:: JOULE :value: 'JOULE' OTHER .. py:data:: WATER_FORMULA :value: 'H2O'