def test_SBMLNamespaces_constructor(self):
     s = None
     try:
         s = libsbml.SBMLNamespaces(3, 1)
         s = libsbml.SBMLNamespaces(self.SN31)
     except ValueError:
         inst = sys.exc_info()[1]
         s = None
     pass
     self.assert_(s != None)
Exemplo n.º 2
0
 def test_L3_Compartment_createWithNS(self):
     xmlns = libsbml.XMLNamespaces()
     xmlns.add("http://www.sbml.org", "testsbml")
     sbmlns = libsbml.SBMLNamespaces(3, 1)
     sbmlns.addNamespaces(xmlns)
     c = libsbml.Compartment(sbmlns)
     self.assert_(c.getTypeCode() == libsbml.SBML_COMPARTMENT)
     self.assert_(c.getMetaId() == "")
     self.assert_(c.getNotes() == None)
     self.assert_(c.getAnnotation() == None)
     self.assert_(c.getLevel() == 3)
     self.assert_(c.getVersion() == 1)
     self.assert_(c.getNamespaces() != None)
     self.assert_(c.getNamespaces().getLength() == 2)
     self.assert_(c.getId() == "")
     self.assert_(c.getName() == "")
     self.assert_(c.getUnits() == "")
     self.assert_(c.getOutside() == "")
     self.assertEqual(True, isnan(c.getSpatialDimensionsAsDouble()))
     self.assertEqual(True, isnan(c.getVolume()))
     self.assert_(c.getConstant() == True)
     self.assertEqual(False, c.isSetId())
     self.assertEqual(False, c.isSetSpatialDimensions())
     self.assertEqual(False, c.isSetName())
     self.assertEqual(False, c.isSetSize())
     self.assertEqual(False, c.isSetVolume())
     self.assertEqual(False, c.isSetUnits())
     self.assertEqual(False, c.isSetOutside())
     self.assertEqual(False, c.isSetConstant())
     _dummyList = [c]
     _dummyList[:] = []
     del _dummyList
     pass
Exemplo n.º 3
0
def create_merged_doc(model_paths, merged_id="merged"):
    """
    Create a comp model from the given model paths.

    Warning: This only works if all models are in the same directory.
    """
    sbmlns = libsbml.SBMLNamespaces(3, 1)
    sbmlns.addPackageNamespace("comp", 1)
    doc = libsbml.SBMLDocument(sbmlns)
    doc.setPackageRequired("comp", True)

    # model
    model = doc.createModel()
    model.setId(merged_id)

    # comp plugin
    comp_doc = doc.getPlugin("comp")  # type: libsbml.CompSBMLDocumentPlugin
    comp_model = model.getPlugin("comp")  # type: libsbml.CompModelPlugin

    for emd_id, path in model_paths.items():
        # create ExternalModelDefinitions
        emd = comp.create_ExternalModelDefinition(comp_doc,
                                                  emd_id,
                                                  source=path)
        # add submodel which references the external model definitions
        print("emd:", emd)
        print("emd_id:", emd_id)
        print("comp_model:", comp_model)

        comp.add_submodel_from_emd(comp_model, submodel_id=emd_id, emd=emd)

    return doc
Exemplo n.º 4
0
def create_merged_doc(model_paths: Dict[str, Path],
                      merged_id: str = "merged") -> libsbml.SBMLDocument:
    """Create a comp model from given model paths.

    Warning: This only works if all models are in the same directory.

    :param model_paths: Dictionary of id:path
    :param merged_id:
    :return:
    """
    sbmlns = libsbml.SBMLNamespaces(3, 1)
    sbmlns.addPackageNamespace("comp", 1)
    doc = libsbml.SBMLDocument(sbmlns)  # type: libsbml.SBMLDocument
    doc.setPackageRequired("comp", True)

    # model
    model = doc.createModel()  # type: libsbml.Model
    model.setId(merged_id)

    # comp plugin
    comp_doc = doc.getPlugin("comp")  # type: libsbml.CompSBMLDocumentPlugin
    comp_model = model.getPlugin("comp")  # type: libsbml.CompModelPlugin

    for emd_id, path in model_paths.items():
        # create ExternalModelDefinitions
        emd = comp.create_ExternalModelDefinition(
            comp_doc, emd_id,
            source=str(path))  # type: libsbml.ExternalModelDefinition

        # add submodel which references the external model definitions
        comp.add_submodel_from_emd(comp_model, submodel_id=emd_id, emd=emd)

    return doc
