High Level Applications Facility Advisory Committee Meeting June 17, 2008 Applications Team

advertisement
High Level Applications
Facility Advisory Committee Meeting
June 17, 2008
Applications Team
Current Development
Plan for 2008 Commissioning
Project Management
June 16-18, 2008
LCLS FAC
Patrick Krejcik
pkr@slac.stanford.edu
High Level Applications Team
D. Fairley
D. Rogind
S. Chevtsov
P. Chu
G. White
M. Woodley
M. Zelazny
P. Krejcik
June 16-18, 2008
LCLS FAC
Technical Leads
(and Developers)
Software Developers
Supervisor
Patrick Krejcik
pkr@slac.stanford.edu
Overview
Since the last review
The HLA Group has been restructured
The schedule and priorities has been revised
A design methodology has been adopted
We will concentrate on delivering a core suite of
applications to replace those on the SCP
Use of the ECLIPSE RCP deferred
Applications will be written in Java, Swing
Working applications:
SCORE, bunch length, feedbacks, Matlab applications
June 16-18, 2008
LCLS FAC
Patrick Krejcik
pkr@slac.stanford.edu
Current Development
Formalized Requirements and Design and Review
process
Phase 1 Software Architecture
Roll out working prototypes early on
Infrastructure and Utilities
Oracle Data provider (Prototyped)
Save To Matlab, Save to SCORE, Textual Display, To
Logbook.. (In test)
Beam Synchronous Acq – Event API (In Progress)
Core applications
Design started
June 16-18, 2008
LCLS FAC
Patrick Krejcik
pkr@slac.stanford.edu
Formal Documentation and Review Summary:
Application
Req Doc
Req Rev Design Doc
Online Model
LEM
Profile Monitor
Wire Scan
Emittance
Beta Matching
Correlation
Orbit Data
Beam Synch Acq
Orbit Correction
Multiknob
Bumps
Klys Man
Complete
PRELIM
Complete
Complete
Complete
Complete
Complete
Complete
PRD
Complete
Complete
PRELIM
In Progress
Yes
Partial
Yes
Yes
Yes
Scheduled
Scheduled
Yes
June 16-18, 2008
LCLS FAC
Yes
Yes
Scheduled
No
Des Rev
Yes
Yes
Yes
Yes
Next
Yes
Patrick Krejcik
pkr@slac.stanford.edu
Development Status
Application
Status
Online Model
LEM
Profile Monitor
Wire Scan
Emittance
Beta Matching
Correlation
Orbit Data
Beam Synch Acq
Orbit Correction
Multiknob
Bumps
Klys Man
Start-to-End Sim
testing vs MAD in progress (Chu, Woodley)
design requirements
Java prototype
design requirements complete
design requirements complete
design requirements
design requirements
started design and coding
coding and testing
design requirements complete
design requirements complete
design requirements
design requirements
stalled, needs physicist and software resources
June 16-18, 2008
LCLS FAC
Patrick Krejcik
pkr@slac.stanford.edu
Choice of Framework
Matlab has been successfully used to develop
many applications for commissioning, so why is it
not enough?
1. In general, we want to take a longer term view to
HLA support (see next slide)
2. Specifically, we need to provide an online model
that is database driven and linked to EPICS PVs
3. Feedback software has reached its limit of
complexity in Matlab. Further development needs
to be done in Java and C
June 16-18, 2008
LCLS FAC
Patrick Krejcik
pkr@slac.stanford.edu
Software Architecture for HLAs
Well developed Application Programming Interfaces (APIs) so that
Code duplication is minimized.
Code maintainability is optimized.
Applications can integrate with other HLAs.
Higher level applications can be built hierarchically from other smaller applications.
HLAs can be executed from a script so that whole procedures can be written.
Exception handling, no crashing when unexpected events occur.
Multi-threaded for higher performance
Central message logging that archives system events
Database aware
Similar look and feel for applications, intuitive interface.
Choose beamline “sections” (no hard coding to one part of the beamline)
unified framework for the application software
share common features such as restoring setups, data saving and access to various
software tools on the Operator Interface workstation screens (OPIs)
Matlab can access the APIs so that new applications can be rapidly prototyped
by physicist programmers when new physics needs arise.
June 16-18, 2008
LCLS FAC
Patrick Krejcik
pkr@slac.stanford.edu
Evolution of the Architecture
New architecture is not a direct copy of XAL
from SNS
We are sharing some of XAL’s features
Java based applications, uses JCA, SMF from
the online model, database driven
XAL had many hard-coded instances to
specific SNS devices
XAL applications did not meet LCLS
requirements exactly
June 16-18, 2008
LCLS FAC
Patrick Krejcik
pkr@slac.stanford.edu
New LCLS HLA architecture
Suite of modular applications
Java, Swing based
APIs so applications work in concert
Still use Matlab for rapid prototyping of
applications
June 16-18, 2008
LCLS FAC
Patrick Krejcik
pkr@slac.stanford.edu
Example of Interface between core Applications
Next slide
June 16-18, 2008
LCLS FAC
Patrick Krejcik
pkr@slac.stanford.edu
Work Plan for the first application
Teaming up on Orbit Data Application
Requirements and Designs complete
Java Swing GUI mock ups
Utility APIs (coded and in test) - to matlab, to Score, to
Logbook, textual display
Event API (coded and in test)
Oracle database provider (coded and in test)
Plotting (in evaluation)
allows us to develop the infrastructure for the next
applications
June 16-18, 2008
LCLS FAC
Patrick Krejcik
pkr@slac.stanford.edu
Orbit Data Team Development
June 16-18, 2008
LCLS FAC
Patrick Krejcik
pkr@slac.stanford.edu
Orbit Data – first customer of Event API
June 16-18, 2008
LCLS FAC
Patrick Krejcik
pkr@slac.stanford.edu
Event API Sequence Diagram
June 16-18, 2008
LCLS FAC
Patrick Krejcik
pkr@slac.stanford.edu
Orbit Data Swing GUI mockup
Orbit z-plot
June 16-18, 2008
LCLS FAC
BPM buffered data
Patrick Krejcik
pkr@slac.stanford.edu
Working GUI for the Profile Monitor “Live View”
(simulated data)
June 16-18, 2008
LCLS FAC
Patrick Krejcik
pkr@slac.stanford.edu
OnLine Model
XAL model installed
Beamline generated from the Oracle RDB
In turn generated from the MAD beamline file
“live” machine settings are read through EPICS
Channel Access
Model output is written back to the RDB
Accessible to all programs, including Matlab
A Matlab script is currently being used to compare
the XAL design model output with the MAD design
output.
Inconsistencies are being removed (debugging)
June 16-18, 2008
LCLS FAC
Patrick Krejcik
pkr@slac.stanford.edu
Start to End Simulations
provide a software script to transfer the multiparticle results from one code to the next
use the Standard Machine Format description of the accelerator developed for the XAL
online model and the database logging tools to supply the “live” machine settings to the
input files for each of the simulation codes
capture the simulated particle distributions at each of the monitor points of interest along
the beamline, such as at profile monitor and wire scanner locations, as well as the
undulator output.
provide a tool for displaying the simulation results alongside the measured beam profiles
analyze the execution time for complete and partial simulations of the machine
evaluate whether the simulation can be displayed in real time alongside the measured
machine data using an advanced computing farm.
optimize the code to run on the superfast computers
or, develop tools whereby snapshots of the machine settings can be easily saved at the
time real beam data is recorded so that the snapshots can be used as input for the
machine simulations for offline comparison with measured data.
June 16-18, 2008
LCLS FAC
Patrick Krejcik
pkr@slac.stanford.edu
Schedule for delivering Phase I Applications*
Application
Date
Orbit Data Plots
August 2008
Online Model
available to Matlab in August 08
LEM
January 2009
Profile Monitor
November 08
Multiknob
November 2008
Bumps
December 2008
Wire Scan
March 09
Emittance
April 09
Beta Matching
May 09
Correlation
August 09
Orbit Correction
January 2009
Klys Man
May 09
Start-to-End Sim
stalled, needs both physics and software resources
* Subject to physicist priorities
June 16-18, 2008
LCLS FAC
Patrick Krejcik
pkr@slac.stanford.edu
Download