Presentation is loading. Please wait.

Presentation is loading. Please wait.

Online Model - Goals Program package in Python to obtain and manipulate a online model of the machine Highly modular approach which allows for include.

Similar presentations


Presentation on theme: "Online Model - Goals Program package in Python to obtain and manipulate a online model of the machine Highly modular approach which allows for include."— Presentation transcript:

1 Online Model - Goals Program package in Python to obtain and manipulate a online model of the machine Highly modular approach which allows for include only those parts needed in the application’s goal (e.g. obtain transport matrices) Support simple embedding into application with standardized interface or to develop advanced feature using much more of the low-level access function of the online model. Three main categories in the python modules: Core modules: Representation of the layout and python-dictionary of all elements. Layout driven applications: Applications which rely on a specific representation of the layout, e.g. lattice in MADX format. Parent class can then provide more functionality such as tracking with madx, obtaining transfer matrices etc. Machine Interface: All access routines, which allows to interface between the model and the matching setting. Example is the conversion between dipole deflection angle and dipole current.

2 Madx-Client (zeroMQ) LiTrack-Server Machine Interface Energy Server Optics Server (?) Madx-Lattice LiTrack-Lattice Machine Calibration AppTemplate Cafe Servers Interface Dependent Modules High Level App e.g. Emittance Tool Module Dependence for Online Model and High Level Applications Goal is a highly modular approach, grouping dependences as much as possible Facility Container Layout Type Definition OnlineModel Interface Energy Model Interface with the Machine, e.g. setting quadrupole to k 1 -value with automatic conversion to magnet conversion. Dynamic Model of the machine with layout information and element “database”, e.g. search all device names, which have a field “k 1 ” OnlineModel clients, which depend on the explicit layout of the facility, e.g. the internal Energy Model but also Energy Server follow this approach.

3 Online Model – Example Use in Python Import * from OMFacility Import * from OMMachineInterface Import * from OMMadx # get an instance of the core online model SF=OMFacility() # get an instance to the machine interface MI=OMMachineInterface() # select types of elements to be interfaced with MI.filter([‘Quadrupole’,’Dipole’,’Corrector’]) # update the core model with machine setting. Inverse function would be MI.updateMachine(SF) MI.updateModel(SF) #get an instance of Madx-Client Madx=OMMadx() #select a specific path in the layout (here to the Aramis bump) AR=SF.BeamPath(7) # generate a valid lattice to be tracked with Madx as the event handler, overwriting OMAppTemplate AR.writeLine(Madx) R56=Madx.getR56(‘SINLH01.DBAM010’,’SINLH03.DBPM090’)


Download ppt "Online Model - Goals Program package in Python to obtain and manipulate a online model of the machine Highly modular approach which allows for include."

Similar presentations


Ads by Google