Exemplo n.º 5
0
def _create_merged_doc(
    model_paths: Dict[str, Path],
    merged_id: str = "merged",
    sbml_level: int = 3,
    sbml_version: int = 1,
) -> libsbml.SBMLDocument:
    """Create a comp model from given model paths.

    Warning: This only works if all models are in the same directory.
    """
    sbmlns = libsbml.SBMLNamespaces(sbml_level, sbml_version)
    sbmlns.addPackageNamespace("comp", 1)
    doc: libsbml.SBMLDocument = libsbml.SBMLDocument(sbmlns)
    doc.setPackageRequired("comp", True)

    model: libsbml.Model = doc.createModel()
    model.setId(merged_id)

    comp_doc: libsbml.CompSBMLDocumentPlugin = doc.getPlugin("comp")
    comp_model: libsbml.CompModelPlugin = model.getPlugin("comp")

    for emd_id, path in model_paths.items():
        # create ExternalModelDefinition
        emd: libsbml.ExternalModelDefinition = comp.create_ExternalModelDefinition(
            comp_doc, emd_id, source=str(path))

        # add submodel which references the external model definition
        comp.add_submodel_from_emd(comp_model, submodel_id=emd_id, emd=emd)

    return doc
 def test_L3_SpeciesReference_createWithNS(self):
   xmlns = libsbml.XMLNamespaces()
   xmlns.add( "http://www.sbml.org", "testsbml")
   sbmlns = libsbml.SBMLNamespaces(3,1)
   sbmlns.addNamespaces(xmlns)
   sr = libsbml.SpeciesReference(sbmlns)
   self.assert_( sr.getTypeCode() == libsbml.SBML_SPECIES_REFERENCE )
   self.assert_( sr.getMetaId() == "" )
   self.assert_( sr.getNotes() == None )
   self.assert_( sr.getAnnotation() == None )
   self.assert_( sr.getLevel() == 3 )
   self.assert_( sr.getVersion() == 1 )
   self.assert_( sr.getNamespaces() != None )
   self.assert_( sr.getNamespaces().getLength() == 2 )
   self.assert_( sr.getId() == "" )
   self.assert_( sr.getName() == "" )
   self.assert_( sr.getSpecies() == "" )
   self.assertEqual( True, isnan(sr.getStoichiometry()) )
   self.assert_( sr.getConstant() == False )
   self.assertEqual( False, sr.isSetId() )
   self.assertEqual( False, sr.isSetName() )
   self.assertEqual( False, sr.isSetSpecies() )
   self.assertEqual( False, sr.isSetStoichiometry() )
   self.assertEqual( False, sr.isSetConstant() )
   _dummyList = [ sr ]; _dummyList[:] = []; del _dummyList
   pass  
Exemplo n.º 7
0
 def test_L3_Model_createWithNS(self):
     xmlns = libsbml.XMLNamespaces()
     xmlns.add("http://www.sbml.org", "testsbml")
     sbmlns = libsbml.SBMLNamespaces(3, 1)
     sbmlns.addNamespaces(xmlns)
     m = libsbml.Model(sbmlns)
     self.assert_(m.getTypeCode() == libsbml.SBML_MODEL)
     self.assert_(m.getMetaId() == "")
     self.assert_(m.getNotes() == None)
     self.assert_(m.getAnnotation() == None)
     self.assert_(m.getLevel() == 3)
     self.assert_(m.getVersion() == 1)
     self.assert_(m.getNamespaces() != None)
     self.assert_(m.getNamespaces().getLength() == 2)
     self.assert_(m.getId() == "")
     self.assert_(m.getName() == "")
     self.assert_(m.getSubstanceUnits() == "")
     self.assert_(m.getTimeUnits() == "")
     self.assert_(m.getVolumeUnits() == "")
     self.assert_(m.getAreaUnits() == "")
     self.assert_(m.getLengthUnits() == "")
     self.assert_(m.getConversionFactor() == "")
     self.assertEqual(False, m.isSetId())
     self.assertEqual(False, m.isSetName())
     self.assertEqual(False, m.isSetSubstanceUnits())
     self.assertEqual(False, m.isSetTimeUnits())
     self.assertEqual(False, m.isSetVolumeUnits())
     self.assertEqual(False, m.isSetAreaUnits())
     self.assertEqual(False, m.isSetLengthUnits())
     self.assertEqual(False, m.isSetConversionFactor())
     _dummyList = [m]
     _dummyList[:] = []
     del _dummyList
     pass
