Patent ID: 9098293
Filing Date: 2015-08-04
Classification: G06F

Abstract:
1. A method for integrating at least one code block associated with at least one event into at least one discrete event simulation model of a system such that calculations are placed inside said at least one event thereby extending the functionality of a discrete event simulator to include any type of functionality which a common memory and code can perform, the method comprising the steps of: (a) initializing a simulation program residing on a non-transitory computer readable storage medium and retrieving a first event having a kind k, wherein the first event is inputted by a user and stored in a data file; (b) loading the first event from said data file and passing said kind of the first event for subsequent processing and wherein for each said kind k, a custom section of code text is encapsulated inside a single function and compiled to a common memory to define the at least one code block, and wherein said custom section of code text comprises a set of user entered text that describes logic calculations to be performed as part of the kind of said first event; (c) receiving the kind of the first event and checking the necessity of just-in-time compilation of the first event of the kind, k; (d) compiling the first event if the just-in-time compilation is necessary and running the at least one code block; (e) performing a check to determine whether a simulation program is over; and (f) writing outputs by the simulation program if the simulation program is over or retrieving a next event and the kind of the event, k, from a future events list, advancing a clock variable to a time of the next event and repeating step (c) if the simulation program is not over; (g) wherein on subsequent events of same event of the kind, k, recompilation is not required, wherein the running of the code block includes execution of a plurality of calculations based on a plurality of inputs, and wherein the plurality of inputs comprise at least one standard library selected from the group consisting of math, statistical, logic, graphics and other programming language libraries common to compiled code.