110 likes | 268 Views
Hybrid Sim design review. Paul Hubbard Oct 16 2006. Agenda. Design review Design goals Technologies Things not attempted Current status Does it work? What does it do? When will it be ready to use/program/deploy? Discussion What have we missed? Or done wrong?. Design goals.
E N D
Hybrid Sim design review Paul Hubbard Oct 16 2006
Agenda • Design review • Design goals • Technologies • Things not attempted • Current status • Does it work? What does it do? • When will it be ready to use/program/deploy? • Discussion • What have we missed? Or done wrong?
Design goals • Non-real-time, distributed hybrid simulations are the primary design goal. • Wanted to increase efficiency and step rate compared to predecessor NTCP • Ability to interoperate with other HS systems a major goal • Portable code – Windows, Linux • Key question – what can NEESit create that’s useful and novel?
Design choices to date • C++ code, using OpenSSL for communications layer, with large suite of unit tests. • Client/server/backend architecture, using dynamic-library plugins on the server • Event-driven messaging, where all server plugins see all messages • Binary applications protocol, with user messages defined with XML. (Network-ordered IEEE types) • Extensive use of threads for async speed
Things (not) attempted • Not attempting to write • Integration algorithms • FEM codes or programs • Real-time (e.g. SCRAMnet) control • We are trying for • Efficient communications protocol, defined well enough to allow multiple implementations • Framework for EOT/NEESR • Adding new stuff to current systems
Current status • Have code for • Messaging, TCP abstraction (Message, Connection, and Connector classes) • Server • Multithreaded, builds on OSX, Cygwin, MSVC, Linux • Plugins for logging, Web plotting portal, NTCP/ASCII (Mini-mosts, others), external simulation/FEM, security interface • Coordinators • Have demos, but more work needed here
Current status, continued • Demos/tests • Drive mini-most-1 • Drive mini-most-2 • Drive external simulation of M1 using separate sim program • Drive sim program and M1 simultaneously • Drive web plot backend • Note that messaging API is still unfinished and quite messy. We are working hard on this as we learn the problem better.
Timelines, hopeful • Trying for working code to do a hybrid experiment this calendar year • Re-creation on NEESGRID 3-site, basically • Working with UCSD equipment site to get better test hardware • Column breaker • Quanser redesign • Next priority is to get a coordinator based on OpenSees and/or SIMCOR
Current plans • Cleanup code written in code sprint last week • Now that we can build using MSVC, start working on interfaces to UIUC and Berkeley code, both as coordinators and simulation engines • Implement SSL mode – the code is simple, but the required certificate infrastructure is time consuming to create. • Work more on the (communications) API • Cleanup • C language bindings, MATLAB interface • Internal code refactoring – auto_ptr, valgrind, splint, etc • XML message definitions – lots to do here.
Where to get more info • HS weblog is the primary information source • http://it.nees.org/weblog/hybrid/ • Preliminary design and protocol http://it.nees.org/weblog/hybridsim/?p=67 • Code is in Subversion at • https://svn.nees.org/svn/hybrid/sesame