Exemplo n.º 8
0
 def test_L3_Reaction_createWithNS(self):
     xmlns = libsbml.XMLNamespaces()
     xmlns.add("http://www.sbml.org", "testsbml")
     sbmlns = libsbml.SBMLNamespaces(3, 1)
     sbmlns.addNamespaces(xmlns)
     r = libsbml.Reaction(sbmlns)
     self.assert_(r.getTypeCode() == libsbml.SBML_REACTION)
     self.assert_(r.getMetaId() == "")
     self.assert_(r.getNotes() == None)
     self.assert_(r.getAnnotation() == None)
     self.assert_(r.getLevel() == 3)
     self.assert_(r.getVersion() == 1)
     self.assert_(r.getNamespaces() != None)
     self.assert_(r.getNamespaces().getLength() == 2)
     self.assert_(r.getId() == "")
     self.assert_(r.getName() == "")
     self.assert_(r.getCompartment() == "")
     self.assert_(r.getFast() == False)
     self.assert_(r.getReversible() == True)
     self.assertEqual(False, r.isSetId())
     self.assertEqual(False, r.isSetName())
     self.assertEqual(False, r.isSetCompartment())
     self.assertEqual(False, r.isSetFast())
     self.assertEqual(False, r.isSetReversible())
     _dummyList = [r]
     _dummyList[:] = []
     del _dummyList
     pass
Exemplo n.º 9
0
 def test_SBMLNamespaces_add_and_remove_namespaces(self):
   sbmlns = libsbml.SBMLNamespaces( 3,1 )
   self.assert_( sbmlns.getLevel() == 3 )
   self.assert_( sbmlns.getVersion() == 1 )
   sbmlns.addNamespace("http://www.sbml.org/sbml/level3/version1/group/version1",  "group")
   sbmlns.addNamespace("http://www.sbml.org/sbml/level3/version1/layout/version1", "layout")
   sbmlns.addNamespace("http://www.sbml.org/sbml/level3/version1/render/version1", "render")
   sbmlns.addNamespace("http://www.sbml.org/sbml/level3/version1/multi/version1",  "multi")
   ns = sbmlns.getNamespaces()
   self.assert_( ns.getLength() == 5 )
   self.assert_( ns.getURI(0) ==  "http://www.sbml.org/sbml/level3/version1/core" )
   self.assert_( ns.getPrefix(0) ==  "" )
   self.assert_( ns.getURI(1) ==  "http://www.sbml.org/sbml/level3/version1/group/version1" )
   self.assert_( ns.getPrefix(1) ==  "group" )
   self.assert_( ns.getURI(2) ==  "http://www.sbml.org/sbml/level3/version1/layout/version1" )
   self.assert_( ns.getPrefix(2) ==  "layout" )
   self.assert_( ns.getURI(3) ==  "http://www.sbml.org/sbml/level3/version1/render/version1" )
   self.assert_( ns.getPrefix(3) ==  "render" )
   self.assert_( ns.getURI(4) ==  "http://www.sbml.org/sbml/level3/version1/multi/version1" )
   self.assert_( ns.getPrefix(4) ==  "multi" )
   sbmlns.removeNamespace("http://www.sbml.org/sbml/level3/version1/layout/version1")
   sbmlns.removeNamespace("http://www.sbml.org/sbml/level3/version1/group/version1")
   sbmlns.removeNamespace("http://www.sbml.org/sbml/level3/version1/render/version1")
   sbmlns.removeNamespace("http://www.sbml.org/sbml/level3/version1/multi/version1")
   pass  
