Presentation is loading. Please wait.

Presentation is loading. Please wait.

8 th Annual Tcl/Tk Conference 29 July 2001 Ronald A. Bowers Robert G. Parker Paul J. Tanenbaum U.S. Army Research Laboratory Survivability/Lethality Analysis.

Similar presentations


Presentation on theme: "8 th Annual Tcl/Tk Conference 29 July 2001 Ronald A. Bowers Robert G. Parker Paul J. Tanenbaum U.S. Army Research Laboratory Survivability/Lethality Analysis."— Presentation transcript:

1 8 th Annual Tcl/Tk Conference 29 July 2001 Ronald A. Bowers Robert G. Parker Paul J. Tanenbaum U.S. Army Research Laboratory Survivability/Lethality Analysis Directorate Tcl/Tk in Survivability Modeling for Military Systems

2 What We Do Our mission is to analyze the survivability of Army systems against a wide variety of threats, including ballistic threats such as bullets, missiles, and bursting artillery rounds, as well as electronic, chemical, and biological threats. Testing is very expensive and can be dangerous; therefore, we use modeling extensively. For ballistic threats, the primary analysis model is a program called MUVES. Ballistic analysis requires knowledge of the target geometry, which is captured using a tool called BRL-CAD TM.

3 BRL-CAD Primitive Shapes

4 wedge cylinder block (wedge  block)  cylinder wedge  block  cylinder block  (wedge  cylinder) CSG Boolean Operations

5 Some Pieces of a BRL-CAD Database

6

7

8

9

10

11

12

13

14

15

16 All primitives shown.

17 Primitives found by query ray.

18 BRL-CAD Software Libraries libbn Numerical computation, quaternions, wavelets,... libbu Utilities: memory mgmt, parallel processing,... libdm Display manager: X, OGL, PostScript,... librt Ray tracing libpng PNG libz Data compression libtcl Tcl libtk Tk libitcl [incr Tcl/Tk] and [incr Widgets]

19 Object Orientation Initially we packaged instances of library objects as Tcl commands. tclsh> wdb_open db scene.g db tclsh> db ls LIGHT cone.r/R light.r/R tor.r/R all.g/ cone.s platform.r/R box.r/R ellipse.r/R platform.s box.s ellipse.s tor

20 Object Orientation Now we are wrapping those objects in [incr Tcl] classes. itcl::class Db { protected variable db "" public variable dbfile "" constructor {filename} { set dbfile $filename set db [subst $this]_db wdb_open $db $dbfile } destructor {} { rename $db "" } public method ls {args} { eval $db ls $args } }

21 MUVES MUVES is a tool for vulnerability/lethality analysis—stochastic and deterministic—of ballistic threats against ground and air systems. MUVES consists of 410,000 lines of C code, including graphical user interface and general- purpose packages.

22 Target geometry Personnel data Component vulnerability Criticality analysis Behind-armor debris Impact conditions Threat characterization Residual penetration Personnel incapacitation Component damage Subsystem capabilities Remaining system utility User-defined criteria...... MUVES MUVES inputs & outputs P cd/h v m v

23 glacis armor armor-piercing rounds HE round fire wall engine starter transmission sump fan rear armor A Ray-Tracing Application: Shotlining

24 DMUVES Distributed MUVES (DMUVES) is an enhancement to MUVES that enables an analysis to be run in parallel on a single computer and distributed upon multiple networked computers.

25 The Original MUVES Architecture raytracer BRL-CAD Target Description Analyzer Final Results File Threats File Pipe View File raytracer Other Input Files Ray Requests Ray Results Run times were horrific, but converting the analyzer into a multithreaded application was deemed too costly.

26 Boss Input Files MUVES GUI The DMUVES Approach daemon Host A Host B Host C Workers

27 The Use of Tcl in DMUVES daemonIf Task Manager daemon workerIf Tcl Event Handler Final Results File Tcl scripts over sockets The workers also use Tcl event handlers to monitor their socket connections. Boss Worker Results Manager The daemon is written entirely in [incr Tcl].

28 Performance Results

29

30 Brake control rod (left) Syncro brake crank Syncro brake rod Syncro mechanism Brake crank Brake control rod Brake pedal lever Brake control rod (right) Braking controls MUVES System Evaluation

31 Lessons Learned Developing portable GUIs is far easier with Tcl/Tk than with other packages such as Java Swing, MFC, Motif, Athena, and raw X. Use [incr Tcl/Tk]. Get Tcl/Tk training early.

32 Plans BRL-CAD –Gradually replace first-generation Tcl code with [incr Tcl]. –Implement object-oriented geometry? MUVES –Wrap additional MUVES functions. –Continue transitioning tools from X to Tk. –Replace ASCII boss-to-worker messages with binary. –Add additional boss and worker tasks, including tasks expressed in Tcl. –Couple MUVES parameters to Tcl variables.


Download ppt "8 th Annual Tcl/Tk Conference 29 July 2001 Ronald A. Bowers Robert G. Parker Paul J. Tanenbaum U.S. Army Research Laboratory Survivability/Lethality Analysis."

Similar presentations


Ads by Google