createCompartment() 공개 메소드

public createCompartment ( ) : Compartment
리턴 Compartment
예제 #1
0
 public void test_Model_createCompartment()
 {
     Model m = new  Model(2,2);
       Compartment p = m.createCompartment();
       assertTrue( m.getNumCompartments() == 1 );
       assertTrue( (p).getLevel() == 2 );
       assertTrue( (p).getVersion() == 2 );
       m = null;
 }
예제 #2
0
 public void test_Model_L1V2()
 {
     Model m = new Model(1,2);
       assertEquals( false, (m.hasRequiredElements()) );
       m.createCompartment();
       assertEquals( true, m.hasRequiredElements() );
       m = null;
 }
 public void test_internal_consistency_check_99904_model()
 {
     SBMLDocument d = new SBMLDocument(2,4);
       long errors;
       d.setLevelAndVersion(1,2,false);
       Model m = new Model(2,4);
       Compartment c = m.createCompartment();
       c.setId("cc");
       m.setMetaId("mmm");
       d.setModel(m);
       errors = d.checkInternalConsistency();
       assertTrue( errors == 1 );
       assertTrue( d.getError(0).getErrorId() == 20201 );
       d = null;
 }
예제 #4
0
 public void test_Model_L1V1()
 {
     Model m = new Model(1,1);
       assertEquals( false, (m.hasRequiredElements()) );
       m.createCompartment();
       assertEquals( false, (m.hasRequiredElements()) );
       m.createSpecies();
       assertEquals( false, (m.hasRequiredElements()) );
       m.createReaction();
       assertEquals( true, m.hasRequiredElements() );
       m = null;
 }
예제 #5
0
 public void test_Compartment_parent_create()
 {
     Model m = new Model(2,4);
       Compartment c = m.createCompartment();
       ListOf lo = m.getListOfCompartments();
       assertTrue( lo == m.getCompartment(0).getParentSBMLObject() );
       assertTrue( lo == c.getParentSBMLObject() );
       assertTrue( m == lo.getParentSBMLObject() );
 }
예제 #6
0
        private static void createSystem(EcellObject anEml, Model aSBMLModel)
        {
            if ( anEml.LocalID == "SBMLParameter" || anEml.LocalID == "SBMLRule" )
                return;

            // create Compartment object
            Compartment aCompartment = aSBMLModel.createCompartment();

            // set ID ROOT System and Other System
            string aCompartmentID = "";
            if (anEml.LocalID == "/")
                aCompartmentID = "default"; // Root system
            else
                aCompartmentID = anEml.LocalID;
            //  aCompartmentID = "default" + anEml.Key.Replace( "/", "__" );

            ID_Namespace.Add( aCompartmentID );

            if (aSBMLModel.getLevel() == 1)
                aCompartment.setName( aCompartmentID );
            else if (aSBMLModel.getLevel() == 2)
                aCompartment.setId( aCompartmentID );

            foreach(EcellObject child in anEml.Children)
            {
                if (!(child is EcellVariable))
                    continue;
                // set Size and constant of Compartment
                if( child.LocalID == "SIZE" )
                {
                    double size = ((EcellSystem)anEml).SizeInVolume;
                    aCompartment.setSize(size);

                    EcellValue value = anEml.GetEcellValue("Fixed");
                    if(value != null)
                        aCompartment.setConstant(System.Convert.ToBoolean((int)value));
                }
                // set Dimensions of Compartment
                else if( child.LocalID == "Dimensions" )
                {
                    int dimension = (int)child.GetEcellValue("Value");
                    aCompartment.setSpatialDimensions(dimension);
                }
            }
            // set Outside element of Compartment
            if( anEml.ParentSystemID == "/" && anEml.LocalID != "")
            {
                aCompartment.setOutside( "default" );
            }
            else if (!string.IsNullOrEmpty(anEml.ParentSystemID))
            {
                aCompartment.setOutside(
                    getCurrentCompartment( anEml.ParentSystemID ));
            }
        }
예제 #7
0
 public void test_create_l1v1_units()
 {
     SBMLDocument d;
       Model m;
       Compartment c;
       KineticLaw kl;
       Parameter p;
       Reaction r;
       Species s;
       SpeciesReference sr;
       Unit u;
       UnitDefinition ud;
       d = new  SBMLDocument();
       m = new  Model(2,4);
       d.setModel(m);
       ud = m.createUnitDefinition();
       ud.setName( "substance");
       u = m.createUnit();
       u.setKind(libsbml.UNIT_KIND_MOLE);
       u.setScale(-3);
       ud = m.createUnitDefinition();
       ud.setName( "mls");
       u = m.createUnit();
       u.setKind(libsbml.UNIT_KIND_MOLE);
       u.setScale(-3);
       u = m.createUnit();
       u.setKind(libsbml.UNIT_KIND_LITER);
       u.setExponent(-1);
       u = m.createUnit();
       u.setKind(libsbml.UNIT_KIND_SECOND);
       u.setExponent(-1);
       c = m.createCompartment();
       c.setName( "cell");
       s = m.createSpecies();
       s.setName( "x0");
       s.setCompartment( "cell");
       s.setInitialAmount(1);
       s = m.createSpecies();
       s.setName( "x1");
       s.setCompartment( "cell");
       s.setInitialAmount(1);
       s = m.createSpecies();
       s.setName( "s1");
       s.setCompartment( "cell");
       s.setInitialAmount(1);
       s = m.createSpecies();
       s.setName( "s2");
       s.setCompartment( "cell");
       s.setInitialAmount(1);
       p = m.createParameter();
       p.setName( "vm");
       p.setUnits( "mls");
       p.setValue(2);
       p = m.createParameter();
       p.setName( "km");
       p.setValue(2);
       r = m.createReaction();
       r.setName( "v1");
       sr = m.createReactant();
       sr.setSpecies( "x0");
       sr = m.createProduct();
       sr.setSpecies( "s1");
       kl = m.createKineticLaw();
       kl.setFormula( "(vm * s1)/(km + s1)");
       r = m.createReaction();
       r.setName( "v2");
       sr = m.createReactant();
       sr.setSpecies( "s1");
       sr = m.createProduct();
       sr.setSpecies( "s2");
       kl = m.createKineticLaw();
       kl.setFormula( "(vm * s2)/(km + s2)");
       r = m.createReaction();
       r.setName( "v3");
       sr = m.createReactant();
       sr.setSpecies( "s2");
       sr = m.createProduct();
       sr.setSpecies( "x1");
       kl = m.createKineticLaw();
       kl.setFormula( "(vm * s1)/(km + s1)");
       d = null;
 }
예제 #8
0
 public void test_Compartment_ancestor_create()
 {
     Model m = new Model(2,4);
       Compartment c = m.createCompartment();
       ListOf lo = m.getListOfCompartments();
       assertTrue( c.getAncestorOfType(libsbml.SBML_MODEL) == m );
       assertTrue( c.getAncestorOfType(libsbml.SBML_LIST_OF) == lo );
       assertTrue( c.getAncestorOfType(libsbml.SBML_DOCUMENT) == null );
       assertTrue( c.getAncestorOfType(libsbml.SBML_EVENT) == null );
       Compartment obj = m.getCompartment(0);
       assertTrue( obj.getAncestorOfType(libsbml.SBML_MODEL) == m );
       assertTrue( obj.getAncestorOfType(libsbml.SBML_LIST_OF) == lo );
       assertTrue( obj.getAncestorOfType(libsbml.SBML_DOCUMENT) == null );
       assertTrue( obj.getAncestorOfType(libsbml.SBML_EVENT) == null );
 }