1 / 6

Status of the PTC- pyOrbit code development

Status of the PTC- pyOrbit code development. H. Bartosik Space charge meeting Juy 3 rd 2014. Discussions during (and after) IPAC14. Discussions with Sarah Cousineau

manny
Download Presentation

Status of the PTC- pyOrbit code development

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Status of the PTC-pyOrbit code development H. Bartosik Space charge meeting Juy 3rd 2014

  2. Discussions during (and after) IPAC14 • Discussions with Sarah Cousineau • Slice-by-slice 2D space charge solver  agreed to be included in the pyOrbit SVN repository (done already, see following slides) • Frozen space charge module – should also be included in the pyOrbit SVN repository (still some implementation details for the Teapot lattice to be sorted out – see next slides) • BunchTwissAnalysis class presently computes the effectiverms emittance ( including the dispersive part) – agreed to extend the module to compute also the pure betatron emittance (see next slides) • Discussions with Sasha Molodozhentsev • Agreed to continue a common effort to optimize the PTC part of the PTC-pyOrbit interface (e.g. clean-up of unnecessary unit conversions) together with Jeff Holmes • Idea is to further develop PTC, test and include the changes in the official CERN PTC release and with py-Orbit; check into SVN as last step SC meeting July 3rd 2014

  3. Status of the slice-by-slice 2D module development • Motivations  see 41st SC meeting • Simple tests with and without boundary conditions successful • C++ routines and Python interface submitted to the py-Orbit SVN repository • together with manual/documentation on the py-Orbit wiki Page • including example scripts for demonstrating the usage • Sabrina Appel (GSI) started to do some benchmarking with the Teapot lattice of SIS100 in comparison with the PATRIC code  ongoing • Tests for the SPS case • So far, the unphysical instability observed with the “2.5D” module (2D space charge weighted by line density) is not observed with the slice-by-slice 2D module  tests are ongoing, very promising SC meeting July 3rd 2014

  4. Status of the Frozen space charge module development • Motivation for frozen SC in py-Orbit  see 41st SC meeting • Implementation in C++ with Python interface done for PTC lattices • Added the possibility to update bunch parameters (emittances, intensity, momentum spread, line density) on Python level  flexibility for the user for how and when to update parameters • Added the possibility of using an arbitrary line density profile (interpolation of a pair of vectors for z and the line density) • Benchmarking / Testing • Few test cases for the PS were run with and without updating the emittance • Raymond is running the MADX frozen SC simulations without the emittance update to allow for a direct comparison  Results of these tests to be presented in one of the next meetings SC meeting July 3rd 2014

  5. Emittance calculation in BunchTwissAnalysis • The BunchTwissAnalysis module calculates the effectivermsemittances and the effectivestatistical optics functions – but for the moment not the pure betatronemittances and optics functions without dispersive part … • After discussions about possibilities to include the calculation of the pure betatron emittance and optics functions we agreed on a strategy • Change BunchTwissAnalysis.getEmittance to calculate pure betatron emittance • Change BunchTwissAnalysis.getAlpha (and likewise .getBeta .getGamma) to calculate the statistical optics functions without dispersive part • The old methods for calculating the effective emittances and effective optics functions will be accessible through BunchTwissAnalysis.getEffectiveEmittance, BunchTwissAnalysis.getEffectiveAlpha … • Implementation finished  tests are successfull • Will be checked into the SVN repository after cross-check with py-Orbit developers  !Warning! results of the emittance calculation will be different once the code is updated SC meeting July 3rd 2014

  6. Summary • Slice-by-slice module • Uploaded to SVN repository and available in latest CERN executable • Tests at CERN and GSI ongoing • Frozen SC module • New features implemented: updating bunch parameters, arbitrary line density • Tests with PS and SPS lattice ongoing • Still some implementation to be done for the Teapot lattice • BunchTwissAnalsysis modules • Modifications for pure betatron emittance and optics functions implemented • Will be uploaded to SVN after cross-check with py-Orbit developers SC meeting July 3rd 2014

More Related