getRule() public method

public getRule ( long n ) : Rule
n long
return Rule
コード例 #1
0
 public void test_AssignmentRule_parent_create()
 {
     Model m = new Model(2,4);
       AssignmentRule r = m.createAssignmentRule();
       ListOf lo = m.getListOfRules();
       assertTrue( lo == m.getRule(0).getParentSBMLObject() );
       assertTrue( lo == r.getParentSBMLObject() );
       assertTrue( m == lo.getParentSBMLObject() );
 }
コード例 #2
0
 public void test_AssignmentRule_ancestor_create()
 {
     Model m = new Model(2,4);
       AssignmentRule r = m.createAssignmentRule();
       ListOf lo = m.getListOfRules();
       assertTrue( r.getAncestorOfType(libsbml.SBML_MODEL) == m );
       assertTrue( r.getAncestorOfType(libsbml.SBML_LIST_OF) == lo );
       assertTrue( r.getAncestorOfType(libsbml.SBML_DOCUMENT) == null );
       assertTrue( r.getAncestorOfType(libsbml.SBML_EVENT) == null );
       Rule obj = m.getRule(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 );
 }
コード例 #3
0
ファイル: RuleImporter.cs プロジェクト: onwhenrdy/MoBi
 protected override void Import(Model model)
 {
     for (long i = 0; i < model.getNumRules(); i++)
     {
         var rule = model.getRule(i);
         if (rule.isAssignment())
         {
             CreateAssignmentRule(rule, model);
         }
         if (rule.isRate())
         {
             CreateRateRule(rule, model);
         }
         if (rule.isAlgebraic())
         {
             CreateAlgebraicRule(model);
         }
     }
     AddToProject();
 }
コード例 #4
0
ファイル: printMath.cs プロジェクト: TotteKarlsson/roadrunner
    private static void printMath(Model m)
    {
        int n;

        for (n = 0; n < m.getNumFunctionDefinitions(); ++n)
        {
            printFunctionDefinition(n + 1, m.getFunctionDefinition(n));
        }

        for (n = 0; n < m.getNumRules(); ++n)
        {
            printRuleMath(n + 1, m.getRule(n));
        }

        Console.WriteLine();

        for (n = 0; n < m.getNumReactions(); ++n)
        {
            printReactionMath(n + 1, m.getReaction(n));
        }

        Console.WriteLine();

        for (n = 0; n < m.getNumEvents(); ++n)
        {
            printEventMath(n + 1, m.getEvent(n));
        }
    }
コード例 #5
0
 public void test_Rule_parent_add()
 {
     Rule ia = new RateRule(2,4);
       ia.setVariable("a");
       ia.setMath(libsbml.parseFormula("9"));
       Model m = new Model(2,4);
       m.addRule(ia);
       ia = null;
       ListOf lo = m.getListOfRules();
       assertTrue( lo == m.getRule(0).getParentSBMLObject() );
       assertTrue( m == lo.getParentSBMLObject() );
 }
コード例 #6
0
 public void test_Rule_ancestor_add()
 {
     Rule ia = new RateRule(2,4);
       ia.setVariable("a");
       ia.setMath(libsbml.parseFormula("9"));
       Model m = new Model(2,4);
       m.addRule(ia);
       ia = null;
       ListOf lo = m.getListOfRules();
       Rule obj = m.getRule(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 );
 }
コード例 #7
0
ファイル: TestReadSBML.cs プロジェクト: yarden/roadrunner
 public void test_ReadSBML_AlgebraicRule()
 {
     Rule ar;
       string s = wrapSBML_L1v2("<listOfRules>" +
     "  <algebraicRule formula='x + 1'/>" +
     "</listOfRules>");
       D = libsbml.readSBMLFromString(s);
       M = D.getModel();
       assertTrue( M.getNumRules() == 1 );
       ar = M.getRule(0);
       assertTrue((  "x + 1" == ar.getFormula() ));
 }
