private void ImportInitialAssignment(InitialAssignment initialAssignment, Model model) { var symbol = initialAssignment.getSymbol(); if (IsParameter(symbol)) { var parameter = GetParameter(symbol); SetPSV(initialAssignment.getMath(), parameter, String.Empty); return; } if (IsContainerSizeParameter(symbol)) { var sizeParameter = GetContainerSizeParameter(symbol); SetPSV(initialAssignment.getMath(), sizeParameter, symbol); return; } if (IsSpeciesAssignment(symbol)) { DoSpeciesAssignment(symbol, initialAssignment.getMath(), isInitialAssignment: true); } CheckSpeciesReferences(initialAssignment.getId(), symbol, model); }
public void test_Model_createInitialAssignment() { InitialAssignment c = M.createInitialAssignment(); assertTrue(c != null); assertTrue(M.getNumInitialAssignments() == 1); assertEquals(M.getInitialAssignment(0), c); }
public void test_InitialAssignment() { InitialAssignment ia = new InitialAssignment(2, 4); assertEquals(false, (ia.hasRequiredAttributes())); ia.setSymbol("ia"); assertEquals(true, ia.hasRequiredAttributes()); ia = null; }
public void test_InitialAssignment() { InitialAssignment ia = new InitialAssignment(2, 4); assertEquals(false, (ia.hasRequiredElements())); ia.setMath(libsbml.parseFormula("ia")); assertEquals(true, ia.hasRequiredElements()); ia = null; }
public void test_Model_addInitialAssignment3() { Model m = new Model(2, 2); InitialAssignment ia = null; int i = m.addInitialAssignment(ia); assertTrue(i == libsbml.LIBSBML_OPERATION_FAILED); assertTrue(m.getNumInitialAssignments() == 0); m = null; }
public void test_Model_createInitialAssignment() { Model m = new Model(2, 2); InitialAssignment p = m.createInitialAssignment(); assertTrue(m.getNumInitialAssignments() == 1); assertTrue((p).getLevel() == 2); assertTrue((p).getVersion() == 2); m = null; }
public void test_InitialAssignment_parent_create() { Model m = new Model(2, 4); InitialAssignment ia = m.createInitialAssignment(); ListOf lo = m.getListOfInitialAssignments(); assertTrue(lo == m.getInitialAssignment(0).getParentSBMLObject()); assertTrue(lo == ia.getParentSBMLObject()); assertTrue(m == lo.getParentSBMLObject()); }
public void setUp() { E = new InitialAssignment(2, 4); if (E == null) { ; } { } }
public void test_InitialAssignment_parent_NULL() { SBMLDocument d = new SBMLDocument(); Model m = d.createModel(); InitialAssignment c = m.createInitialAssignment(); InitialAssignment c1 = c.clone(); d = null; assertTrue(c1.getAncestorOfType(libsbml.SBML_MODEL) == null); assertTrue(c1.getParentSBMLObject() == null); assertEquals(c1.getSBMLDocument(), null); c1 = null; }
public void test_InitialAssignment_copyConstructor() { InitialAssignment o1 = new InitialAssignment(2, 4); o1.setSymbol("c"); assertTrue(o1.getId() == "c"); InitialAssignment o2 = new InitialAssignment(o1); assertTrue(o2.getId() == "c"); assertTrue(o2.getParentSBMLObject() == o1.getParentSBMLObject()); o2 = null; o1 = null; }
public void test_Model_addInitialAssignment2() { Model m = new Model(2, 2); InitialAssignment ia = new InitialAssignment(2, 3); ia.setSymbol("i"); ia.setMath(libsbml.parseFormula("gg")); int i = m.addInitialAssignment(ia); assertTrue(i == libsbml.LIBSBML_VERSION_MISMATCH); assertTrue(m.getNumInitialAssignments() == 0); ia = null; m = null; }
public void test_InitialAssignment_parent_add() { InitialAssignment ia = new InitialAssignment(2, 4); Model m = new Model(2, 4); ia.setSymbol("c"); ia.setMath(libsbml.parseFormula("9")); m.addInitialAssignment(ia); ia = null; ListOf lo = m.getListOfInitialAssignments(); assertTrue(lo == m.getInitialAssignment(0).getParentSBMLObject()); assertTrue(m == lo.getParentSBMLObject()); }
public void test_InitialAssignment_ancestor_create() { Model m = new Model(2, 4); InitialAssignment ia = m.createInitialAssignment(); ListOf lo = m.getListOfInitialAssignments(); assertTrue(ia.getAncestorOfType(libsbml.SBML_MODEL) == m); assertTrue(ia.getAncestorOfType(libsbml.SBML_LIST_OF) == lo); assertTrue(ia.getAncestorOfType(libsbml.SBML_DOCUMENT) == null); assertTrue(ia.getAncestorOfType(libsbml.SBML_EVENT) == null); InitialAssignment obj = m.getInitialAssignment(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_Model_addInitialAssignment1() { Model m = new Model(2, 2); InitialAssignment ia = new InitialAssignment(2, 2); int i = m.addInitialAssignment(ia); assertTrue(i == libsbml.LIBSBML_INVALID_OBJECT); ia.setSymbol("i"); i = m.addInitialAssignment(ia); assertTrue(i == libsbml.LIBSBML_INVALID_OBJECT); ia.setMath(libsbml.parseFormula("gg")); i = m.addInitialAssignment(ia); assertTrue(i == libsbml.LIBSBML_OPERATION_SUCCESS); assertTrue(m.getNumInitialAssignments() == 1); ia = null; m = null; }
public void test_InitialAssignment_ancestor_add() { InitialAssignment ia = new InitialAssignment(2, 4); Model m = new Model(2, 4); ia.setSymbol("c"); ia.setMath(libsbml.parseFormula("9")); m.addInitialAssignment(ia); ia = null; ListOf lo = m.getListOfInitialAssignments(); InitialAssignment obj = m.getInitialAssignment(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); }
protected override string GetHeader() { if (InitialAssignment == null) { throw new MissingMandatoryElementException("Initial declaration is required in loop statement"); } if (BreakCondition == null) { throw new MissingMandatoryElementException("Break condition is required in loop statement"); } if (StepInstruction == null) { throw new MissingMandatoryElementException("Step instruction is required in loop statement"); } return($"for ({InitialAssignment.GenerateCode()}; {BreakCondition.GenerateCode()}; {StepInstruction.GenerateCode()}) {{\n"); }
public void test_InitialAssignment_createWithNS() { XMLNamespaces xmlns = new XMLNamespaces(); xmlns.add("http://www.sbml.org", "testsbml"); SBMLNamespaces sbmlns = new SBMLNamespaces(2, 3); sbmlns.addNamespaces(xmlns); InitialAssignment object1 = new InitialAssignment(sbmlns); assertTrue(object1.getTypeCode() == libsbml.SBML_INITIAL_ASSIGNMENT); assertTrue(object1.getMetaId() == ""); assertTrue(object1.getNotes() == null); assertTrue(object1.getAnnotation() == null); assertTrue(object1.getLevel() == 2); assertTrue(object1.getVersion() == 3); assertTrue(object1.getNamespaces() != null); assertTrue(object1.getNamespaces().getLength() == 2); object1 = null; }
public void test_Model_addInitialAssignment4() { Model m = new Model(2, 2); InitialAssignment ia = new InitialAssignment(2, 2); ia.setSymbol("ia"); ia.setMath(libsbml.parseFormula("a+b")); InitialAssignment ia1 = new InitialAssignment(2, 2); ia1.setSymbol("ia"); ia1.setMath(libsbml.parseFormula("a+b")); int i = m.addInitialAssignment(ia); assertTrue(i == libsbml.LIBSBML_OPERATION_SUCCESS); assertTrue(m.getNumInitialAssignments() == 1); i = m.addInitialAssignment(ia1); assertTrue(i == libsbml.LIBSBML_DUPLICATE_OBJECT_ID); assertTrue(m.getNumInitialAssignments() == 1); ia = null; ia1 = null; m = null; }
public void tearDown() { E = null; }
static void testListOfRemove(ListOf lof, SBase s) { string ename = s.getElementName(); lof.append(s); SBase c = lof.get(0); if (c is CompartmentType) { CompartmentType x = (lof as ListOfCompartmentTypes).remove(0); c = x; } else if (c is Compartment) { Compartment x = (lof as ListOfCompartments).remove(0); c = x; } else if (c is Constraint) { Constraint x = (lof as ListOfConstraints).remove(0); c = x; } else if (c is EventAssignment) { EventAssignment x = (lof as ListOfEventAssignments).remove(0); c = x; } else if (c is Event) { Event x = (lof as ListOfEvents).remove(0); c = x; } else if (c is FunctionDefinition) { FunctionDefinition x = (lof as ListOfFunctionDefinitions).remove(0); c = x; } else if (c is InitialAssignment) { InitialAssignment x = (lof as ListOfInitialAssignments).remove(0); c = x; } else if (c is Parameter) { Parameter x = (lof as ListOfParameters).remove(0); c = x; } else if (c is Reaction) { Reaction x = (lof as ListOfReactions).remove(0); c = x; } else if (c is Rule) { Rule x = (lof as ListOfRules).remove(0); c = x; } else if (c is Species) { Species x = (lof as ListOfSpecies).remove(0); c = x; } else if (c is SpeciesReference) { SimpleSpeciesReference x = (lof as ListOfSpeciesReferences).remove(0); c = x; } else if (c is SpeciesType) { SpeciesType x = (lof as ListOfSpeciesTypes).remove(0); c = x; } else if (c is UnitDefinition) { UnitDefinition x = (lof as ListOfUnitDefinitions).remove(0); c = x; } else if (c is Unit) { Unit x = (lof as ListOfUnits).remove(0); c = x; } else { ERR("[testListOfRemove] Error: (" + ename + ") : ListOfXXX::remove() failed."); return; } if (c == null) { ERR("[testListOfRemove] Error: (" + ename + ") : ListOfXXX::remove() failed."); return; } string enameGet = c.getElementName(); if (ename == enameGet) { //Console.Out.WriteLine("[testListOfRemove] OK: (" + ename + ") remove(" + enameGet + ") : type match."); OK(); } else { ERR("[testListOfRemove] Error: (" + ename + ") remove(" + enameGet + ") : type mismatch."); } }
static void testClone(SBase s) { string ename = s.getElementName(); SBase c = s.clone(); if (c is Compartment) { Compartment x = (s as Compartment).clone(); c = x; } else if (c is CompartmentType) { CompartmentType x = (s as CompartmentType).clone(); c = x; } else if (c is Constraint) { Constraint x = (s as Constraint).clone(); c = x; } else if (c is Delay) { Delay x = (s as Delay).clone(); c = x; } else if (c is Event) { Event x = (s as Event).clone(); c = x; } else if (c is EventAssignment) { EventAssignment x = (s as EventAssignment).clone(); c = x; } else if (c is FunctionDefinition) { FunctionDefinition x = (s as FunctionDefinition).clone(); c = x; } else if (c is InitialAssignment) { InitialAssignment x = (s as InitialAssignment).clone(); c = x; } else if (c is KineticLaw) { KineticLaw x = (s as KineticLaw).clone(); c = x; } // currently return type of ListOf::clone() is SBase else if (c is ListOf) { SBase x = (s as ListOf).clone(); c = x; } else if (c is Model) { Model x = (s as Model).clone(); c = x; } else if (c is Parameter) { Parameter x = (s as Parameter).clone(); c = x; } else if (c is Reaction) { Reaction x = (s as Reaction).clone(); c = x; } else if (c is AlgebraicRule) { AlgebraicRule x = (s as AlgebraicRule).clone(); c = x; } else if (c is AssignmentRule) { AssignmentRule x = (s as AssignmentRule).clone(); c = x; } else if (c is RateRule) { RateRule x = (s as RateRule).clone(); c = x; } else if (c is SBMLDocument) { SBMLDocument x = (s as SBMLDocument).clone(); c = x; } else if (c is Species) { Species x = (s as Species).clone(); c = x; } else if (c is SpeciesReference) { SpeciesReference x = (s as SpeciesReference).clone(); c = x; } else if (c is SpeciesType) { SpeciesType x = (s as SpeciesType).clone(); c = x; } else if (c is SpeciesReference) { SpeciesReference x = (s as SpeciesReference).clone(); c = x; } else if (c is StoichiometryMath) { StoichiometryMath x = (s as StoichiometryMath).clone(); c = x; } else if (c is Trigger) { Trigger x = (s as Trigger).clone(); c = x; } else if (c is Unit) { Unit x = (s as Unit).clone(); c = x; } else if (c is UnitDefinition) { UnitDefinition x = (s as UnitDefinition).clone(); c = x; } else if (c is ListOfCompartmentTypes) { ListOfCompartmentTypes x = (s as ListOfCompartmentTypes).clone(); c = x; } else if (c is ListOfCompartments) { ListOfCompartments x = (s as ListOfCompartments).clone(); c = x; } else if (c is ListOfConstraints) { ListOfConstraints x = (s as ListOfConstraints).clone(); c = x; } else if (c is ListOfEventAssignments) { ListOfEventAssignments x = (s as ListOfEventAssignments).clone(); c = x; } else if (c is ListOfEvents) { ListOfEvents x = (s as ListOfEvents).clone(); c = x; } else if (c is ListOfFunctionDefinitions) { ListOfFunctionDefinitions x = (s as ListOfFunctionDefinitions).clone(); c = x; } else if (c is ListOfInitialAssignments) { ListOfInitialAssignments x = (s as ListOfInitialAssignments).clone(); c = x; } else if (c is ListOfParameters) { ListOfParameters x = (s as ListOfParameters).clone(); c = x; } else if (c is ListOfReactions) { ListOfReactions x = (s as ListOfReactions).clone(); c = x; } else if (c is ListOfRules) { ListOfRules x = (s as ListOfRules).clone(); c = x; } else if (c is ListOfSpecies) { ListOfSpecies x = (s as ListOfSpecies).clone(); c = x; } else if (c is ListOfSpeciesReferences) { ListOfSpeciesReferences x = (s as ListOfSpeciesReferences).clone(); c = x; } else if (c is ListOfSpeciesTypes) { ListOfSpeciesTypes x = (s as ListOfSpeciesTypes).clone(); c = x; } else if (c is ListOfUnitDefinitions) { ListOfUnitDefinitions x = (s as ListOfUnitDefinitions).clone(); c = x; } else if (c is ListOfUnits) { ListOfUnits x = (s as ListOfUnits).clone(); c = x; } else { ERR("[testClone] Error: (" + ename + ") : clone() failed."); return; } if (c == null) { ERR("[testClone] Error: (" + ename + ") : clone() failed."); return; } string enameClone = c.getElementName(); if (ename == enameClone) { //Console.Out.WriteLine("[testClone] OK: (" + ename + ") clone(" + enameClone + ") : type match."); OK(); } else { ERR("[testClone] Error: (" + ename + ") clone(" + enameClone + ") : type mismatch."); } }
public static int Main(string[] args) { if (args.Length != 1) { Console.WriteLine("Usage: printUnits filename"); return(1); } string filename = args[0]; SBMLDocument document = libsbml.readSBML(filename); if (document.getNumErrors() > 0) { Console.Error.WriteLine("Encountered the following SBML errors:"); document.printErrors(); return(1); } Model model = document.getModel(); if (model == null) { Console.WriteLine("No model present."); return(1); } int i, j; for (i = 0; i < model.getNumSpecies(); i++) { Species s = model.getSpecies(i); Console.WriteLine("Species " + i + ": " + UnitDefinition.printUnits(s.getDerivedUnitDefinition())); } for (i = 0; i < model.getNumCompartments(); i++) { Compartment c = model.getCompartment(i); Console.WriteLine("Compartment " + i + ": " + UnitDefinition.printUnits(c.getDerivedUnitDefinition())) ; } for (i = 0; i < model.getNumParameters(); i++) { Parameter p = model.getParameter(i); Console.WriteLine("Parameter " + i + ": " + UnitDefinition.printUnits(p.getDerivedUnitDefinition())) ; } for (i = 0; i < model.getNumInitialAssignments(); i++) { InitialAssignment ia = model.getInitialAssignment(i); Console.WriteLine("InitialAssignment " + i + ": " + UnitDefinition.printUnits(ia.getDerivedUnitDefinition())); Console.WriteLine(" undeclared units: "); Console.WriteLine((ia.containsUndeclaredUnits() ? "yes\n" : "no\n")); } for (i = 0; i < model.getNumEvents(); i++) { Event e = model.getEvent(i); Console.WriteLine("Event " + i + ": "); if (e.isSetDelay()) { Console.WriteLine("Delay: " + UnitDefinition.printUnits(e.getDelay().getDerivedUnitDefinition())); Console.WriteLine(" undeclared units: "); Console.WriteLine((e.getDelay().containsUndeclaredUnits() ? "yes\n" : "no\n")); } for (j = 0; j < e.getNumEventAssignments(); j++) { EventAssignment ea = e.getEventAssignment(j); Console.WriteLine("EventAssignment " + j + ": " + UnitDefinition.printUnits(ea.getDerivedUnitDefinition())); Console.WriteLine(" undeclared units: "); Console.WriteLine((ea.containsUndeclaredUnits() ? "yes\n" : "no\n")); } } for (i = 0; i < model.getNumReactions(); i++) { Reaction r = model.getReaction(i); Console.WriteLine("Reaction " + i + ": "); if (r.isSetKineticLaw()) { Console.WriteLine("Kinetic Law: " + UnitDefinition.printUnits(r.getKineticLaw().getDerivedUnitDefinition())); Console.WriteLine(" undeclared units: "); Console.WriteLine((r.getKineticLaw().containsUndeclaredUnits() ? "yes\n" : "no\n")); } for (j = 0; j < r.getNumReactants(); j++) { SpeciesReference sr = r.getReactant(j); if (sr.isSetStoichiometryMath()) { Console.WriteLine("Reactant stoichiometryMath" + j + ": " + UnitDefinition.printUnits(sr.getStoichiometryMath().getDerivedUnitDefinition())); Console.WriteLine(" undeclared units: "); Console.WriteLine((sr.getStoichiometryMath().containsUndeclaredUnits() ? "yes\n" : "no\n")); } } for (j = 0; j < r.getNumProducts(); j++) { SpeciesReference sr = r.getProduct(j); if (sr.isSetStoichiometryMath()) { Console.WriteLine("Product stoichiometryMath" + j + ": " + UnitDefinition.printUnits(sr.getStoichiometryMath().getDerivedUnitDefinition())); Console.WriteLine(" undeclared units: "); Console.WriteLine((sr.getStoichiometryMath().containsUndeclaredUnits() ? "yes\n" : "no\n")); } } } for (i = 0; i < model.getNumRules(); i++) { Rule r = model.getRule(i); Console.WriteLine("Rule " + i + ": " + UnitDefinition.printUnits(r.getDerivedUnitDefinition())); Console.WriteLine(" undeclared units: "); Console.WriteLine((r.containsUndeclaredUnits() ? "yes\n" : "no\n")); } return(0); }
public void tearDown() { IA = null; }
public static int Main(string[] args) { if (args.Length != 1) { Console.WriteLine("Usage: printNotes filename"); return(1); } int i, j; string filename = args[0]; SBMLDocument document; document = libsbml.readSBML(filename); int errors = (int)document.getNumErrors(); Console.WriteLine(); Console.WriteLine("filename: " + filename); Console.WriteLine(); if (errors > 0) { document.printErrors(); return(errors); } /* Model */ Model m = document.getModel(); printNotes(m); for (i = 0; i < m.getNumReactions(); i++) { Reaction re = m.getReaction(i); printNotes(re); /* SpeciesReference (Reacatant) */ for (j = 0; j < re.getNumReactants(); j++) { SpeciesReference rt = re.getReactant(j); if (rt.isSetNotes()) { Console.WriteLine(" "); } printNotes(rt, (rt.isSetSpecies() ? rt.getSpecies() : "")); } /* SpeciesReference (Product) */ for (j = 0; j < re.getNumProducts(); j++) { SpeciesReference rt = re.getProduct(j); if (rt.isSetNotes()) { Console.WriteLine(" "); } printNotes(rt, (rt.isSetSpecies() ? rt.getSpecies() : "")); } /* ModifierSpeciesReference (Modifier) */ for (j = 0; j < re.getNumModifiers(); j++) { ModifierSpeciesReference md = re.getModifier(j); if (md.isSetNotes()) { Console.WriteLine(" "); } printNotes(md, (md.isSetSpecies() ? md.getSpecies() : "")); } /* Kineticlaw */ if (re.isSetKineticLaw()) { KineticLaw kl = re.getKineticLaw(); if (kl.isSetNotes()) { Console.WriteLine(" "); } printNotes(kl); /* Parameter */ for (j = 0; j < kl.getNumParameters(); j++) { Parameter pa = kl.getParameter(j); if (pa.isSetNotes()) { Console.WriteLine(" "); } printNotes(pa); } } } /* Species */ for (i = 0; i < m.getNumSpecies(); i++) { Species sp = m.getSpecies(i); printNotes(sp); } /* Compartment */ for (i = 0; i < m.getNumCompartments(); i++) { Compartment sp = m.getCompartment(i); printNotes(sp); } /* FunctionDefinition */ for (i = 0; i < m.getNumFunctionDefinitions(); i++) { FunctionDefinition sp = m.getFunctionDefinition(i); printNotes(sp); } /* UnitDefinition */ for (i = 0; i < m.getNumUnitDefinitions(); i++) { UnitDefinition sp = m.getUnitDefinition(i); printNotes(sp); } /* Parameter */ for (i = 0; i < m.getNumParameters(); i++) { Parameter sp = m.getParameter(i); printNotes(sp); } /* Rule */ for (i = 0; i < m.getNumRules(); i++) { Rule sp = m.getRule(i); printNotes(sp); } /* InitialAssignment */ for (i = 0; i < m.getNumInitialAssignments(); i++) { InitialAssignment sp = m.getInitialAssignment(i); printNotes(sp); } /* Event */ for (i = 0; i < m.getNumEvents(); i++) { Event sp = m.getEvent(i); printNotes(sp); /* Trigger */ if (sp.isSetTrigger()) { Trigger tg = sp.getTrigger(); if (tg.isSetNotes()) { Console.WriteLine(" "); } printNotes(tg); } /* Delay */ if (sp.isSetDelay()) { Delay dl = sp.getDelay(); if (dl.isSetNotes()) { Console.WriteLine(" "); } printNotes(dl); } /* EventAssignment */ for (j = 0; j < sp.getNumEventAssignments(); j++) { EventAssignment ea = sp.getEventAssignment(j); if (ea.isSetNotes()) { Console.WriteLine(" "); } printNotes(ea); } } /* SpeciesType */ for (i = 0; i < m.getNumSpeciesTypes(); i++) { SpeciesType sp = m.getSpeciesType(i); printNotes(sp); } /* Constraint */ for (i = 0; i < m.getNumConstraints(); i++) { Constraint sp = m.getConstraint(i); printNotes(sp); } return(errors); }
public void InitialAssignmentElement(Hashtable attrs) { String symbol; SBase variable = null; if (attrs.Contains("symbol")) { symbol = (String)attrs["symbol"]; if (this.model.findObject(symbol)!=null) variable = (SBase)this.model.findObject(symbol); InitialAssignment initialAssignment = new InitialAssignment(this.model, variable); this.model.listOfInitialAssignments.Add(initialAssignment); elementStack.Push(initialAssignment); } // else throw exception on required attribute }
public static int Main(string[] args) { if (args.Length != 2) { Console.Write(Environment.NewLine + "Usage: unsetAnnotation <input-filename> <output-filename>" + Environment.NewLine + Environment.NewLine); return 1; } int i, j; string filename = args[0]; SBMLDocument document; document = libsbml.readSBML(filename); int errors = (int)document.getNumErrors(); if (errors > 0) { document.printErrors(); return errors; } Model m = document.getModel(); m.unsetAnnotation(); for (i = 0; i < m.getNumReactions(); i++) { Reaction re = m.getReaction(i); re.unsetAnnotation(); for (j = 0; j < re.getNumReactants(); j++) { SpeciesReference rt = re.getReactant(j); rt.unsetAnnotation(); } for (j = 0; j < re.getNumProducts(); j++) { SpeciesReference rt = re.getProduct(j); rt.unsetAnnotation(); } for (j = 0; j < re.getNumModifiers(); j++) { ModifierSpeciesReference md = re.getModifier(j); md.unsetAnnotation(); } if (re.isSetKineticLaw()) { KineticLaw kl = re.getKineticLaw(); kl.unsetAnnotation(); for (j = 0; j < kl.getNumParameters(); j++) { Parameter pa = kl.getParameter(j); pa.unsetAnnotation(); } } } for (i = 0; i < m.getNumSpecies(); i++) { Species sp = m.getSpecies(i); sp.unsetAnnotation(); } for (i = 0; i < m.getNumCompartments(); i++) { Compartment sp = m.getCompartment(i); sp.unsetAnnotation(); } for (i = 0; i < m.getNumFunctionDefinitions(); i++) { FunctionDefinition sp = m.getFunctionDefinition(i); sp.unsetAnnotation(); } for (i = 0; i < m.getNumUnitDefinitions(); i++) { UnitDefinition sp = m.getUnitDefinition(i); sp.unsetAnnotation(); } for (i = 0; i < m.getNumParameters(); i++) { Parameter sp = m.getParameter(i); sp.unsetAnnotation(); } for (i = 0; i < m.getNumRules(); i++) { Rule sp = m.getRule(i); sp.unsetAnnotation(); } for (i = 0; i < m.getNumInitialAssignments(); i++) { InitialAssignment sp = m.getInitialAssignment(i); sp.unsetAnnotation(); } for (i = 0; i < m.getNumEvents(); i++) { Event sp = m.getEvent(i); sp.unsetAnnotation(); for (j = 0; j < sp.getNumEventAssignments(); j++) { EventAssignment ea = sp.getEventAssignment(j); ea.unsetAnnotation(); } } for (i = 0; i < m.getNumSpeciesTypes(); i++) { SpeciesType sp = m.getSpeciesType(i); sp.unsetAnnotation(); } for (i = 0; i < m.getNumConstraints(); i++) { Constraint sp = m.getConstraint(i); sp.unsetAnnotation(); } libsbml.writeSBML(document, args[1]); return errors; }
public static void Main(string[] args) { ArraysPkgNamespaces arraysNs = new ArraysPkgNamespaces(); SBMLDocument doc = new SBMLDocument(arraysNs); doc.setPackageRequired("arrays", true); Model model = doc.createModel(); // create parameters Parameter param = model.createParameter(); param.setId("n"); param.setValue(10); param.setConstant(true); param = model.createParameter(); param.setId("m"); param.setValue(10); param.setConstant(true); param = model.createParameter(); param.setId("x"); param.setValue(5.7); param.setConstant(true); ArraysSBasePlugin paramPlugin = (ArraysSBasePlugin)param.getPlugin("arrays"); Dimension dim = paramPlugin.createDimension(); dim.setId("i"); dim.setSize("n"); param = model.createParameter(); param.setId("y"); param.setConstant(false); paramPlugin = (ArraysSBasePlugin)param.getPlugin("arrays"); dim = paramPlugin.createDimension(); dim.setId("i"); dim.setSize("n"); param = model.createParameter(); param.setId("z"); param.setConstant(false); paramPlugin = (ArraysSBasePlugin)param.getPlugin("arrays"); dim = paramPlugin.createDimension(); dim.setId("i"); dim.setSize("n"); // create initial assignments InitialAssignment assignment = model.createInitialAssignment(); assignment.setSymbol("y"); ASTNode ast = new ASTNode(libsbml.AST_REAL); ast.setValue(3.2); assignment.setMath(ast); assignment = model.createInitialAssignment(); assignment.setSymbol("z"); ast = new ASTNode(libsbml.AST_REAL); ast.setValue(5.7); assignment.setMath(ast); ArraysSBasePlugin assignmentPlugin = (ArraysSBasePlugin)assignment.getPlugin("arrays"); dim = assignmentPlugin.createDimension(); dim.setId("i"); dim.setSize("m"); Index index = assignmentPlugin.createIndex(); ASTNode newAst = new ASTNode(libsbml.AST_FUNCTION); newAst.setName("selector"); ASTNode ci = new ASTNode(libsbml.AST_NAME); ci.setName("z"); newAst.addChild(ci); ci = new ASTNode(libsbml.AST_NAME); ci.setName("i"); newAst.addChild(ci); index.setMath(newAst); assignment = model.createInitialAssignment(); assignment.setSymbol("z"); ast = new ASTNode(libsbml.AST_REAL); ast.setValue(3.2); assignment.setMath(ast); assignmentPlugin = (ArraysSBasePlugin)assignment.getPlugin("arrays"); dim = assignmentPlugin.createDimension(); dim.setId("i"); dim.setSize("m"); index = assignmentPlugin.createIndex(); newAst = new ASTNode(libsbml.AST_LINEAR_ALGEBRA_SELECTOR); ci = new ASTNode(libsbml.AST_NAME); ci.setName("z"); newAst.addChild(ci); ASTNode plus = new ASTNode(libsbml.AST_PLUS); ci = new ASTNode(libsbml.AST_NAME); ci.setName("i"); plus.addChild(ci); ci = new ASTNode(libsbml.AST_NAME); ci.setName("m"); plus.addChild(ci); newAst.addChild(plus); index.setMath(newAst); libsbml.writeSBMLToFile(doc, "arrays2.xml"); }