Exemplo n.º 10
0
 def test_L3_Unit_createWithNS(self):
     xmlns = libsbml.XMLNamespaces()
     xmlns.add("http://www.sbml.org", "testsbml")
     sbmlns = libsbml.SBMLNamespaces(3, 1)
     sbmlns.addNamespaces(xmlns)
     u = libsbml.Unit(sbmlns)
     self.assert_(u.getTypeCode() == libsbml.SBML_UNIT)
     self.assert_(u.getMetaId() == "")
     self.assert_(u.getNotes() == None)
     self.assert_(u.getAnnotation() == None)
     self.assert_(u.getLevel() == 3)
     self.assert_(u.getVersion() == 1)
     self.assert_(u.getNamespaces() != None)
     self.assert_(u.getNamespaces().getLength() == 2)
     self.assert_(u.getKind() == libsbml.UNIT_KIND_INVALID)
     self.assertEqual(True, isnan(u.getExponentAsDouble()))
     self.assertEqual(True, isnan(u.getMultiplier()))
     self.assertEqual(False, u.isSetKind())
     self.assertEqual(False, u.isSetExponent())
     self.assertEqual(False, u.isSetMultiplier())
     self.assertEqual(False, u.isSetScale())
     _dummyList = [u]
     _dummyList[:] = []
     del _dummyList
     pass
Exemplo n.º 11
0
 def test_L3_Parameter_createWithNS(self):
   xmlns = libsbml.XMLNamespaces()
   xmlns.add( "http://www.sbml.org", "testsbml")
   sbmlns = libsbml.SBMLNamespaces(3,1)
   sbmlns.addNamespaces(xmlns)
   p = libsbml.Parameter(sbmlns)
   self.assert_( p.getTypeCode() == libsbml.SBML_PARAMETER )
   self.assert_( p.getMetaId() == "" )
   self.assert_( p.getNotes() == None )
   self.assert_( p.getAnnotation() == None )
   self.assert_( p.getLevel() == 3 )
   self.assert_( p.getVersion() == 1 )
   self.assert_( p.getNamespaces() != None )
   self.assert_( p.getNamespaces().getLength() == 2 )
   self.assert_( p.getId() == "" )
   self.assert_( p.getName() == "" )
   self.assert_( p.getUnits() == "" )
   self.assertEqual( True, isnan(p.getValue()) )
   self.assert_( p.getConstant() == True )
   self.assertEqual( False, p.isSetId() )
   self.assertEqual( False, p.isSetName() )
   self.assertEqual( False, p.isSetValue() )
   self.assertEqual( False, p.isSetUnits() )
   self.assertEqual( False, p.isSetConstant() )
   _dummyList = [ p ]; _dummyList[:] = []; del _dummyList
   pass  
Exemplo n.º 12
0
def template_doc_bounds(model_id, create_min_max=True):
    """ Create template bounds model.

    Adds min and max functions

    :param create_min_max:
    :param model_id: model identifier
    :return: SBMLDocument
    """
    sbmlns = libsbml.SBMLNamespaces(SBML_LEVEL, SBML_VERSION, 'comp',
                                    SBML_COMP_VERSION)
    doc = libsbml.SBMLDocument(sbmlns)
    doc.setPackageRequired(SBML_COMP_NAME, True)
    model = doc.createModel()
    model.setId("{}_bounds".format(model_id))
    model.setName("{} (BOUNDS)".format(model_id))
    model.setSBOTerm(comp.SBO_CONTINOUS_FRAMEWORK)

    if create_min_max:
        objects = [
            # definition of min and max
            Function('max', 'lambda(x,y, piecewise(x,gt(x,y),y) )',
                     name='min'),
            Function('min', 'lambda(x,y, piecewise(x,lt(x,y),y) )',
                     name='max'),
        ]
        factory.create_objects(model, objects)

    return doc
Exemplo n.º 13
0
 def test_SBMLNamespaces_L2V1(self):
     sbml = libsbml.SBMLNamespaces(2, 1)
     self.assert_(sbml.getLevel() == 2)
     self.assert_(sbml.getVersion() == 1)
     ns = sbml.getNamespaces()
     self.assert_(ns.getLength() == 1)
     self.assert_(ns.getURI(0) == "http://www.sbml.org/sbml/level2")
     self.assert_(ns.getPrefix(0) == "")
     sbml = None
     pass