コード例 #8
0
ファイル: TestReadSBML.cs プロジェクト: yarden/roadrunner
 public void test_ReadSBML_metaid()
 {
     SBase sb;
       string s = wrapSBML_L2v1("<listOfFunctionDefinitions>" +
     "  <functionDefinition metaid='fd'/>" +
     "</listOfFunctionDefinitions>" +
     "<listOfUnitDefinitions>" +
     "  <unitDefinition metaid='ud'/>" +
     "</listOfUnitDefinitions>" +
     "<listOfCompartments>" +
     "  <compartment metaid='c'/>" +
     "</listOfCompartments>" +
     "<listOfSpecies>" +
     "  <species metaid='s'/>" +
     "</listOfSpecies>" +
     "<listOfParameters>" +
     "  <parameter metaid='p'/>" +
     "</listOfParameters>" +
     "<listOfRules>" +
     "  <rateRule metaid='rr'/>" +
     "</listOfRules>" +
     "<listOfReactions>" +
     "  <reaction metaid='rx'/>" +
     "</listOfReactions>" +
     "<listOfEvents>" +
     " <event metaid='e'/>" +
     "</listOfEvents>");
       D = libsbml.readSBMLFromString(s);
       M = D.getModel();
       assertTrue( M != null );
       sb = M.getFunctionDefinition(0);
       assertEquals( true, sb.isSetMetaId() );
       assertTrue((  "fd" == sb.getMetaId() ));
       sb = M.getUnitDefinition(0);
       assertEquals( true, sb.isSetMetaId() );
       assertTrue((  "ud" == sb.getMetaId() ));
       sb = M.getCompartment(0);
       assertEquals( true, sb.isSetMetaId() );
       assertTrue((  "c" == sb.getMetaId() ));
       sb = M.getSpecies(0);
       assertEquals( true, sb.isSetMetaId() );
       assertTrue((  "s" == sb.getMetaId() ));
       sb = M.getParameter(0);
       assertEquals( true, sb.isSetMetaId() );
       assertTrue((  "p" == sb.getMetaId() ));
       sb = M.getRule(0);
       assertEquals( true, sb.isSetMetaId() );
       assertTrue((  "rr" == sb.getMetaId() ));
       sb = M.getReaction(0);
       assertEquals( true, sb.isSetMetaId() );
       assertTrue((  "rx" == sb.getMetaId() ));
       sb = M.getEvent(0);
       assertEquals( true, sb.isSetMetaId() );
       assertTrue((  "e" == sb.getMetaId() ));
 }
コード例 #9
0
ファイル: TestReadSBML.cs プロジェクト: yarden/roadrunner
 public void test_ReadSBML_CompartmentVolumeRule()
 {
     Rule cvr;
       string s = wrapSBML_L1v2("<listOfRules>" +
     "  <compartmentVolumeRule compartment='A' formula='0.10 * t'/>" +
     "</listOfRules>");
       D = libsbml.readSBMLFromString(s);
       M = D.getModel();
       assertTrue( M.getNumRules() == 1 );
       cvr = M.getRule(0);
       assertEquals( true, cvr.isCompartmentVolume() );
       assertTrue((  "A" == cvr.getVariable() ));
       assertTrue((  "0.10 * t"  == cvr.getFormula() ));
       assertTrue( cvr.getType() == libsbml.RULE_TYPE_SCALAR );
 }
コード例 #10
0
ファイル: TestReadSBML.cs プロジェクト: yarden/roadrunner
 public void test_ReadSBML_AssignmentRule()
 {
     Rule ar;
       ASTNode math;
       string formula;
       string s = wrapSBML_L2v1("<listOfRules>" +
     "  <assignmentRule variable='k'>" +
     "    <math>" +
     "      <apply>" +
     "        <divide/>" +
     "        <ci> k3 </ci>" +
     "        <ci> k2 </ci>" +
     "      </apply>" +
     "    </math>" +
     "  </assignmentRule>" +
     "</listOfRules>");
       D = libsbml.readSBMLFromString(s);
       M = D.getModel();
       assertTrue( M.getNumRules() == 1 );
       ar = M.getRule(0);
       assertTrue( ar != null );
       assertEquals( true, ar.isSetMath() );
       math = ar.getMath();
       formula = ar.getFormula();
       assertTrue( formula != null );
       assertTrue((  "k3 / k2" == formula ));
 }
