Module Biocaml.Sbml (.ml)

module Sbml: Biocaml_sbml

exception Bad of string
type sb_math_operator = 
| MPlus
| MMinus
| MTimes
| MDivide
| MPower
| MRoot
| MAbs
| MExp
| MLn
| MLog
| MFloor
| MCeiling
| MFactorial
| MEq
| MNeq
| MGt
| MLt
| MGeq
| MLeq
| MAnd
| MOr
| MXor
| MNot
| MSin
| MCos
| MTan
| MArcsin
| MArccos
| MArctan
| MDelay
| MFundef of string
type sb_math = 
| MApply of sb_math_operator * sb_math list
| MLambda of string list * sb_math
| MPiecewise of (string * sb_math) list * string
| MFloatNumber of float
| MIntNumber of int
| MIdentifier of string
| MTime
| MTrue
| MFalse
| MNAN
| MPi
| MExponent
| MInfinity
| MNoMath
type sb_unit = {
   unit_kind :string;
   unit_exponent :int;
   unit_scale :int;
   unit_multiplier :float;
}
type sb_function_definition = {
   fundef_id :string;
   fundef_name :string;
   fundef_math :sb_math;
}
type sb_unit_definition = {
   unitdef_id :string;
   unitdef_name :string;
   unitdef_unitlist :sb_unit list;
}
type sb_compartment = {
   compart_id :string;
   compart_name :string;
   compart_spatialDimensions :int;
   compart_size :float;
   compart_units :string;
   compart_outside :string;
   compart_constant :bool;
}
type sb_species_ref = {
   specref_species :string;
   specref_id :string;
   specref_name :string;
   specref_stoichiometry :int;
}
type sb_species = {
   species_id :string;
   species_name :string;
   species_type :string;
   species_compartment :string;
   species_initialAmount :float;
   species_initialConcentration :float;
   species_substanceUnits :string;
   species_hasOnlySubstanceUnits :bool;
   species_boundaryCondition :bool;
   species_constant :bool;
}
type sb_parameter = {
   param_id :string;
   param_name :string;
   param_value :float;
   param_units :string;
   param_constant :bool;
}
type sb_kinetic_law = {
   klaw_math :sb_math;
   klaw_parameters :sb_parameter list;
}
type sb_reaction = {
   react_id :string;
   react_name :string;
   react_boundaryCondition :bool;
   react_fast :bool;
   react_reactants :sb_species_ref list;
   react_products :sb_species_ref list;
   react_kineticLaw :sb_kinetic_law;
}
type sb_initial_assignment = {
   ia_symbol :string;
   ia_math :sb_math;
}
type sb_algebraic_rule = {
   ar_math :sb_math;
}
type sb_generic_rule = {
   gr_variable :string;
   gr_math :sb_math;
}
type sb_rule = 
| RateRule of sb_generic_rule
| AssignmentRule of sb_generic_rule
| AlgebraicRule of sb_algebraic_rule
type sb_math_container = {
   math :sb_math;
}
type sb_delay = 
| Delay of sb_math_container
type sb_trigger = 
| Trigger of sb_math_container
type sb_event_assignment = {
   ea_variable :string;
   ea_math :sb_math;
}
type sb_event = {
   event_id :string;
   event_name :string;
   event_useValuesFromTriggerTime :bool;
   event_trigger :sb_trigger;
   event_delay :sb_delay;
   event_assignments :sb_event_assignment list;
}
type sb_model = {
   sbm_id :string;
   sbm_name :string;
   sbm_functionDefinitions :sb_function_definition list;
   sbm_unitDefinitions :sb_unit_definition list;
   sbm_compartments :sb_compartment list;
   sbm_species :sb_species list;
   sbm_reactions :sb_reaction list;
   sbm_parameters :sb_parameter list;
   sbm_initialAssignments :sb_initial_assignment list;
   sbm_rules :sb_rule list;
   sbm_events :sb_event list;
}
val math_to_string : sb_math -> string
Returns a string with sb_math converted into a S-expression
val in_sbml : Pervasives.in_channel -> sb_model
Returns an sb_model read from input stream