Exemplo n.º 14
0
def _distrib_doc() -> libsbml.SBMLDocument:
    """Create distrib document."""
    sbml_level = 3
    sbml_version = 1
    sbmlns = libsbml.SBMLNamespaces(sbml_level, sbml_version)
    sbmlns.addPackageNamespace("distrib", 1)
    doc: libsbml.SBMLDocument = libsbml.SBMLDocument(sbmlns)
    doc.setPackageRequired("distrib", True)

    return doc
Exemplo n.º 15
0
 def test_SyntaxChecker_validXHTML(self):
   NS24 = libsbml.SBMLNamespaces(2,4)
   NS31 = libsbml.SBMLNamespaces(3,1)
   toptriple = libsbml.XMLTriple("notes", "", "")
   triple = libsbml.XMLTriple("p", "", "")
   att = libsbml.XMLAttributes()
   ns = libsbml.XMLNamespaces()
   ns.add( "http://www.w3.org/1999/xhtml", "")
   tt = libsbml.XMLToken("This is my text")
   n1 = libsbml.XMLNode(tt)
   toptoken = libsbml.XMLToken(toptriple,att)
   topnode = libsbml.XMLNode(toptoken)
   token = libsbml.XMLToken(triple,att,ns)
   node = libsbml.XMLNode(token)
   node.addChild(n1)
   topnode.addChild(node)
   self.assert_( libsbml.SyntaxChecker.hasExpectedXHTMLSyntax(topnode,None) == True )
   self.assert_( libsbml.SyntaxChecker.hasExpectedXHTMLSyntax(topnode,NS24) == True )
   self.assert_( libsbml.SyntaxChecker.hasExpectedXHTMLSyntax(topnode,NS31) == True )
   triple = libsbml.XMLTriple("html", "", "")
   token = libsbml.XMLToken(triple,att,ns)
   node = libsbml.XMLNode(token)
   node.addChild(n1)
   topnode.removeChild(0)
   topnode.addChild(node)
   self.assert_( libsbml.SyntaxChecker.hasExpectedXHTMLSyntax(topnode,None) == True )
   self.assert_( libsbml.SyntaxChecker.hasExpectedXHTMLSyntax(topnode,NS24) == False )
   self.assert_( libsbml.SyntaxChecker.hasExpectedXHTMLSyntax(topnode,NS31) == True )
   triple = libsbml.XMLTriple("html", "", "")
   ns.clear()
   token = libsbml.XMLToken(triple,att,ns)
   node = libsbml.XMLNode(token)
   node.addChild(n1)
   topnode.removeChild(0)
   topnode.addChild(node)
   self.assert_( libsbml.SyntaxChecker.hasExpectedXHTMLSyntax(topnode,None) == False )
   self.assert_( libsbml.SyntaxChecker.hasExpectedXHTMLSyntax(topnode,NS24) == False )
   self.assert_( libsbml.SyntaxChecker.hasExpectedXHTMLSyntax(topnode,NS31) == False )
   pass  
Exemplo n.º 16
0
    def _init_sbml_model(self) -> None:
        """Create and initialize the SBML model."""
        # FIXME: support arbitrary levels and versions
        sbmlns = libsbml.SBMLNamespaces(3, 1)
        sbmlns.addPackageNamespace("comp", 1)
        doc: libsbml.SBMLDocument = libsbml.SBMLDocument(sbmlns)
        doc.setPackageRequired("comp", True)
        self.doc = doc
        model: libsbml.Model = doc.createModel()

        model.setNotes(notes)
        model.setId(f"Interpolation_{self.method}")
        model.setName(f"Interpolation_{self.method}")
        self.model = model
 def test_FunctionDefinition_createWithNS(self):
   xmlns = libsbml.XMLNamespaces()
   xmlns.add( "http://www.sbml.org", "testsbml")
   sbmlns = libsbml.SBMLNamespaces(2,1)
   sbmlns.addNamespaces(xmlns)
   object = libsbml.FunctionDefinition(sbmlns)
   self.assert_( object.getTypeCode() == libsbml.SBML_FUNCTION_DEFINITION )
   self.assert_( object.getMetaId() == "" )
   self.assert_( object.getNotes() == None )
   self.assert_( object.getAnnotation() == None )
   self.assert_( object.getLevel() == 2 )
   self.assert_( object.getVersion() == 1 )
   self.assert_( object.getNamespaces() != None )
   self.assert_( object.getNamespaces().getLength() == 2 )
   _dummyList = [ object ]; _dummyList[:] = []; del _dummyList
   pass  