コード例 #11
0
ファイル: TestReadSBML.cs プロジェクト: yarden/roadrunner
 public void test_ReadSBML_SpeciesConcentrationRule()
 {
     Rule scr;
       string s = wrapSBML_L1v2("<listOfRules>" +
     "  <speciesConcentrationRule species='s2' formula='k * t/(1 + k)'/>" +
     "</listOfRules>");
       D = libsbml.readSBMLFromString(s);
       M = D.getModel();
       assertTrue( M.getNumRules() == 1 );
       scr = M.getRule(0);
       assertEquals( true, scr.isSpeciesConcentration() );
       assertTrue((  "s2" == scr.getVariable() ));
       assertTrue((  "k * t/(1 + k)"  == scr.getFormula() ));
       assertTrue( scr.getType() == libsbml.RULE_TYPE_SCALAR );
 }
コード例 #12
0
ファイル: TestReadSBML.cs プロジェクト: yarden/roadrunner
 public void test_ReadSBML_RateRule()
 {
     Rule rr;
       ASTNode math;
       string formula;
       string s = wrapSBML_L2v1("<listOfRules>" +
     "  <rateRule variable='x'>" +
     "    <math>" +
     "      <apply>" +
     "        <times/>" +
     "        <apply>" +
     "          <minus/>" +
     "          <cn> 1 </cn>" +
     "          <ci> x </ci>" +
     "        </apply>" +
     "        <apply>" +
     "          <ln/>" +
     "          <ci> x </ci>" +
     "        </apply>" +
     "      </apply>" +
     "    </math>" +
     "  </rateRule>" +
     "</listOfRules>");
       D = libsbml.readSBMLFromString(s);
       M = D.getModel();
       assertTrue( M.getNumRules() == 1 );
       rr = M.getRule(0);
       assertTrue( rr != null );
       assertEquals( true, rr.isSetMath() );
       math = rr.getMath();
       formula = rr.getFormula();
       assertTrue( formula != null );
       assertTrue((  "(1 - x) * log(x)" == formula ));
 }
コード例 #13
0
ファイル: TestReadSBML.cs プロジェクト: yarden/roadrunner
 public void test_ReadSBML_ParameterRule()
 {
     Rule pr;
       string s = wrapSBML_L1v2("<listOfRules>" +
     "  <parameterRule name='k' formula='k3/k2'/>" +
     "</listOfRules>");
       D = libsbml.readSBMLFromString(s);
       M = D.getModel();
       assertTrue( M.getNumRules() == 1 );
       pr = M.getRule(0);
       assertEquals( true, pr.isParameter() );
       assertTrue((  "k" == pr.getVariable() ));
       assertTrue((  "k3/k2"  == pr.getFormula() ));
       assertTrue( pr.getType() == libsbml.RULE_TYPE_SCALAR );
 }
コード例 #14
0
ファイル: TestReadSBML.cs プロジェクト: yarden/roadrunner
 public void test_ReadSBML_AlgebraicRule_L2()
 {
     Rule ar;
       ASTNode math;
       string formula;
       string s = wrapSBML_L2v1("<listOfRules>" +
     "  <algebraicRule>" +
     "    <math>" +
     "      <apply>" +
     "        <minus/>" +
     "        <apply>" +
     "          <plus/>" +
     "            <ci> S1 </ci>" +
     "            <ci> S2 </ci>" +
     "        </apply>" +
     "        <ci> T </ci>" +
     "      </apply>" +
     "    </math>" +
     "  </algebraicRule>" +
     "</listOfRules>");
       D = libsbml.readSBMLFromString(s);
       M = D.getModel();
       assertTrue( M.getNumRules() == 1 );
       ar = M.getRule(0);
       assertTrue( ar != null );
       assertEquals( true, ar.isSetMath() );
       math = ar.getMath();
       formula = ar.getFormula();
       assertTrue( formula != null );
       assertTrue((  "S1 + S2 - T" == formula ));
 }