Metadata-Version: 2.1
Name: kisao
Version: 2.15.3
Summary: Utilities for working with the Kinetic Simulation Algorithm Ontology (KiSAO)
Home-page: https://github.com/SED-ML/kisao
Author: SED-ML Editors
Author-email: sed-ml-editors@googlegroups.com
License: Apache 2.0
Download-URL: https://github.com/SED-ML/kisao
Description: KiSAO
        =====
        
        Python package for working with the the `Kinetic Simulation Algorithm
        Ontology <http://co.mbine.org/standards/kisao>`__ (KiSAO), an ontology
        of algorithms for simulating and analyzing biological models, as well as
        the characteristics of these algorithms, their input parameters, and
        their outputs.
        
        Installing this package
        -----------------------
        
        Requirements
        ~~~~~~~~~~~~
        
        -  Python >= 3.7
        -  pip
        
        Installation
        ~~~~~~~~~~~~
        
        Please run the following command to install this package:
        
        ::
        
           pip install kisao
        
        To generate a matrix of the substitutability among algorithms, install
        this package with the ``substitutability-matrix`` option:
        
        ::
        
           pip install kisao[substitutability-matrix]
        
        Tutorial
        --------
        
        .. code:: python
        
           from kisao import Kisao
           from kisao import utils
           from kisao.data_model import AlgorithmSubstitutionPolicy
        
           # load the ontology
           kisao = Kisao()
        
           # get a term
           term = kisao.get_term('KISAO_0000019')
        
           # get the name of the term
           term.name
           >> 'CVODE'
        
           # get sets of methods
           algs = utils.get_ode_algorithms()
           sorted([alg.name for alg in algs])[0:5]
           >> [
                 'Adams method',
                 'Adams predictor-corrector method',
                 'Adams-Bashforth method',
                 'Adams-Moulton method',
                 'Bader-Deuflhard method',
              ]
        
           algs = utils.get_sde_algorithms()
           algs = utils.get_pde_algorithms()
           algs = utils.get_tau_leaping_algorithms()
           algs = utils.get_ode_algorithms()
           algs = utils.get_gillespie_like_algorithms()
           algs = utils.get_tau_leaping_algorithms()
           algs = utils.get_rule_based_algorithms()
           algs = utils.get_sde_algorithms()
           algs = utils.get_pde_algorithms()
           algs = utils.get_flux_balance_algorithms()
           algs = utils.get_logical_algorithms()
           algs = utils.get_hybrid_algorithms()
        
           # get a set of substitutable algorithms for a specific substitution policy
           cvode = kisao.get_term('KISAO_0000019')
           euler_forward = kisao.get_term('KISAO_0000030')
           lsoda = kisao.get_term('KISAO_0000088')
           lsodar = kisao.get_term('KISAO_0000089')
           fba = kisao.get_term('KISAO_0000437')
           fva = kisao.get_term('KISAO_0000526')
        
           alt_algs = utils.get_substitutable_algorithms_for_policy(cvode,
               substitution_policy=AlgorithmSubstitutionPolicy.SIMILAR_APPROXIMATIONS)
           sorted([alt_alg.name for alt_alg in alt_algs])[0:5]
           >> [
                 'Adams method',
                 'Adams predictor-corrector method',
                 'Adams-Bashforth method',
                 'Adams-Moulton method',
                 'Bader-Deuflhard method',
              ]
        
           # get a preferred substitution for an algorithm
           requested_alg = lsoda
           implemented_algs_in_preferred_order = [cvode, lsoda, lsodar, euler_forward]
           alt_alg = utils.get_preferred_substitute_algorithm(requested_alg, implemented_algs_in_preferred_order,
               substitution_policy=AlgorithmSubstitutionPolicy.SIMILAR_APPROXIMATIONS)
           alt_alg.name
           >> 'LSODA'
        
           requested_alg = lsoda
           implemented_algs_in_preferred_order = [cvode, euler_forward]
           alt_alg = utils.get_preferred_substitute_algorithm(requested_alg, implemented_algs_in_preferred_order,
               substitution_policy=AlgorithmSubstitutionPolicy.SIMILAR_APPROXIMATIONS)
           alt_alg.name
           >> 'CVODE'
        
           requested_alg = lsoda
           implemented_algs_in_preferred_order = [fba, fva]
           alt_alg = utils.get_preferred_substitute_algorithm(requested_alg, implemented_algs_in_preferred_order,
               substitution_policy=AlgorithmSubstitutionPolicy.SIMILAR_APPROXIMATIONS)
           alt_alg
           >> None
        
        Browsing KiSAO
        --------------
        
        KiSAO can be browsed through
        `BioPortal <https://bioportal.bioontology.org/ontologies/KISAO>`__ and
        `OLS <https://www.ebi.ac.uk/ols/ontologies/kisao>`__.
        
        Browsing the substitutability of algorithms catalogued by KiSAO
        ---------------------------------------------------------------
        
        A matrix of the substitutability of algorithms catalogued by KiSAO is
        available
        `here <https://github.com/SED-ML/KiSAO/blob/dev/libkisao/python/docs/algorithm-substitutability.csv>`__.
        The documentation for this package describes the queries and rules used
        to define this matrix.
        
        Contributing to KiSAO
        ---------------------
        
        Please see the `KiSAO repository <https://github.com/SED-ML/KiSAO/>`__
        for information about contributing to KiSAO and this package.
        
        License
        -------
        
        This package is released under `Artistic License
        2.0 <https://github.com/SED-ML/KiSAO/blob/dev/LICENSE>`__.
        
Keywords: systems biology,modeling,simulation,algorithm,ontology,KiSAO,SED-ML,SBML
Platform: UNKNOWN
Classifier: Development Status :: 3 - Alpha
Classifier: Intended Audience :: Science/Research
Classifier: License :: OSI Approved :: Apache Software License
Classifier: Topic :: Scientific/Engineering :: Bio-Informatics
Provides-Extra: substitutability-matrix
Provides-Extra: tests
Provides-Extra: docs
Provides-Extra: all
