package biocaml

  1. Overview
  2. Docs
Legend:
Library
Module
Module type
Parameter
Class
Class type

SBML file parser. Currently only level 2 version 4 is supported.

exception Bad of string
type sb_math_operator =
  1. | MPlus
  2. | MMinus
  3. | MTimes
  4. | MDivide
  5. | MPower
  6. | MRoot
  7. | MAbs
  8. | MExp
  9. | MLn
  10. | MLog
  11. | MFloor
  12. | MCeiling
  13. | MFactorial
  14. | MEq
  15. | MNeq
  16. | MGt
  17. | MLt
  18. | MGeq
  19. | MLeq
  20. | MAnd
  21. | MOr
  22. | MXor
  23. | MNot
  24. | MSin
  25. | MCos
  26. | MTan
  27. | MArcsin
  28. | MArccos
  29. | MArctan
  30. | MDelay
  31. | MFundef of string
type sb_math =
  1. | MApply of sb_math_operator * sb_math list
  2. | MLambda of string list * sb_math
  3. | MPiecewise of (string * sb_math) list * string
  4. | MFloatNumber of float
  5. | MIntNumber of int
  6. | MIdentifier of string
  7. | MTime
  8. | MTrue
  9. | MFalse
  10. | MNAN
  11. | MPi
  12. | MExponent
  13. | MInfinity
  14. | MNoMath
type sb_unit = {
  1. unit_kind : string;
  2. unit_exponent : int;
  3. unit_scale : int;
  4. unit_multiplier : float;
}
type sb_function_definition = {
  1. fundef_id : string;
  2. fundef_name : string;
  3. fundef_math : sb_math;
}
type sb_unit_definition = {
  1. unitdef_id : string;
  2. unitdef_name : string;
  3. unitdef_unitlist : sb_unit list;
}
type sb_compartment = {
  1. compart_id : string;
  2. compart_name : string;
  3. compart_spatialDimensions : int;
  4. compart_size : float;
  5. compart_units : string;
  6. compart_outside : string;
  7. compart_constant : bool;
}
type sb_species_ref = {
  1. specref_species : string;
  2. specref_id : string;
  3. specref_name : string;
  4. specref_stoichiometry : int;
}
type sb_species = {
  1. species_id : string;
  2. species_name : string;
  3. species_type : string;
  4. species_compartment : string;
  5. species_initialAmount : float;
  6. species_initialConcentration : float;
  7. species_substanceUnits : string;
  8. species_hasOnlySubstanceUnits : bool;
  9. species_boundaryCondition : bool;
  10. species_constant : bool;
}
type sb_parameter = {
  1. param_id : string;
  2. param_name : string;
  3. param_value : float;
  4. param_units : string;
  5. param_constant : bool;
}
type sb_kinetic_law = {
  1. klaw_math : sb_math;
  2. klaw_parameters : sb_parameter list;
}
type sb_reaction = {
  1. react_id : string;
  2. react_name : string;
  3. react_boundaryCondition : bool;
  4. react_fast : bool;
  5. react_reactants : sb_species_ref list;
  6. react_products : sb_species_ref list;
  7. react_kineticLaw : sb_kinetic_law;
}
type sb_initial_assignment = {
  1. ia_symbol : string;
  2. ia_math : sb_math;
}
type sb_algebraic_rule = {
  1. ar_math : sb_math;
}
type sb_generic_rule = {
  1. gr_variable : string;
  2. gr_math : sb_math;
}
type sb_rule =
  1. | RateRule of sb_generic_rule
  2. | AssignmentRule of sb_generic_rule
  3. | AlgebraicRule of sb_algebraic_rule
type sb_math_container = {
  1. math : sb_math;
}
type sb_delay =
  1. | Delay of sb_math_container
type sb_trigger =
  1. | Trigger of sb_math_container
type sb_event_assignment = {
  1. ea_variable : string;
  2. ea_math : sb_math;
}
type sb_event = {
  1. event_id : string;
  2. event_name : string;
  3. event_useValuesFromTriggerTime : bool;
  4. event_trigger : sb_trigger;
  5. event_delay : sb_delay;
  6. event_assignments : sb_event_assignment list;
}
type sb_model = {
  1. sbm_id : string;
  2. sbm_name : string;
  3. sbm_functionDefinitions : sb_function_definition list;
  4. sbm_unitDefinitions : sb_unit_definition list;
  5. sbm_compartments : sb_compartment list;
  6. sbm_species : sb_species list;
  7. sbm_reactions : sb_reaction list;
  8. sbm_parameters : sb_parameter list;
  9. sbm_initialAssignments : sb_initial_assignment list;
  10. sbm_rules : sb_rule list;
  11. sbm_events : sb_event list;
}
val math_to_string : sb_math -> string

Returns a string with sb_math converted into a S-expression

Returns an sb_model read from input stream