Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Wiki Markup
<ac:structured-macro ac:name="anchor" ac:schema-version="1" ac:macro-id="4f0e6468741dac7d-59d04349-46994bac-96caadbd-9d9c1004533d74393da24148"><ac:parameter ac:name="">PRJ-MODELARCH</ac:parameter></ac:structured-macro> *PRJ-MODELARCH*: In this phase we will architect the model hierarchy - how one or more model sections comprise a beamline \[[#REF-SLCBMLS]\], and the beamline modelled in one or more energy profiles (aka "Twiss modes") \[[#REF-MBITS]\]. 4 combinations of the two input types should be supported: 

...

Anchor
PRJ-XALMODEL
PRJ-XALMODEL
PRJ-XALMODEL: Functionally as phase 1, but for XAL. Phase 1 precedes phase 2 since we already have a Mad model. Phase 2 will additionally involve adapting XAL for the LCLS beamline requirements (acceleration, solenoid), and creating a model server for XAL. The model server runs (in XAL language it hall 's called "probe") the input file on demand. That is to say, this is not a continuous accelerator simulator. The model inputs for this phase will be a hand written XAL input files.

...

Anchor
PRJ-ADDXMLTOAIDA
PRJ-ADDXMLTOAIDA
PRJ-ADDXMLTOAIDA: Add XML data packaging to AIDA. This facilitates trivial structured data display, since AIDA will have prepackaged the data for rendering via a cascading style sheet (CSS) to an xhtml "browser" display (although we won't use a browser in the normally understood sense, we'll use the built in Eclipse browser.

Model Data

Anchor
PRJ-DBDATAVIAAIDA
PRJ-DBDATAVIAAIDA
PRJ-DBDATAVIAAIDA (sm) : Oracle DB access through AIDA.

For phase 1 of model development we will continue to use Mad, where the model results are put in the SLC database (See #PRJ-MADTWISSINDB). Modelling applications should be able to easily acquire that data (that is, without direct JDBC calls). The same solution to that problem can be generalized trivially for other applications both in LIPS and outside, so that they are able to access the DB without specific knowledge of the schema. So we shall create a simple AIDA data server for retrieving Oracle DB data, in which the SQL statement itself can be stored in the AIDA db, so the application need only know the name of the AIDA instance/attribute pair (like an EPICS PV) which is then translated by the AIDA Nameserver system, into an SQL query, which this new AIDA Oracle DB Data Provider then retrieves.

Eg TORO:23:IM20's TWISS params for energy profile 3 == AIDA query "TORO:23:IM20//Twiss Mode=3", translated by AIDA nameserver to the SQL query "select twiss from symbols.twiss where device = 'TORO:23:IM20' and mode = 3" and this string is then used by AIDA's Oracle DP to retrieve the value.

Textual Displays

Anchor
PRj-DISPMAN
PRj-DISPMAN
PRJ-DISPMAN (med): Create a standard textual display system.

This system is intended to make very trivial the process of displaying formatted, tabular, textual data on the display. Since much of the bulk data a physics GUI application will want to display will have been retrieved from some system like Oracle or AIDA, that is able to get bulk tabular data in one call, if that data were retrieved as XML, then rendering it to a display would be trivial using Cascading Style Sheets to create either tabular text, or simply xhtml. If the display language were xhtml, thne then the display driver would be the web browser already in Eclipse. Writing a display would then be a matter of writing the data acquisition; the display formatting would be defined in CSS (Cascading Style Sheets).

...

Textual displays described as such could then be mixed with Channel Access data brought in directly through webCA. The AJAX mechanism would be used to mix the two in a smooth user interface (no page redraw for every new data fetch etc).

Antecedent Associated project #PRJ-ADDXMLTOAIDA.

...