Exemplo n.º 18
0
 def test_Constraint_createWithNS(self):
   xmlns = libsbml.XMLNamespaces()
   xmlns.add( "http://www.sbml.org", "testsbml")
   sbmlns = libsbml.SBMLNamespaces(2,2)
   sbmlns.addNamespaces(xmlns)
   object = libsbml.Constraint(sbmlns)
   self.assert_( object.getTypeCode() == libsbml.SBML_CONSTRAINT )
   self.assert_( object.getMetaId() == "" )
   self.assert_( object.getNotes() == None )
   self.assert_( object.getAnnotation() == None )
   self.assert_( object.getLevel() == 2 )
   self.assert_( object.getVersion() == 2 )
   self.assert_( object.getNamespaces() != None )
   self.assert_( object.getNamespaces().getLength() == 2 )
   _dummyList = [ object ]; _dummyList[:] = []; del _dummyList
   pass  
Exemplo n.º 19
0
 def test_EventAssignment_createWithNS(self):
   xmlns = libsbml.XMLNamespaces()
   xmlns.add( "http://www.sbml.org", "testsbml")
   sbmlns = libsbml.SBMLNamespaces(2,1)
   sbmlns.addNamespaces(xmlns)
   object = libsbml.EventAssignment(sbmlns)
   self.assert_( object.getTypeCode() == libsbml.SBML_EVENT_ASSIGNMENT )
   self.assert_( object.getMetaId() == "" )
   self.assert_( object.getNotes() == None )
   self.assert_( object.getAnnotation() == None )
   self.assert_( object.getLevel() == 2 )
   self.assert_( object.getVersion() == 1 )
   self.assert_( object.getNamespaces() != None )
   self.assert_( object.getNamespaces().getLength() == 2 )
   _dummyList = [ object ]; _dummyList[:] = []; del _dummyList
   pass  
 def test_StoichiometryMath_createWithNS(self):
   xmlns = libsbml.XMLNamespaces()
   xmlns.add( "http://www.sbml.org", "testsbml")
   sbmlns = libsbml.SBMLNamespaces(2,1)
   sbmlns.addNamespaces(xmlns)
   object = libsbml.StoichiometryMath(sbmlns)
   self.assert_( object.getTypeCode() == libsbml.SBML_STOICHIOMETRY_MATH )
   self.assert_( object.getMetaId() == "" )
   self.assert_( object.getNotes() == None )
   self.assert_( object.getAnnotation() == None )
   self.assert_( object.getLevel() == 2 )
   self.assert_( object.getVersion() == 1 )
   self.assert_( object.getNamespaces() != None )
   self.assert_( object.getNamespaces().getLength() == 2 )
   _dummyList = [ object ]; _dummyList[:] = []; del _dummyList
   pass  
Exemplo n.º 21
0
def template_doc_update(model_id):
    """ Create template update model.

    :param model_id: model identifier
    :return: SBMLDocument
    """
    sbmlns = libsbml.SBMLNamespaces(SBML_LEVEL, SBML_VERSION, 'comp',
                                    SBML_COMP_VERSION)
    doc = libsbml.SBMLDocument(sbmlns)
    doc.setPackageRequired(SBML_COMP_NAME, True)

    # model
    model = doc.createModel()
    model.setId("{}_update".format(model_id))
    model.setName("{} (UPDATE)".format(model_id))
    model.setSBOTerm(comp.SBO_CONTINOUS_FRAMEWORK)
    return doc
Exemplo n.º 22
0
    def _init_sbml_model(self):
        """ Initializes the SBML model.

        :return:
        :rtype:
        """
        sbmlns = libsbml.SBMLNamespaces(3, 1)
        sbmlns.addPackageNamespace("comp", 1)
        doc = libsbml.SBMLDocument(sbmlns)
        doc.setPackageRequired("comp", True)
        self.doc = doc
        model = doc.createModel()

        model.setNotes(notes)
        model.setId("Interpolation_{}".format(self.method))
        model.setName("Interpolation_{}".format(self.method))
        self.model = model
