Article ID | Journal | Published Year | Pages | File Type |
---|---|---|---|---|
172371 | Computers & Chemical Engineering | 2014 | 14 Pages |
•RING has an extensible domain specific language user interface.•Graph traversal methods used in pathway and mechanism identification features.•New hashing based identification of functional equivalence for molecule lumping.•Generic algorithm for group additivity based estimation of molecular properties.•Rule-based scheme for kinetics specification for kinetic modeling.
The underlying algorithms of the language interface and post-generation analysis modules in RING, a network generation and analysis tool, are discussed. The front-end is a domain-specific reaction language developed with Silver, a meta-language based on attribute grammars. The language compiler translates user inputs written as a program into internal instructions, catches syntactic and semantic errors, and performs domain-specific optimization to speed up execution. In addition to generating reaction networks, RING allows post-processing analysis options to: (a) obtain reaction pathways and overall mechanisms from initial reactants to desired products using graph traversal algorithms, (b) group together isomers to reduce the size of the network through a novel molecule hashing technique, (c) calculate thermochemical quantities through semi-empirical methods such as group additivity, and (d) formulate and solve kinetic models of the entire or lumped complex network based on a rule-based kinetics specification scheme.