Title: Application Programming
1Application Programming
DOE Review
May 6-8, 2003
2Outline
- Commissioning Experience
- Application Development
- Database progress
- Acknowledgements A. Aleksandrov, S. Assadi, C.
Chu, K. Danilova, D. Gurd, S. Henderson, D.O.
Jeon, W.-D. Klotz,C. Lionberger, J. Patton, T.
Pelaia, A. Shishlo, C. Sibley, E. Tanke, E.
Williams (ORNL), C. Allen, C. McChesney (LANL),
D. Ottavio (BNL)
3Electronic Log Book(Commissioning Experience)
- E-Log was available before commissioning, and
used extensively (gt 2500 entries)
- Web access, uses database storage (easy for
searching) - Entries by logbook type, equipment category
- Viewable chronologically, or by thread
- Document attachment capability
- Stay abreast of progress remotely, partner lab
access - Great success, but need training on features
4Save / Restore (Commissioning Experience)
- Started off pasting snapshots of control screens
in the e-log.
- Introduced an EPICS tool BURT
- Not widely used
- Sometimes failed for unknown reasons
- Only grabbed settable quantities
- A new application was developed based on input
requirements from operators / physicists (C.
Lionberger)
5Archiving (Commissioning Experience)
- Started off NOT systematically archiving data
- Controls group instituted comprehensive data
archiving with the EPICS channel access archiving
tool. - System specific sets created with customized
archiving intervals - Every PV archived at regular intervals
- EPICS archiver provides general retrieval tools,
but - Need to write some customized tools
- Need to think of data culling schemes
6Archiving cont. (Commissioning Experience)
Signal / time window selection
Pick the archive
Output plot, spreadsheet, Matlab,
- EPICS toolset provides a web based data retrieval
capability - Data is being archived and can be retrieved
7EPICS Tools, General(Commissioning Experience)
- Striptool
- Plot any signal vs. time
- A top 10 application
- Easy to use, drag drop signal names to it
- Used extensively
- Histogram tool
- Customized before commissioning
8Physics Applications(Commissioning Experience)
Matlab Programs
- Emittance app (controller analyzer)
- Worked well
- Similar program being prepared for DTL D-plate
- Java version to be done for permanent in-line
emittance device - RF Phase setting
- Used BPM signals, worked well
- Similar version being prepared for DTL tank 1.
- Converted to a more permanent Java program
Java version
Matlab version
9Orbit Difference (Model vs. BPM)(Commissioning
Experience)
- Orbit difference Good agreement in orbit
difference
- Orbit difference OK agreement in absolute orbit
10Orbit Correction(Commissioning Experience)
- It works, can run in background continuously,
- MEBT was so simple, operators tended to correct
by hand. - Can be used throughout SNS
11Xiodiag General purpose signal
browser(Commissioning Experience)
- Xiodiag pick an accelerator sequence, and then
pick a set of signals to display - Provides live tabular or plot displays
- Used as the de-facto orbit display
- Have since improved display limit controls
12Scripting(Commissioning Experience)
- Magnet ramper to cycle on magnets jython script
with Java GUI
- Other scripts for
- Misc. Matlab python programs for jitter
analysis - Correlating BCM signals
- Beam based alignment
- Parasitic data grabbing for beam initial
condition analysis - Useful tool, used by those familiar with
scripting.
13Scope Application(Application Development)
- Need integrated display of time dependent
information (BPMs, RF, Current monitors, BLMs, ) - Also use it to display diagnostic triggers
relative to ion source and RF gates. - Add general formula capability
- Updated the accelerator physics requests for
signals from diagnostics (more information see
http//www.sns.gov/APGroup/appProg/appProg.htm )
14General Purpose X-Y Correlator(Application
Development)
- Used only by specialist during commissioning
- Added features for easier user interface
- Uses XAL correlator package to ensure correlated
data pairs - 2D 3D versions
15MPS Post Mortem (Application Development)
- During commissioning it was difficult to identify
the root cause of an MPS trip (many dependent MPS
events happened) - MPS Post mortem gathers MPS signals by
macropulse, and sorts them by time within the
macro-pulse.
16Application Framework (Application Development)
- A Framework Foundation to create applications is
written, and provides - Common UI for apps
- Follows typical windows paradigm
(document-view) - Gives a jump-start for application development
- Built-in help
- Easy to modify menubar toolbar
- Offers possibility to enhance all applications at
once
17Lattice Generation(Application Development)
- General framework within XAL for an online model
is written - Integrated with the XAL framework
- Previous online model called external FORTRAN
code - Generalized lattice generator being developed
- Create input files for external lattice programs
(e.g. Trace-3D, Transport, DYNAC, MAD, - Use either design values, or live machine values
- Use the database as the repository for machine
data and lattice configuration
18Database Population(Beamline components)
- gt 1500 Beamline components (items that would show
up in a lattice file) are populated - Magnet measurement data population has started
19Magnet Current to Field Translation
- Java program reads measurement information from
database, does fit, and stores fit information in
the database - Pull-down pick list for magnet selection
- To be used in programs running on IOC computers
providing magnet field information
20Database Access
- Web interfaces for reading http//www.sns.gov/AP
Group/GlobalDatabase/GDatabase.htm - Links to Microsoft Access / Excel for editing
data, etc. - Database used for linac data in latest issue of
global coordinates
21Conclusions
- First round of applications done, working on next
set - Lessons
- Need to familiarize people with application
features before commissioning. - Need GUI interfaced applications for general
users. - Have integrated help capability, common look/feel
- Testing with Virtual Accelerator before
commissioning helped