Exemplo n.º 23
0
 def test_CompartmentType_createWithNS(self):
     xmlns = libsbml.XMLNamespaces()
     xmlns.add("http://www.sbml.org", "testsbml")
     sbmlns = libsbml.SBMLNamespaces(2, 2)
     sbmlns.addNamespaces(xmlns)
     object = libsbml.CompartmentType(sbmlns)
     self.assert_(object.getTypeCode() == libsbml.SBML_COMPARTMENT_TYPE)
     self.assert_(object.getMetaId() == "")
     self.assert_(object.getNotes() == None)
     self.assert_(object.getAnnotation() == None)
     self.assert_(object.getLevel() == 2)
     self.assert_(object.getVersion() == 2)
     self.assert_(object.getNamespaces() != None)
     self.assert_(object.getNamespaces().getLength() == 2)
     _dummyList = [object]
     _dummyList[:] = []
     del _dummyList
     pass
Exemplo n.º 24
0
 def test_Delay_createWithNS(self):
     xmlns = libsbml.XMLNamespaces()
     xmlns.add("http://www.sbml.org", "testsbml")
     sbmlns = libsbml.SBMLNamespaces(2, 1)
     sbmlns.addNamespaces(xmlns)
     object = libsbml.Delay(sbmlns)
     self.assert_(object.getTypeCode() == libsbml.SBML_DELAY)
     self.assert_(object.getMetaId() == "")
     self.assert_(object.getNotes() == None)
     self.assert_(object.getAnnotation() == None)
     self.assert_(object.getLevel() == 2)
     self.assert_(object.getVersion() == 1)
     self.assert_(object.getNamespaces() != None)
     self.assert_(object.getNamespaces().getLength() == 2)
     _dummyList = [object]
     _dummyList[:] = []
     del _dummyList
     pass
Exemplo n.º 25
0
 def test_AlgebraicRule_createWithNS(self):
     xmlns = libsbml.XMLNamespaces()
     xmlns.add("http://www.sbml.org", "testsbml")
     sbmlns = libsbml.SBMLNamespaces(2, 3)
     sbmlns.addNamespaces(xmlns)
     r = libsbml.AlgebraicRule(sbmlns)
     self.assert_(r.getTypeCode() == libsbml.SBML_ALGEBRAIC_RULE)
     self.assert_(r.getMetaId() == "")
     self.assert_(r.getNotes() == None)
     self.assert_(r.getAnnotation() == None)
     self.assert_(r.getLevel() == 2)
     self.assert_(r.getVersion() == 3)
     self.assert_(r.getNamespaces() != None)
     self.assert_(r.getNamespaces().getLength() == 2)
     _dummyList = [r]
     _dummyList[:] = []
     del _dummyList
     pass
Exemplo n.º 26
0
def template_doc_top(model_id, emds):
    """ Create template top model.
    Adds the ExternalModelDefinitions and submodels for FBA, BOUNDS & UPDATE model.

    :param emds:
    :param model_id: model identifier
    :return: SBMLDocument
    """
    sbmlns = libsbml.SBMLNamespaces(SBML_LEVEL, SBML_VERSION, 'comp',
                                    SBML_COMP_VERSION)
    doc = libsbml.SBMLDocument(sbmlns)
    doc.setPackageRequired(SBML_COMP_NAME, True)
    doc.setPackageRequired(SBML_FBC_NAME, False)

    # create models and submodels
    model = doc.createModel()
    model.setId("{}_top".format(model_id))
    model.setName("{} (TOP)".format(model_id))
    model.setSBOTerm(comp.SBO_CONTINOUS_FRAMEWORK)

    # create listOfExternalModelDefinitions
    doc_comp = doc.getPlugin(SBML_COMP_NAME)
    emd_fba = comp.create_ExternalModelDefinition(
        doc_comp,
        "{}_fba".format(model_id),
        source=emds["{}_fba".format(model_id)])
    emd_bounds = comp.create_ExternalModelDefinition(
        doc_comp,
        "{}_bounds".format(model_id),
        source=emds["{}_bounds".format(model_id)])
    emd_update = comp.create_ExternalModelDefinition(
        doc_comp,
        "{}_update".format(model_id),
        source=emds["{}_update".format(model_id)])

    # add submodel which references the external model definition
    doc_model = model.getPlugin(SBML_COMP_NAME)
    comp.add_submodel_from_emd(doc_model, submodel_id="fba", emd=emd_fba)
    comp.add_submodel_from_emd(doc_model, submodel_id="bounds", emd=emd_bounds)
    comp.add_submodel_from_emd(doc_model, submodel_id="update", emd=emd_update)

    return doc
