ISBN-10:
0470414693
ISBN-13:
9780470414699
Pub. Date:
12/21/2010
Publisher:
Wiley
Building Software for Simulation: Theory and Algorithms, with Applications in C++ / Edition 1

Building Software for Simulation: Theory and Algorithms, with Applications in C++ / Edition 1

by James J. Nutaro
Current price is , Original price is $133.0. You

Temporarily Out of Stock Online

Please check back later for updated availability.

Product Details

ISBN-13: 9780470414699
Publisher: Wiley
Publication date: 12/21/2010
Pages: 360
Sales rank: 1,132,426
Product dimensions: 6.30(w) x 9.30(h) x 1.00(d)

About the Author

JAMES J. NUTARO, PhD, is an adjunct faculty member at the University of Tennessee in Knoxville and a member of the research staff at Oak Ridge National Laboratory. He has developed simulation software used by industrial, academic, and research organizations including Raytheon, Northrop Grumman, Intel, and several universities. Nutaro has published articles on modeling and simulation in ACM and IEEE journals. He is Associate Editor for SIMULATION: Transactions of the Society for Computer Simulation International as well as for ACM Transactions on Modeling and Computer Simulation, and is a member of the IEEE.

Read an Excerpt

Click to read or download

Table of Contents

PREFACE.

1 INTRODUCTION.

1.1 Elements of a Software Architecture.

1.2 Systems Concepts as an Architectural Foundation.

1.3 Summary.

1.4 Organization of the Book.

2 FIRST EXAMPLE: SIMULATING A ROBOTIC TANK.

2.1 Functional Modeling.

2.2 A Robotic Tank.

2.2.1 Equations of Motion.

2.2.2 Motors, Gearbox, and Tracks.

2.2.3 Complete Model of the Tank's Continuous Dynamics.

2.2.4 The Computer.

2.2.5 Complete Model of the Tank.

2.3 Design of the Tank Simulator.

2.4 Experiments.

2.5 Summary.

3 DISCRETE-TIME SYSTEMS.

3.1 Atomic Models.

3.1.1 Trajectories.

3.1.2 The State Transition and Output Function.

3.1.3 Two Examples of Atomic, Discrete-Time Models.

3.1.4 Systems with Bags for Input and Output.

3.1.5 A Simulator for Atomic Models.

3.2 Network Models.

3.2.1 The Parts of a Network Model.

3.2.2 The Resultant of a Network Model.

3.2.3 An Example of a Network Model and Its Resultant.

3.2.4 Simulating the Resultant.

3.3 A Simulator for Discrete-Time Systems.

3.4 Mealy/Moore-Type Systems.

3.5 Cellular Automata.

3.6 Summary.

4 DISCRETE-EVENT SYSTEMS.

4.1 Atomic Models.

4.1.1 Time and Trajectories.

4.1.2 The State Transition Function.

4.1.3 The Output Function.

4.1.4 Legitimate Systems.

4.1.5 An Example of an Atomic Model.

4.1.6 The Interrupt Handler in the Robotic Tank.

4.1.7 Systems with Bags for Input and Output.

4.1.8 A Simulator for Atomic Models.

4.1.9 Simulating the Interrupt Handler.

4.2 Network Models.

4.2.1 The Parts of a Network Model.

4.2.2 The Resultant of a Network Model.

4.2.3 An Example of a Network Model and Its Resultant.

4.2.4 Simulating the Resultant.

4.3 A Simulator for Discrete-Event Systems.

4.3.1 The Event Schedule.

4.3.2 The Bag.

4.3.3 The Simulation Engine.

4.4 The Computer in the Tank.

4.5 Cellular Automata Revisited.

4.6 Summary.

5 HYBRID SYSTEMS.

5.1 An Elementary Hybrid System.

5.2 Networks of Continuous Systems.

5.3 Hybrid Models as Discrete-Event Systems.

5.4 Numerical Simulation of Hybrid Systems.

5.5 A Simulator for Hybrid Systems.

5.6 Interactive Simulation of the Robotic Tank.

5.6.1 Correcting the Dynamics of a Turn.

5.6.2 A Simplified Model of the Motor.

5.6.3 Updating the Display.

5.6.4 Implementing the Tank Physics.

5.7 Approximating Continuous Interaction Between Hybrid Models.

5.8 A Final Comment on Cellular Automata.

5.8.1 Differential Automata with Constant Derivatives.

5.8.2 Modeling Asynchronous Cellular Automata with Differential Automata.

5.8.3 A Homomorphism from Differential Automata to Asynchronous Cellular Automata.

5.9 Summary.

6 APPLICATIONS.

6.1 Control Through a Packet-Switched Network.

6.1.1 Model of the Pendulum and Its PID Controller.

6.1.2 Integration with an Ethernet Simulator.

6.1.3 Experiments.

6.2 Frequency Regulation in an Electrical Power System.

6.2.1 Generation.

6.2.2 Transmission Network and Electrical Loads.

6.2.3 Frequency Monitoring and Load Actuation.

6.2.4 Software Implementation.

6.2.5 Experiments.

6.3 Summary.

7 THE FUTURE.

7.1 Simulation Programming Languages.

7.2 Parallel Computing and Discrete-Event Simulation.

7.3 The Many Forms of Discrete Systems and Their Simulators.

7.4 Other Facets of Modeling and Simulation.

APPENDIX A DESIGN AND TEST OF SIMULATIONS.

A.1 Decomposing a Model.

A.1.1 Bottom-Up Testing.

A.1.2 Invariants and Assertions.

A.2 Input and Output Objects.

A.2.1 Simple Structures.

A.2.2 Unions.

A.2.3 Pointers and Hierarchies of Events.

A.2.4 Mixing Strategies with Model Wrappers.

A.3 Reducing Execution Time.

APPENDIX B PARALLEL DISCRETE EVENT SIMULATION.

B.1 A Conservative Algorithm.

B.1.1 Lookahead.

B.1.2 The Algorithm.

B.2 Implementing the Algorithm with OpenMP.

B.2.1 Pragmas, Volatiles, and Locks.

B.2.2 Overview of the Simulator.

B.2.3 The LogicalProcess.

B.2.4 The MessageQ.

B.2.5 The ParSimulator.

B.3 Demonstration of Gustafson's and Amdahl's Laws.

APPENDIX C MATHEMATICAL TOPICS.

C.1 System Homomorphisms.

C.2 Sinusoidal State-Steady Analysis.

REFERENCES.

INDEX.

Customer Reviews

Most Helpful Customer Reviews

See All Customer Reviews