Claims
- 1. A system, comprising:
a first executing process that:
implements a first model to simulate a first subsystem, the first model being programmed in a first language and having a first state variable; and sends a first series of state-related messages, each message reflecting information relating to the value of the first state variable at a different point tm in simulation time in the first model; and a second executing process that:
receives said first series of state-related messages; and implements a second model to simulate a second subsystem, the second model being programmed in a second language and taking as an input the value of the first state variable from said first series of state-related messages.
- 2. The system of claim 1, wherein:
the second model has a second state variable; said second process further sends a second series of state-related messages, each message reflecting information relating to the value of the second state variable at a different point tn in simulation time in the first model; said first process further receives said second series of state-related messages; and the first model takes as an input the value of the second state variable from said second series of state-related messages.
- 3. The system of claim 2, wherein for at least a first message in said first series of state-related messages, said first message reflecting information relating to the value of the first state variable at point t1 in simulation time in the first model, there is a second message in said second series of state-related messages that reflects the value of the second state variable at point t1 in simulation time in the first model.
- 4. The system of claim 2, wherein for at least a first message in a series of state-related messages, said first message reflecting the value of the first state variable at point t1 in simulation time, there is no second message in said second series of state-related messages that reflects the value of the second state variable at point t1 in simulation time.
- 5. The system of claim 1, wherein:
said first series of state-related messages comprises
a first message reflecting information relating to the value of the first state variable at time t1 in simulation time in the first model; a second message reflecting information relating to the value of the first state variable at time t2 in simulation time in the first model; and a third message reflecting information relating to the value of the first state variable at time t3 in simulation time in the first model; and
wherein the first message, second message, and third message are consecutive within said first series of state-related messages; and t2−t1=t3−t2.
- 6. The system of claim 1, wherein:
said first series of state-related messages comprises
a first message reflecting information relating to the value of the first state variable at time t1 in simulation time in the first model; a second message reflecting information relating to the value of the first state variable at time t2 in simulation time in the first model; and a third message reflecting information relating to the value of the first state variable at time t3 in simulation time in the first model; and
wherein the first message, second message, and third message are consecutive within said first series of state-related messages; and t2−t1≠t3 t2.
- 7. The system of claim 1, wherein:
said first set of programming instructions exposes a first interface for the first model, where said first interface:
prevents access by said second set of programming instructions to a first substantial portion of the first model, and allows access by said second set of programming instructions to a second substantial portion of the first model; and said second set of programming instructions exposes a second interface for the second model, where said second interface: prevents access by said first set of programming instructions to a first substantial portion of the second model, and allows access by said first set of programming instructions to a second substantial portion of the second model.
- 8. The system of claim 1, wherein
the first model has a third state variable; each message in said first series of state-related messages further reflects information relating to the value of the third state variable at point tm in simulation time; and the second model also takes the third state variable as an input from said first series of state-related messages.
- 9. A method for simulating operation of a physical system having a plurality of physical subsystems, comprising:
simulating a first physical subsystem; accepting a request for export of information relating to n state-related variables that characterize the state of the first physical subsystem in said simulating; sending a first series of state-related messages, each message containing information relating to the value of at least one of the n state variables; and simulating a second physical subsystem; wherein:
the request is made in conjunction with said simulating a second physical subsystem; the first physical subsystem interacts with the second physical subsystem; and the at least one state variable characterizes at least a portion of the interaction between the first physical subsystem and the second physical subsystem.
- 10. The method of claim 9, wherein:
said simulating a first physical subsystem is performed on a first processor, and said simulating a second physical subsystem is performed on the first processor.
- 11. The method of claim 9, wherein:
said simulating a first physical subsystem is performed on a first processor, and said simulating a second physical subsystem is performed on a second processor.
- 12. The method of claim 9, wherein n is at least two.
- 13. The method of claim 12, wherein n is at least four.
- 14. The method of claim 12, wherein at least one message in the first series of state-related messages contains information relating to the values of each of the n state variables.
- 15. The method of claim 12, wherein at least one message in the first series of state-related messages contains information relating to the values of a first proper subset of the set containing all n state variables.
- 16. The method of claim 15, further comprising sending a third series of state-related messages, wherein:
at least one message in the third series of state-related messages contains information relating to the values of a second proper subset of the set containing all n state variables, and the second proper subset is different from the first proper subset.
- 17. The method of claim 16, wherein:
the messages in the first series of state-related messages are sampled at a first rate in simulation time in the first model; the messages in the third series of state-related messages are sampled at a second rate in simulation time in the first model; and the first rate and the second rate are not equal.
- 18. The method of claim 16, wherein:
the messages in the first series of state-related messages are sampled at a first rate in simulation time in the first model; the messages in the third series of state-related messages are sampled at a second rate in simulation time in the first model; and the first rate and the second rate are equal.
- 19. The method of claim 9, wherein:
a given process makes the request; and said sending directs the first series of state-related messages to a process different from the given process.
- 20. The method of claim 9, further comprising:
receiving the first series of state-related messages in a first output process in communication with a first output device; and sending to the first output device a first set of information carried by a plurality of messages in the first series of state-related messages; and
wherein the first output device is in communication with the first output process.
- 21. The method of claim 20, wherein the first output device is a monitor.
- 22. The method of claim 20, wherein the first output device is a printer.
- 23. The method of claim 20, wherein the first output device stores the first set of information in a recordable medium.
- 24. The system of claim 20, wherein said displaying comprises graphing a function of the first state variable versus time.
- 25. The method of claim 20, further comprising:
receiving a second series of state-related messages in the first output process; and sending to the first output device a second set of information carried by a plurality of messages in the second series of state-related messages; and
wherein said sending steps comprise outputting time information associating the first set of information and the second set of information with a system time.
- 26. The method of claim 20, further comprising:
receiving a second series of state-related messages in a second output process, which is in communication with a second output device; and outputting to the second output device a second set of information carried by a plurality of messages in the second series of state-related messages;
wherein said sending comprises associating the first set of information with a system time; and said outputting comprises associating the second set of information with the system time.
- 27. A system, comprising:
a first computer-readable medium encoded with programming instructions executable in a first process to:
implement a first simulation model; accept a first command signal; and manage the first simulation model based on the first command signal; a second computer-readable medium encoded with a second set of programming instructions executable in a second process to:
implement a second simulation model; accept a second command signal; and manage the second simulation model based on the second command signal; and a third computer-readable medium encoded with a third set of programming instructions executable in a third process to:
send the first command signal to said first process; and send the second command signal to said second process.
- 28. The system of claim 27, wherein said managing steps are synchronized to a common system time.
REFERENCE TO RELATED APPLICATION
[0001] Priority is claimed to co-pending U.S. Provisional Patent Application No. 60/212,695, filed Jun. 19, 2000.
DISTRIBUTED SIMULATION
[0002] This invention was made with Government support under Contract F33615-99-C-2911 awarded by the U.S. Department of Defense. The United States Government has certain rights in the invention.
Provisional Applications (1)
|
Number |
Date |
Country |
|
60212695 |
Jun 2000 |
US |