Exemplo n.º 27
0
def create_port_doc():
    sbmlns = libsbml.SBMLNamespaces(3, 1, "comp", 1)
    doc = libsbml.SBMLDocument(sbmlns)
    doc.setPackageRequired("comp", True)
    model = doc.createModel()
    model.setId("toy_update")
    model.setName("toy (UPDATE submodel)")
    model.setSBOTerm(SBO_CONTINOUS_FRAMEWORK)

    objects = [
        fac.Compartment(
            sid="extern",
            value=1.0,
            unit="m3",
            constant=True,
            name="external compartment",
        ),
        fac.Species(
            sid="A",
            name="A",
            initialConcentration=10.0,
            hasOnlySubstanceUnits=True,
            compartment="extern",
        ),
        fac.Species(
            sid="C",
            name="C",
            initialConcentration=0,
            hasOnlySubstanceUnits=True,
            compartment="extern",
        ),
        fac.Parameter(sid="EX_A",
                      value=1.0,
                      constant=False,
                      sboTerm="SBO:0000613"),
        fac.Parameter(sid="EX_C",
                      value=1.0,
                      constant=False,
                      sboTerm="SBO:0000613"),
    ]
    fac.create_objects(model, obj_iter=objects)
    return doc
Exemplo n.º 28
0
 def test_ModifierSpeciesReference_createWithNS(self):
     xmlns = libsbml.XMLNamespaces()
     xmlns.add("http://www.sbml.org", "testsbml")
     sbmlns = libsbml.SBMLNamespaces(2, 1)
     sbmlns.addNamespaces(xmlns)
     object = libsbml.ModifierSpeciesReference(sbmlns)
     self.assert_(
         object.getTypeCode() == libsbml.SBML_MODIFIER_SPECIES_REFERENCE)
     self.assert_(object.getMetaId() == "")
     self.assert_(object.getNotes() == None)
     self.assert_(object.getAnnotation() == None)
     self.assert_(object.getLevel() == 2)
     self.assert_(object.getVersion() == 1)
     self.assert_(object.getNamespaces() != None)
     n = object.getNamespaces()
     self.assert_(n.getLength() == 2)
     _dummyList = [object]
     _dummyList[:] = []
     del _dummyList
     pass
Exemplo n.º 29
0
def create_fba_doc():
    sbmlns = libsbml.SBMLNamespaces(3, 1)
    sbmlns.addPackageNamespace("fbc", 2)
    sbmlns.addPackageNamespace("comp", 1)

    doc = libsbml.SBMLDocument(sbmlns)
    doc.setPackageRequired("comp", True)
    doc.setPackageRequired("fbc", False)
    model = doc.createModel()
    mplugin = model.getPlugin("fbc")
    mplugin.setStrict(True)

    objects = [
        fac.Compartment(sid='cell', value=1.0),
        fac.Species(sid='A', initialConcentration=0, compartment="cell"),
        fac.Species(sid='B', initialConcentration=0, compartment="cell"),
    ]
    fac.create_objects(model, objects)

    return doc
Exemplo n.º 30
0
 def test_Compartment_createWithNS(self):
     xmlns = libsbml.XMLNamespaces()
     xmlns.add("http://www.sbml.org", "testsbml")
     sbmlns = libsbml.SBMLNamespaces(2, 1)
     sbmlns.addNamespaces(xmlns)
     c = libsbml.Compartment(sbmlns)
     self.assert_(c.getTypeCode() == libsbml.SBML_COMPARTMENT)
     self.assert_(c.getMetaId() == "")
     self.assert_(c.getNotes() == None)
     self.assert_(c.getAnnotation() == None)
     self.assert_(c.getLevel() == 2)
     self.assert_(c.getVersion() == 1)
     self.assert_(c.getNamespaces() != None)
     self.assert_(c.getNamespaces().getLength() == 2)
     self.assert_(c.getName() == "")
     self.assert_(c.getSpatialDimensions() == 3)
     self.assert_(c.getConstant() == True)
     _dummyList = [c]
     _dummyList[:] = []
     del _dummyList
     pass