protected override void Import(Model model) { for (long i = 0; i < model.getNumFunctionDefinitions(); i++) { _functionDefinitions.Add(model.getFunctionDefinition(i)); } _astHandler.FunctionDefinitions = _functionDefinitions; }
public void test_FunctionDefinition_parent_create() { Model m = new Model(2,4); FunctionDefinition fd = m.createFunctionDefinition(); ListOf lo = m.getListOfFunctionDefinitions(); assertTrue( lo == m.getFunctionDefinition(0).getParentSBMLObject() ); assertTrue( lo == fd.getParentSBMLObject() ); assertTrue( m == lo.getParentSBMLObject() ); }
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)); } }
public void test_FunctionDefinition_ancestor_create() { Model m = new Model(2,4); FunctionDefinition fd = m.createFunctionDefinition(); ListOf lo = m.getListOfFunctionDefinitions(); assertTrue( fd.getAncestorOfType(libsbml.SBML_MODEL) == m ); assertTrue( fd.getAncestorOfType(libsbml.SBML_LIST_OF) == lo ); assertTrue( fd.getAncestorOfType(libsbml.SBML_DOCUMENT) == null ); assertTrue( fd.getAncestorOfType(libsbml.SBML_EVENT) == null ); FunctionDefinition obj = m.getFunctionDefinition(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 ); }
public void test_FunctionDefinition_parent_add() { FunctionDefinition fd = new FunctionDefinition(2,4); Model m = new Model(2,4); fd.setId("fd"); fd.setMath(libsbml.parseFormula("l")); m.addFunctionDefinition(fd); fd = null; ListOf lo = m.getListOfFunctionDefinitions(); assertTrue( lo == m.getFunctionDefinition(0).getParentSBMLObject() ); assertTrue( m == lo.getParentSBMLObject() ); }
public void test_FunctionDefinition_ancestor_add() { FunctionDefinition fd = new FunctionDefinition(2,4); Model m = new Model(2,4); fd.setId("fd"); fd.setMath(libsbml.parseFormula("l")); m.addFunctionDefinition(fd); fd = null; ListOf lo = m.getListOfFunctionDefinitions(); FunctionDefinition obj = m.getFunctionDefinition(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 ); }
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() )); }
public void test_ReadSBML_FunctionDefinition_OnlyBVars() { FunctionDefinition fd; SBMLError error; int numErrors; ASTNode math; string formula; string s = wrapSBML_L2v1("<listOfFunctionDefinitions>" + " <functionDefinition id='invalid'>" + " <math xmlns='http://www.w3.org/1998/Math/MathML'>" + " <lambda>" + " <bvar><ci> x </ci></bvar>" + " <bvar><ci> y </ci></bvar>" + " <bvar><ci> z </ci></bvar>" + " </lambda>" + " </math>" + " </functionDefinition>" + "</listOfFunctionDefinitions>"); D = libsbml.readSBMLFromString(s); M = D.getModel(); D.checkInternalConsistency(); D.checkConsistency(); numErrors = (int)D.getNumErrors(); assertTrue( numErrors == 1 ); error = D.getError(0); int errorId = (int)error.getErrorId(); assertTrue( errorId == libsbml.NoBodyInFunctionDef ); assertTrue( M.getNumFunctionDefinitions() == 1 ); fd = M.getFunctionDefinition(0); assertTrue( fd != null ); assertEquals( true, fd.isSetId() ); assertEquals( false, fd.isSetName() ); assertTrue(( "invalid" == fd.getId() )); assertTrue( fd.getBody() == null ); assertEquals( true, fd.isSetMath() ); math = fd.getMath(); formula = libsbml.formulaToString(math); assertTrue( formula != null ); assertTrue(( "lambda(x, y, z)" == formula )); }
public void test_ReadSBML_FunctionDefinition_MathReturnsCN() { FunctionDefinition fd; ASTNode math; string formula; string s = wrapSBML_L2v1("<listOfFunctionDefinitions>" + " <functionDefinition id='getNumber'>" + " <math>" + " <lambda>" + " <bvar><ci> x </ci></bvar>" + " <cn> 42 </cn>" + " </lambda>" + " </math>" + " </functionDefinition>" + "</listOfFunctionDefinitions>"); D = libsbml.readSBMLFromString(s); M = D.getModel(); assertTrue( M.getNumFunctionDefinitions() == 1 ); fd = M.getFunctionDefinition(0); assertTrue( fd != null ); assertEquals( true, fd.isSetId() ); assertEquals( false, fd.isSetName() ); assertTrue(( "getNumber" == fd.getId() )); assertEquals( true, fd.isSetMath() ); math = fd.getMath(); formula = libsbml.formulaToString(math); assertTrue( formula != null ); assertTrue(( "lambda(x, 42)" == formula )); }
public void test_ReadSBML_FunctionDefinition() { FunctionDefinition fd; ASTNode math; string formula; string s = wrapSBML_L2v1("<listOfFunctionDefinitions>" + " <functionDefinition id='pow3' name='cubed'>" + " <math>" + " <lambda>" + " <bvar><ci> x </ci></bvar>" + " <apply>" + " <power/>" + " <ci> x </ci>" + " <cn> 3 </cn>" + " </apply>" + " </lambda>" + " </math>" + " </functionDefinition>" + "</listOfFunctionDefinitions>"); D = libsbml.readSBMLFromString(s); M = D.getModel(); assertTrue( M.getNumFunctionDefinitions() == 1 ); fd = M.getFunctionDefinition(0); assertTrue( fd != null ); assertEquals( true, fd.isSetId() ); assertEquals( true, fd.isSetName() ); assertTrue(( "pow3" == fd.getId() )); assertTrue(( "cubed" == fd.getName() )); assertEquals( true, fd.isSetMath() ); math = fd.getMath(); formula = libsbml.formulaToString(math); assertTrue( formula != null ); assertTrue(( "lambda(x, pow(x, 3))" == formula )); }