cobra-headtail ICE Meeting 6. November 2013, CERN

Size: px
Start display at page:

Download "cobra-headtail ICE Meeting 6. November 2013, CERN"

Transcription

1 cobra-headtail ICE Meeting 6. November 2013, CERN, Adrian Oeftiger, Giovanni Rumolo

2 Overview Motivation Model Design Benchmark Demo Conclusions

3 Motivation 3/68

4 What is cobra-headtail? A little success story: ECLOUD 4/68

5 What is cobra-headtail? A little success story: Written in Python: ECLOUD Python PyECLOUD G. Iadarola G. Rumolo Interpreted language (open source), allowing incremental and interactive development of the code, encouraging an highly modular structure Libraries for scientific computation (e.g Numpy, Scipy, Pylab) Extensible with C/C++ or FORTRAN compiled modules for computationally intensive parts 5/68

6 What is cobra-headtail? A little success story: ECLOUD Python PyECLOUD HeadTail 6/68

7 What is cobra-headtail? A little success story: ECLOUD HeadTail Python PyECLOUD PyHeadTail 7/68

8 What is cobra-headtail? A little success story: ECLOUD HeadTail Python C++ Python PyECLOUD PyHeadTail X 8/68

9 What is cobra-headtail? A little success story: ECLOUD HeadTail Python C++ Python Written in C++ interfaced by Python: PyECLOUD PyHeadTail X cobra-headtail The whole effort for modularization started with the choice for C++ C++ is fairly high level, generic and combines modularity and object-orientation with the high performance of a compiled language C++ lacks the flexibility provided by a script language provide an interface to Python via boost libraries we get the best of both worlds! 9/68

10 What is cobra-headtail? A little success story: ECLOUD HeadTail Python C++ Python PyECLOUD PyHeadTail X cobra-headtail Collective beam dynamics in ring accelerators 10/68

11 What is cobra-headtail? A little success story: ECLOUD HeadTail Python C++ Python PyECLOUD PyHeadTail X cobra-headtail Collective beam dynamics in ring accelerators & Analysis of cobra-headtail numerical simulation data 11/68

12 What is cobra-headtail? A little success story: ECLOUD HeadTail Python C++ Python PyECLOUD PyHeadTail X cobra-headtail Collective beam dynamics in ring accelerators & Analysis of cobra-headtail numerical simulation data Anaconda 12/68

13 What is cobra-headtail? A little success story: ECLOUD HeadTail t t PyECLOUD u u b b,, t i t i f f o C++ o t t!! PyHeadTail s X n s n Python o m i o m i t e t cobra-headtail e u e u e ccaa s s l l l AA l Collective beam dynamics in ring accelerators Python & Analysis of cobra-headtail numerical simulation data Anaconda 13/68

14 What is cobra-headtail? not to be mixed-up 14/68

15 What is cobra-headtail? 15/68

16 What is cobra-headtail? Actually, we are doing exactly that, but sticking to well-known Python as our scripting language... so maybe there is actually some truth in this disambiguation 16/68

17 Why cobra-headtail? Why cobra-headtail? HeadTail works just fine! 18/68

18 Why cobra-headtail? Why cobra-headtail? HeadTail works just fine! The reference: HeadTail 2000 by G. Rumolo and F. Zimmermann 19/68

19 Why cobra-headtail? Why cobra-headtail? HeadTail works just fine! HeadTail with matching for ions HeadTail ECLOUD HeadTail Impedance The reference: HeadTail 2000 by G. Rumolo and F. Zimmermann 20/68

20 Why cobra-headtail? Why cobra-headtail? HeadTail works just fine! HeadTail ECLOUD with SUSSIX analysis Lattice HeadTail Multi-bunch HeadTail HeadTail with matching for ions HeadTail ECLOUD HeadTail Impedance The reference: HeadTail 2000 by G. Rumolo and F. Zimmermann 21/68

21 Why cobra-headtail? Why cobra-headtail? HeadTail works just fine! HeadTail ECLOUD with wideband feedback Lattice HeadTail with radiation damping HeadTail ECLOUD with SUSSIX analysis Multi-bunch HeadTail with longitudinal collective effects Lattice HeadTail Multi-bunch HeadTail HeadTail with matching for ions HeadTail ECLOUD HeadTail Impedance The reference: HeadTail 2000 by G. Rumolo and F. Zimmermann 22/68

22 Why cobra-headtail? Why cobra-headtail? HeadTail works just fine! HeadTail ECLOUD with wideband feedback Lattice HeadTail with radiation damping HeadTail ECLOUD with SUSSIX analysis Multi-bunch HeadTail with longitudinal collective effects Space charge Lattice HeadTail Multi-bunch HeadTail HeadTail with matching for ions HeadTail ECLOUD HeadTail Impedance The reference: HeadTail 2000 by G. Rumolo and F. Zimmermann 23/68

23 Why cobra-headtail? Why cobra-headtail? HeadTail works just fine! HeadTail ECLOUD with wideband feedback Lattice HeadTail with radiation damping Multi-bunch HeadTail with longitudinal collective effects At At least least we we had had svn svn some some kind kind of of version version control control Still, work is redone Still, efforts efforts are are scattered, scattered, work is redone Space and good work is under the thread of being HeadTail ECLOUD charge andwith good work is under thread of being Lattice the HeadTail Multi-bunch HeadTail SUSSIX analysis lost lost HeadTail with matching for ions HeadTail ECLOUD HeadTail Impedance The reference: HeadTail 2000 by G. Rumolo and F. Zimmermann 24/68

24 Why cobra-headtail? Possible reasons for scattered efforts: People like to understand what they write; a non-modular code is full of dependencies with global variables scattered all over the place sometimes very hard to understand Okay, I will now write my own version of the code that only I can understand! It is simple and quick (at least, it seems so at first) to hardcode some simple modifications for one specific purpose and add them within some switch statement (hoping it will not interfere with anything else...) 25/68

25 Why cobra-headtail? Possible reasons for scattered efforts: People like to understand what they write; a non-modular code is full of dependencies with global variables scattered all over the place sometimes very hard to understand Okay, I will now write my own version of the code that only I can understand! It is simple and quick (at least, it seems so at first) to hardcode some simple modifications for one specific purpose and add them within some switch statement (hoping it will not interfere with anything else...) Possible solutions Extendible Flexible Manageable Translatable How about having a basic platform to which anyone can contribute his own independent part of code which anyone can use just by somehow plugging it in? 26/68

26 Why cobra-headtail? Possible reasons for scattered efforts: People like to understand what they write; a non-modular code is full of dependencies with global variables scattered all over the place sometimes very hard to understand Okay, I will now write my own version of the code that only I can understand! It is simple and quick (at least, it seems so at first) to hardcode some simple modifications for one specific purpose and add them within some switch statement (hoping it will not interfere with anything else...) Possible solutions Extendible Flexible Manageable Translatable How about having a fully modular scriptable HeadTail with Python syntax written in a compiled language prepared for HPC? 27/68

27 Also followed by other groups Victor Maier (CERN) 28/68

28 Also followed by other groups Jean-Luc Vay (Berkeley) 29/68

29 Model 30/68

30 The HeadTail model class Ensemble { std::vector } Time evolution of a particle ensemble is generated via a Poisson bracket with the Hamiltonian H_drift H_drift H_kick H_kick H_kick 31/68

31 The HeadTail model class Ensemble { std::vector } Time evolution of a particle ensemble is generated via a Poisson bracket with the Hamiltonian Several Hamiltonian are formally easily concatenated H_drift H_drift H_kick H_kick H_kick 32/68

32 The HeadTail model class Ensemble { std::vector } Time evolution of a particle ensemble is generated via a Poisson bracket with the Hamiltonian Several Hamiltonian are formally easily concatenated H_drift H_drift H_kick H_kick H_kick Symmetrized split operator method immediately yields a second order symplectic tracking algorithm (Leapfrog) 33/68

33 The HeadTail model transverse Transverse plane H_ltm: linear transfer map H_kick: Beam-beam Damper Electron cloud H_ltm Multipolar wakefields H_ltm H_kick H_kick H_kick Space-charge... 34/68

34 H_drift or linear focusing channel Chromaticity, amplitude detuning, over one full turn 36/68

35 One-turn-map Model allows simple implementation e.g. of lumped impedances (1): J. Bengtsson, SLS Note 9/97, Paul Scherrer Institut (PSI), Villigen, Schweiz 37/68

36 The HeadTail model longitudinal Longitudinal plane: (*) 2nd order symplectic via split operators Leap-frog H_ltm H_ltm H_kick H_kick (**) 4th order symplectic via split operators (Ron Ruth, SLAC) H_kick 38/68

37 HeadTail split beam dipolar moment 40/68

38 HeadTail split beam dipolar moment external sources self-consistent solution 41/68

39 HeadTail split HeadTail HeadTail self-consistency self-consistency external sources self-consistent solution 42/68

40 Design 43/68

41 cobra-headtail design Classes Betatron Bunch Feedback Cloud PoissonFFT Monitor Wakefields RFCavity Core: Core: cobra-headtail cobra-headtail C++ language C++core corehttp:// language&&c++ C++Standard StandardLibrary Library 45/68

42 cobra-headtail design Python Python libbetatron libbunch libfeedback libcloud libpoisson libmonitor libwakefields librfcavity Boost.Python Classes Betatron Bunch Feedback Cloud PoissonFFT Monitor Wakefields RFCavity Core: Core: cobra-headtail cobra-headtail C++ language C++core corehttp:// language&&c++ C++Standard StandardLibrary Library 46/68

43 cobra-headtail design 3rd party libraries: libbetatron libbunch Python Python libfeedback libcloud libpoisson libmonitor libwakefields librfcavity Boost.Python Classes Betatron Bunch Beam GSL - GNU Monitor Library RFCavity Scientific Feedback Cloud PoissonFFT Wakefields Core: Core: cobra-headtail cobra-headtail C++ language C++core corehttp:// language&&c++ C++Standard StandardLibrary Library 47/68

44 Documentation We should try to write the Documentation along with the code - Class hierarchy 48/68

45 Documentation We should try to write the Documentation along with the code - Class hierarchy - Class members overview 49/68

46 Documentation We should try to write the Documentation along with the code - Class hierarchy - Class members overview - Class member documentation 50/68

47 cobra-headtail design Extendible: Write a new class respecting the interface conventions and export via boost.python or write it all directly as a Python module which naturally merges into cobra-headtail Flexible: Write your own personal main function using all the modules provided by cobra-headtail and write it in Python! Manageable: The code is fully modular, dependencies are minimized. Each module author can be a module keeper of his own part of the code without breaking the global structure of the program or other independent modules Translatable: Python modules can be interfaced from a vast amount of languages Fortran, C/C++, Matlab 51/68

48 Benchmarks 52/68

49 Benchmarks - tracking Linear bucket 53/68

50 Benchmarks - tracking Linear bucket chromaticity 54/68

51 Benchmarks - tracking Linear bucket chromaticity amplitude detuning 55/68

52 Benchmarks - tracking Linear bucket chromaticity amplitude detuning after 350 turns cobra-headtail HeadTail Initial 56/68

53 Benchmarks - tracking Nonlinear bucket 57/68

54 Benchmarks - tracking Nonlinear bucket chromaticity 58/68

55 Benchmarks - tracking Nonlinear bucket chromaticity amplitude detuning 59/68

56 Benchmarks - tracking Nonlinear bucket chromaticity amplitude detuning after 350 turns cobra-headtail HeadTail Initial 60/68

57 Poisson solver New FFT-type 2D integrated Green's function Poisson solver similar to Ji Qiang's1 BeamBeam3D or Impact Base class functions highly generic Prepared for simple parallelisation 1 J. Qiang et al., A parallel particle-in-cell model for beam beam interaction in high energy ring colliders, article/pii/s /68

58 Poisson solver New FFT-type 2D integrated Green's function Poisson solver similar to Ji Qiang's1 BeamBeam or Impact Base class functions highly generic Prepared for simple parallelisation 1 Nice application and benchmark by J. Qiang et al., A parallel Maxim Schubiger & Tatiana Pieloni: particle-in-cell model for beam beam beam-beam kicks during Luminosity interaction in high energy ring colliders, article/pii/s scan 62/68

59 Demo 63/68

60 cobra-headtail workflow Import libraries we want to use Create objects we want to use for our simulation Select the collective kick elements that we would like to treat and position them along the ring Build some maps Connect all kick elements with linear transfer maps (create a betatron object) Track for i in xrange(nturns): for m in map: m.track(bunch) Postprocess 64/68

61 cobra-headtail demo Let's see how we can use this code... we will go through the following steps: Fetch using git Build using CMake Initialize a bunch Build a lattice Transverse tracking Longitudinal tracking Implement an ideal damper Introduce some electron cloud 65/68

62 cobra-headtail demo Required packages to build C++ compiler C++ libraries and development package boost libraries and development package FFTW3 libraries and development package GSL libraries and development package HDF5 libraries and development package cmake Up-to-date versions of Python, NumPy, Scipy, Matplotlib etc. git clone cobra-demo mkdir cobra-demo-build; cd cobra-demo-build cmake../cobra-demo/src make Makefile Libraries 66/68

63 cobra-headtail demo Required packages to build C++ compiler C++ libraries and development package boost libraries and development package FFTW3 libraries and development package GSL libraries and development package HDF5 libraries and development package cmake Up-to-date versions of Python, NumPy, Scipy, Matplotlib etc. git clone cobra-demo mkdir cobra-demo-build; cd cobra-demo-build cmake../cobra-demo/src Make Makefile Libraries 67/68

64 Conclusions Developed a modular and scriptable, Python interfaced version of HeadTail written in C++ and interfaced via Boost.Python In principle, any effect can now be added as module with relative ease Pre-beta version is ready for download, build and test on the CERN git server Contributors now needed as we are missing: Impedance model MAD-X interface Perhaps some form of beam-beam (Poisson solvers are there) Space charge (Poisson solvers are there) Should we open a HeadTail-developers-and-users (HEDEUS) group? Who would want to participate? 68/68

Python ORBIT in a Nutshell

Python ORBIT in a Nutshell Python ORBIT in a Nutshell Jeff Holmes Oak Ridge National Laboratory Spallation Neutron Source Space Charge MiniWorkshp CERN May 20, 2014 Managed by UT-Battelle Python ORBIT (py-orbit) py-orbit is a collection

More information

Accelerator Modeling. David Sagan Cornell University. Jlab ERL Workshop, March 19-23, 2005 David Sagan -1-

Accelerator Modeling. David Sagan Cornell University. Jlab ERL Workshop, March 19-23, 2005 David Sagan -1- Accelerator Modeling David Sagan Cornell University Jlab ERL Workshop, March 19-23, 2005 David Sagan -1- Cornell s s CESR Storage Ring E+ / E- Collider. In operation since 1979. Used for both HEP and as

More information

USPAS Simulation of Beam and Plasma Systems

USPAS Simulation of Beam and Plasma Systems USPAS Simulation of Beam and Plasma Systems Steven M. Lund, Jean-Luc Vay, Remi Lehe, Daniel Winklehner and David L. Bruhwiler Lecture: Software Testing Instructor: David L. Bruhwiler Contributors: R. Nagler

More information

Betatron Core Slow Extraction at CNAO

Betatron Core Slow Extraction at CNAO Betatron Core Slow Extraction at CNAO Dr. Luciano Falbo CNAO Machine CNAO is the only Italian facility for cancer treatment with protons (60-250 MeV) and carbon ions (120-400 MeV/u). The first patient

More information

Introduction to the Julia language. Marc Fuentes - SED Bordeaux

Introduction to the Julia language. Marc Fuentes - SED Bordeaux Introduction to the Julia language Marc Fuentes - SED Bordeaux Outline 1 motivations Outline 1 motivations 2 Julia as a numerical language Outline 1 motivations 2 Julia as a numerical language 3 types

More information

01: Introduction to Beam Simulations

01: Introduction to Beam Simulations 01: Introduction to Beam Simulations WONG, Chun Yan Jonathan; HAO, Yue; LUND, Steven; RICHARD, Christopher; USPAS Accelerator Physics June 2018 (Version 20180606) This material is based upon work supported

More information

Precision Spin Tracking for Electric Dipole Moment Searches

Precision Spin Tracking for Electric Dipole Moment Searches Precision Spin Tracking for Electric Dipole Moment Searches Outline: Spin Evolution in Storage Rings Technique for EDM Measurement and Systematic Errors Integration Methods, Current Status of Our Program

More information

Lattice calibration with turn-by-turn BPM data. X. Huang 3/17/2010 IUCF Workshop -- X. Huang

Lattice calibration with turn-by-turn BPM data. X. Huang 3/17/2010 IUCF Workshop -- X. Huang Lattice calibration with turn-by-turn BPM data X. Huang 3/17/2010 3/17/2010 IUCF Workshop -- X. Huang 1 Lattice calibration methods Outline Orbit response matrix LOCO Turn-by-turn BPM data MIA, ICA, etc.

More information

ONLINE SIMULATION FRAMEWORK THROUGH HTTP SERVICES

ONLINE SIMULATION FRAMEWORK THROUGH HTTP SERVICES doi:10.18429/jacow-icalepcs2017- ONLINE SIMULATION FRAMEWORK THROUGH HTTP SERVICES Abstract K.A. Brown, M. Harvey, Y. Jing, P. Kankiya, S. Seletskiy, Collider-Accelerator Department, BNL, Upton, NY, USA

More information

Tutorial: GNU Radio Companion

Tutorial: GNU Radio Companion Tutorials» Guided Tutorials» Previous: Introduction Next: Programming GNU Radio in Python Tutorial: GNU Radio Companion Objectives Create flowgraphs using the standard block libraries Learn how to debug

More information

AMath 483/583 Lecture 2. Notes: Notes: Homework #1. Class Virtual Machine. Notes: Outline:

AMath 483/583 Lecture 2. Notes: Notes: Homework #1. Class Virtual Machine. Notes: Outline: AMath 483/583 Lecture 2 Outline: Binary storage, floating point numbers Version control main ideas Client-server version control, e.g., CVS, Subversion Distributed version control, e.g., git, Mercurial

More information

AMath 483/583 Lecture 2

AMath 483/583 Lecture 2 AMath 483/583 Lecture 2 Outline: Binary storage, floating point numbers Version control main ideas Client-server version control, e.g., CVS, Subversion Distributed version control, e.g., git, Mercurial

More information

INSPIRE and SPIRES Log File Analysis

INSPIRE and SPIRES Log File Analysis INSPIRE and SPIRES Log File Analysis Cole Adams Science Undergraduate Laboratory Internship Program Wheaton College SLAC National Accelerator Laboratory August 5, 2011 Prepared in partial fulfillment of

More information

Control Structures. Code can be purely arithmetic assignments. At some point we will need some kind of control or decision making process to occur

Control Structures. Code can be purely arithmetic assignments. At some point we will need some kind of control or decision making process to occur Control Structures Code can be purely arithmetic assignments At some point we will need some kind of control or decision making process to occur C uses the if keyword as part of it s control structure

More information

Cloud-based simulations: Collaborative accelerator design in the browser

Cloud-based simulations: Collaborative accelerator design in the browser Cloud-based simulations: Collaborative accelerator design in the browser G. Andonian, D.L. Bruhwiler, C. Hall, P. Moeller, R. Nagler Workshop on Methods in Collective and Nonlinear in Bright Charged Particle

More information

Course May 18, Advanced Computational Physics. Course Hartmut Ruhl, LMU, Munich. People involved. SP in Python: 3 basic points

Course May 18, Advanced Computational Physics. Course Hartmut Ruhl, LMU, Munich. People involved. SP in Python: 3 basic points May 18, 2017 3 I/O 3 I/O 3 I/O 3 ASC, room A 238, phone 089-21804210, email hartmut.ruhl@lmu.de Patrick Böhl, ASC, room A205, phone 089-21804640, email patrick.boehl@physik.uni-muenchen.de. I/O Scientific

More information

CME 193: Introduction to Scientific Python Lecture 1: Introduction

CME 193: Introduction to Scientific Python Lecture 1: Introduction CME 193: Introduction to Scientific Python Lecture 1: Introduction Nolan Skochdopole stanford.edu/class/cme193 1: Introduction 1-1 Contents Administration Introduction Basics Variables Control statements

More information

A Python extension for the massively parallel framework walberla

A Python extension for the massively parallel framework walberla A Python extension for the massively parallel framework walberla PyHPC at SC 14, November 17 th 2014 Martin Bauer, Florian Schornbaum, Christian Godenschwager, Matthias Markl, Daniela Anderl, Harald Köstler

More information

The Industry Standard in 3D Ion and Electron Optics Simulations. Scientific Instrument Services, Inc.

The Industry Standard in 3D Ion and Electron Optics Simulations.  Scientific Instrument Services, Inc. SIMION Version 8.1 The Industry Standard in 3D Ion and Electron Optics Simulations www.simion.com TM Scientific Instument Services, Inc Scientific Instrument Services, Inc. 1027 Old York Rd, Ringoes, NJ

More information

Task-based distributed processing for radio-interferometric imaging with CASA

Task-based distributed processing for radio-interferometric imaging with CASA H2020-Astronomy ESFRI and Research Infrastructure Cluster (Grant Agreement number: 653477). Task-based distributed processing for radio-interferometric imaging with CASA BOJAN NIKOLIC 2 nd ASTERICS-OBELICS

More information

Welcome to Bootcamp2015 s documentation!

Welcome to Bootcamp2015 s documentation! Welcome to Bootcamp2015 s documentation! This website (or pdf) will be home to some resources that will be useful for boot campers and instructors. Lecture notes and assignments for the econ course associated

More information

FROM SCRIPT TO PACKAGES. good practices for hassle-free code reuse

FROM SCRIPT TO PACKAGES. good practices for hassle-free code reuse FROM SCRIPT TO PACKAGES good practices for hassle-free code reuse WHAT S THIS TUTORIAL IS ABOUT How to make your code usable by someone else WHO AM I? Contributor to numpy/scipy since 2007 Windows, Mac

More information

Volume 3 Number 2 PUBLISHING, WORKGROUP & ENTERPRISE TECHNOLOGY FOR QUARK USERS

Volume 3 Number 2 PUBLISHING, WORKGROUP & ENTERPRISE TECHNOLOGY FOR QUARK USERS Volume 3 Number 2 PUBLISHING, WORKGROUP & ENTERPRISE TECHNOLOGY FOR QUARK USERS Getting to Know QuarkXPress AppleScript Terminology BY BENJAMIN S. WALDIE For both beginning and experienced scripters, implementing

More information

COSC 490 Computational Topology

COSC 490 Computational Topology COSC 490 Computational Topology Dr. Joe Anderson Fall 2018 Salisbury University Course Structure Weeks 1-2: Python and Basic Data Processing Python commonly used in industry & academia Weeks 3-6: Group

More information

CI-Beam-105. Lattice Design and Computational Dynamics II. Dr. Öznur METE APSIMON

CI-Beam-105. Lattice Design and Computational Dynamics II. Dr. Öznur METE APSIMON CI-Beam-105 Lattice Design and Computational Dynamics II Dr. Öznur METE APSIMON The University of Manchester The Cockcroft Institute of Accelerator Science and Technology Contact oznur.mete@cockcroft.ac.uk

More information

VAPOR Product Roadmap. Visualization and Analysis Software Team October 2017

VAPOR Product Roadmap. Visualization and Analysis Software Team October 2017 VAPOR Product Roadmap Visualization and Analysis Software Team October 2017 VAPOR Introduction In 2015 the VAPOR team began a major refactoring of the VAPOR codebase aimed at addressing a myriad of limitations

More information

A recipe for fast(er) processing of netcdf files with Python and custom C modules

A recipe for fast(er) processing of netcdf files with Python and custom C modules A recipe for fast(er) processing of netcdf files with Python and custom C modules Ramneek Maan Singh a, Geoff Podger a, Jonathan Yu a a CSIRO Land and Water Flagship, GPO Box 1666, Canberra ACT 2601 Email:

More information

CI Courses / Winter 2016

CI Courses / Winter 2016 CI Courses / Winter 2016 MADX I Methodical Accelerator Design Introduction Dr. Öznur Mete, Dr Robert Apsimon University of Lancaster The Cockcro@ InsBtute of Accelerator Science and Technology Contact:

More information

RECENT PROGRESS AND PLANS FOR THE CODE elegant

RECENT PROGRESS AND PLANS FOR THE CODE elegant WE3IOPK02 RECENT PROGRESS AND PLANS FOR THE CODE elegant M. Borland, V. Sajaev, H. Shang, R. Soliday, Y. Wang, A. Xiao, ANL, Argonne, IL 60439, USA W. Guo, BNL, Upton, NY, 11973, USA Abstract elegant is

More information

Belle II - Git migration

Belle II - Git migration Belle II - Git migration Why git? Stash GIT service managed by DESY Powerful branching and merging capabilities Resolution of (JIRA) issues directly be map to branches and commits Feature freeze in pre-release

More information

KSTAR tokamak. /

KSTAR tokamak. / KSTAR tokamak / spinhalf@nfri.re.kr !!! Data parallelism CUDA programming python! pycuda GPU Development tools Python 2.6+ Scientific libraries as python package for interactive computing (Numpy, Scipy..)

More information

The Python interpreter

The Python interpreter The Python interpreter Daniel Winklehner, Remi Lehe US Particle Accelerator School (USPAS) Summer Session Self-Consistent Simulations of Beam and Plasma Systems S. M. Lund, J.-L. Vay, D. Bruhwiler, R.

More information

AMath 483/583 Lecture 7. Notes: Notes: Changes in uwhpsc repository. AMath 483/583 Lecture 7. Notes:

AMath 483/583 Lecture 7. Notes: Notes: Changes in uwhpsc repository. AMath 483/583 Lecture 7. Notes: AMath 483/583 Lecture 7 This lecture: Python debugging demo Compiled langauges Introduction to Fortran 90 syntax Declaring variables, loops, booleans Reading: class notes: Python debugging class notes:

More information

AutoWIG Documentation

AutoWIG Documentation AutoWIG Documentation Release 0.1 P. Fernique, C. Pradal Oct 30, 2018 Contents 1 Citation 3 2 Installation 5 2.1 Installation from binaries......................................... 5 2.2 Installation

More information

The Accelerator Toolbox (AT) is a heavily matured collection of tools and scripts

The Accelerator Toolbox (AT) is a heavily matured collection of tools and scripts 1. Abstract The Accelerator Toolbox (AT) is a heavily matured collection of tools and scripts specifically oriented toward solving problems dealing with computational accelerator physics. It is integrated

More information

AMath 483/583 Lecture 7

AMath 483/583 Lecture 7 AMath 483/583 Lecture 7 This lecture: Python debugging demo Compiled langauges Introduction to Fortran 90 syntax Declaring variables, loops, booleans Reading: class notes: Python debugging class notes:

More information

USPAS Simulation of Beam and Plasma Systems Steven M. Lund, Jean-Luc Vay, Remi Lehe, Daniel Winklehner and David L. Bruhwiler Lecture: Software Version Control Instructor: David L. Bruhwiler Contributors:

More information

New coding practices for LSDALTON

New coding practices for LSDALTON New coding practices for LSDALTON Simen Reine Centre for Theoretical and Computational Chemistry (CTCC), Department of Chemistry, University of Oslo, Norway November 20th, 2015 Simen Reine (CTCC, University

More information

Week - 01 Lecture - 04 Downloading and installing Python

Week - 01 Lecture - 04 Downloading and installing Python Programming, Data Structures and Algorithms in Python Prof. Madhavan Mukund Department of Computer Science and Engineering Indian Institute of Technology, Madras Week - 01 Lecture - 04 Downloading and

More information

Compile Error In Hidden Module Solver Code

Compile Error In Hidden Module Solver Code Compile Error In Hidden Module Solver Code Hi everybody I have a problem with the solver function in Excel on my mac which I "Error in loading DLL" and "Compile error in hidden module: ThisWorkbook". Compile

More information

Introduction to Python Part 2

Introduction to Python Part 2 Introduction to Python Part 2 v0.2 Brian Gregor Research Computing Services Information Services & Technology Tutorial Outline Part 2 Functions Tuples and dictionaries Modules numpy and matplotlib modules

More information

CS1 Lecture 2 Jan. 16, 2019

CS1 Lecture 2 Jan. 16, 2019 CS1 Lecture 2 Jan. 16, 2019 Contacting me/tas by email You may send questions/comments to me/tas by email. For discussion section issues, sent to TA and me For homework or other issues send to me (your

More information

Michael Böge, Jan Chrin

Michael Böge, Jan Chrin PAUL SCHERRER INSTITUT SLS-TME-TA-1999-0015 September, 1999 A CORBA Based Client- Model for Beam Dynamics Applications at the SLS Michael Böge, Jan Chrin Paul Scherrer Institut CH-5232 Villigen PSI Switzerland

More information

Zlib: a Numerical Library for Optimal Design of Truncated Power Series Algebra and Map Parameterization Routines

Zlib: a Numerical Library for Optimal Design of Truncated Power Series Algebra and Map Parameterization Routines SLAC-PUB-7363 November 1996 Zlib: a Numerical Library for Optimal Design of Truncated Power Series Algebra and Map Parameterization Routines Yiton T. Yan Stanford Linear Accelerator Center, Stanford University,

More information

SNS Application Programming Infrastructure and Physics Applications (Java based!)

SNS Application Programming Infrastructure and Physics Applications (Java based!) Application Programming Infrastructure and Physics Applications (Java based!) Paul Chu Oct. 7, 2005 1 Contributors Application Programming Team: P. Chu, J. Galambos, T. Pelaia, A. Shishlo Active application

More information

musrsim and musrsimana tools for

musrsim and musrsimana tools for Aare musrsim and musrsimana tools for simulating the μsr instruments psi forum Kamil Sedlak Auditorium 25 June 2012, PSI Before Geant4/musrSim istallation Install ROOT package from root.cern.ch, and set

More information

PTC Integration into MAD-X

PTC Integration into MAD-X PTC Integration into MAD-X What is PTC? (Etienne s words) Some Facts about PTC What are the advantages for MAD-X? Magnet Treatment in PTC How will we use PTC in MAD-X? New MAD-X Module with Attributes

More information

Backpacking with Code: Software Portability for DHTC Wednesday morning, 9:00 am Christina Koch Research Computing Facilitator

Backpacking with Code: Software Portability for DHTC Wednesday morning, 9:00 am Christina Koch Research Computing Facilitator Backpacking with Code: Software Portability for DHTC Wednesday morning, 9:00 am Christina Koch (ckoch5@wisc.edu) Research Computing Facilitator University of Wisconsin - Madison Understand the basics of...

More information

Parallel and Distributed Computing with MATLAB Gerardo Hernández Manager, Application Engineer

Parallel and Distributed Computing with MATLAB Gerardo Hernández Manager, Application Engineer Parallel and Distributed Computing with MATLAB Gerardo Hernández Manager, Application Engineer 2018 The MathWorks, Inc. 1 Practical Application of Parallel Computing Why parallel computing? Need faster

More information

Measurement of the beam yz crabbing tilt due to wakefields using streak camera at CESR

Measurement of the beam yz crabbing tilt due to wakefields using streak camera at CESR Journal of Physics: Conference Series PAPER OPEN ACCESS Measurement of the beam yz crabbing tilt due to wakefields using streak camera at CESR To cite this article: S T Wang and D L Rubin 018 J. Phys.:

More information

PYTABLES & Family. Analyzing and Sharing HDF5 Data with Python. Francesc Altet. HDF Workshop November 30, December 2, Cárabos Coop. V.

PYTABLES & Family. Analyzing and Sharing HDF5 Data with Python. Francesc Altet. HDF Workshop November 30, December 2, Cárabos Coop. V. & Family Analyzing and Sharing HDF5 Data with Python Cárabos Coop. V. HDF Workshop November 30, 2005 - December 2, 2005. & Family Who are we? An Introduction to the Python Language Cárabos is the company

More information

Scientific Computing with Python and CUDA

Scientific Computing with Python and CUDA Scientific Computing with Python and CUDA Stefan Reiterer High Performance Computing Seminar, January 17 2011 Stefan Reiterer () Scientific Computing with Python and CUDA HPC Seminar 1 / 55 Inhalt 1 A

More information

Beam Loss Patterns at the SPS during the LHC collimator test

Beam Loss Patterns at the SPS during the LHC collimator test Accelerator Performance Committee meeting Geneva, 16 February 26 Beam Loss Patterns at the SPS during the LHC collimator test Stefano Redaelli, AB - OP in collaboration with G. Arduini, R. Assmann and

More information

Introduction to Python Part 1. Brian Gregor Research Computing Services Information Services & Technology

Introduction to Python Part 1. Brian Gregor Research Computing Services Information Services & Technology Introduction to Python Part 1 Brian Gregor Research Computing Services Information Services & Technology RCS Team and Expertise Our Team Scientific Programmers Systems Administrators Graphics/Visualization

More information

Introduction to Scientific Python, CME 193 Jan. 9, web.stanford.edu/~ermartin/teaching/cme193-winter15

Introduction to Scientific Python, CME 193 Jan. 9, web.stanford.edu/~ermartin/teaching/cme193-winter15 1 LECTURE 1: INTRO Introduction to Scientific Python, CME 193 Jan. 9, 2014 web.stanford.edu/~ermartin/teaching/cme193-winter15 Eileen Martin Some slides are from Sven Schmit s Fall 14 slides 2 Course Details

More information

PatternFinder is a tool that finds non-overlapping or overlapping patterns in any input sequence.

PatternFinder is a tool that finds non-overlapping or overlapping patterns in any input sequence. PatternFinder is a tool that finds non-overlapping or overlapping patterns in any input sequence. Pattern Finder Input Parameters: USAGE: PatternDetective.exe [ -help /? -f [filename] -min -max [minimum

More information

Get It Interpreter Scripts Arrays. Basic Python. K. Cooper 1. 1 Department of Mathematics. Washington State University. Basics

Get It Interpreter Scripts Arrays. Basic Python. K. Cooper 1. 1 Department of Mathematics. Washington State University. Basics Basic Python K. 1 1 Department of Mathematics 2018 Python Guido van Rossum 1994 Original Python was developed to version 2.7 2010 2.7 continues to receive maintenance New Python 3.x 2008 The 3.x version

More information

CDO-1 Certificate Program: Foundations for Chief Data Officers. Data Wrangling Lab. David /WEI DAI. Sept 26-29, 2016 (c)

CDO-1 Certificate Program: Foundations for Chief Data Officers. Data Wrangling Lab. David /WEI DAI. Sept 26-29, 2016 (c) CDO-1 Certificate Program: Foundations for Chief Data Officers Data Wrangling Lab David /WEI DAI Sept 26-29, 2016 (c) 2016 icdo@ualr 1 Agenda Basic Python Program MongoDB Lab Clean Data Lab Sept 26-29,

More information

Scientific computing platforms at PGI / JCNS

Scientific computing platforms at PGI / JCNS Member of the Helmholtz Association Scientific computing platforms at PGI / JCNS PGI-1 / IAS-1 Scientific Visualization Workshop Josef Heinen Outline Introduction Python distributions The SciPy stack Julia

More information

Construction: version control and system building

Construction: version control and system building Construction: version control and system building Paul Jackson School of Informatics University of Edinburgh The problem of systems changing Systems are constantly changing through development and use

More information

End-to-end optimization potentials in HPC applications for NWP and Climate Research

End-to-end optimization potentials in HPC applications for NWP and Climate Research End-to-end optimization potentials in HPC applications for NWP and Climate Research Luis Kornblueh and Many Colleagues and DKRZ MAX-PLANCK-GESELLSCHAFT ... or a guided tour through the jungle... MAX-PLANCK-GESELLSCHAFT

More information

VISUAL GUIDE to. RX Scripting. for Roulette Xtreme - System Designer 2.0. L J Howell UX Software Ver. 1.0

VISUAL GUIDE to. RX Scripting. for Roulette Xtreme - System Designer 2.0. L J Howell UX Software Ver. 1.0 VISUAL GUIDE to RX Scripting for Roulette Xtreme - System Designer 2.0 L J Howell UX Software 2009 Ver. 1.0 TABLE OF CONTENTS INTRODUCTION...ii What is this book about?... iii How to use this book... iii

More information

Compiling Techniques

Compiling Techniques Lecture 1: Introduction 20 September 2016 Table of contents 1 2 3 Essential Facts Lecturer: (christophe.dubach@ed.ac.uk) Office hours: Thursdays 11am-12pm Textbook (not strictly required): Keith Cooper

More information

A numerical microscope for plasma physics

A numerical microscope for plasma physics A numerical microscope for plasma physics A new simulation capability developed for heavy-ion inertial fusion energy research will accelerate plasma physics and particle beam modeling, with application

More information

ATLAS NOTE. December 4, ATLAS offline reconstruction timing improvements for run-2. The ATLAS Collaboration. Abstract

ATLAS NOTE. December 4, ATLAS offline reconstruction timing improvements for run-2. The ATLAS Collaboration. Abstract ATLAS NOTE December 4, 2014 ATLAS offline reconstruction timing improvements for run-2 The ATLAS Collaboration Abstract ATL-SOFT-PUB-2014-004 04/12/2014 From 2013 to 2014 the LHC underwent an upgrade to

More information

Introduction to Python for Scientific Computing

Introduction to Python for Scientific Computing 1 Introduction to Python for Scientific Computing http://tinyurl.com/cq-intro-python-20151022 By: Bart Oldeman, Calcul Québec McGill HPC Bart.Oldeman@calculquebec.ca, Bart.Oldeman@mcgill.ca Partners and

More information

SQL Server 2017: Data Science with Python or R?

SQL Server 2017: Data Science with Python or R? SQL Server 2017: Data Science with Python or R? Dejan Sarka Sponsor Introduction Dejan Sarka (dsarka@solidq.com, dsarka@siol.net, @DejanSarka) 30 years of experience SQL Server MVP, MCT, 16 books 20+ courses,

More information

Plotting package evaluation

Plotting package evaluation Plotting package evaluation Introduction We would like to evaluate several graphics packages for possible use in the GLAST Standard Analysis Environment. It is hoped that this testing will lead to a recommendation

More information

Version Control Systems (VCS)

Version Control Systems (VCS) Version Control Systems (VCS) Xianyi Zeng xzeng@utep.edu Department of Mathematical Sciences The University of Texas at El Paso. September 13, 2016. Version Control Systems Let s get the textbook! Online

More information

Install your scientific software stack easily with Spack

Install your scientific software stack easily with Spack Install your scientific software stack easily with Spack Les mardis du développement technologique Florent Pruvost (SED) Outline 1. Context 2. Features overview 3. In practice 4. Some feedback Florent

More information

Development and Application of Online Optimization Algorithms

Development and Application of Online Optimization Algorithms Development and Application of Online Optimization Algorithms Originally presented at NAPAC 2016 on 10/14/2106 Modified for LER2016 Workshop Xiaobiao Huang SLAC National Accelerator Laboratory October

More information

KNIME Python Integration Installation Guide. KNIME AG, Zurich, Switzerland Version 3.7 (last updated on )

KNIME Python Integration Installation Guide. KNIME AG, Zurich, Switzerland Version 3.7 (last updated on ) KNIME Python Integration Installation Guide KNIME AG, Zurich, Switzerland Version 3.7 (last updated on 2019-02-05) Table of Contents Introduction.....................................................................

More information

Introduction to Supercomputing

Introduction to Supercomputing Introduction to Supercomputing TMA4280 Introduction to development tools 0.1 Development tools During this course, only the make tool, compilers, and the GIT tool will be used for the sake of simplicity:

More information

Building and Installing Software

Building and Installing Software Building and Installing Software On UD HPC Community Clusters William Totten Network & Systems Services Conventions when Installing Software Installation base directory /opt/shared /home/work/ lab/sw/name/version

More information

Programming and Data Structure

Programming and Data Structure Programming and Data Structure Dr. P.P.Chakraborty Department of Computer Science and Engineering Indian Institute of Technology, Kharagpur Lecture # 09 Problem Decomposition by Recursion - II We will

More information

PBO Lab 3.0 (Particle Beam Optics Laboratory 3.0) User Manual Supplement: PSI-TURTLE Module

PBO Lab 3.0 (Particle Beam Optics Laboratory 3.0) User Manual Supplement: PSI-TURTLE Module PBO Lab 3.0 (Particle Beam Optics Laboratory 3.0) User Manual Supplement: PSI-TURTLE Module A PBO Lab Module Created with the OASIS Module Builder Technology Distributed by AccelSoft Inc. P. O. Box 2813

More information

Spyder Documentation. Release 3. Pierre Raybaut

Spyder Documentation. Release 3. Pierre Raybaut Spyder Documentation Release 3 Pierre Raybaut Aug 31, 2017 Contents 1 Overview 3 2 Installation 5 2.1 Installing on Windows Vista/7/8/10................................... 5 2.2 Installing on MacOS X..........................................

More information

Image Sharpening. Practical Introduction to HPC Exercise. Instructions for Cirrus Tier-2 System

Image Sharpening. Practical Introduction to HPC Exercise. Instructions for Cirrus Tier-2 System Image Sharpening Practical Introduction to HPC Exercise Instructions for Cirrus Tier-2 System 2 1. Aims The aim of this exercise is to get you used to logging into an HPC resource, using the command line

More information

Shared Memory Programming With OpenMP Computer Lab Exercises

Shared Memory Programming With OpenMP Computer Lab Exercises Shared Memory Programming With OpenMP Computer Lab Exercises Advanced Computational Science II John Burkardt Department of Scientific Computing Florida State University http://people.sc.fsu.edu/ jburkardt/presentations/fsu

More information

ATLAS software configuration and build tool optimisation

ATLAS software configuration and build tool optimisation Journal of Physics: Conference Series OPEN ACCESS ATLAS software configuration and build tool optimisation To cite this article: Grigory Rybkin and the Atlas Collaboration 2014 J. Phys.: Conf. Ser. 513

More information

6 mons Tue 01/11/11 Mon 16/04/12. 6 mons Tue 17/04/12 Mon 01/10/12. 5 mons Tue 30/10/12 Mon 18/03/ days Mon 04/06/ days Mon 04/06/12

6 mons Tue 01/11/11 Mon 16/04/12. 6 mons Tue 17/04/12 Mon 01/10/12. 5 mons Tue 30/10/12 Mon 18/03/ days Mon 04/06/ days Mon 04/06/12 ID Name Duration Start Finish Resource Names 1 Optics and Layout for HL-LHC 392 days Tue 01/11/11 Wed 01/05/13BH 2 Layout with IT (150 T/m-140 mm); first injection, pre-squeezed and ATS collision optics

More information

Introduction to Programming

Introduction to Programming Introduction to Programming G. Bakalli March 8, 2017 G. Bakalli Introduction to Programming March 8, 2017 1 / 33 Outline 1 Programming in Finance 2 Types of Languages Interpreters Compilers 3 Programming

More information

Python for Development of OpenMP and CUDA Kernels for Multidimensional Data

Python for Development of OpenMP and CUDA Kernels for Multidimensional Data Python for Development of OpenMP and CUDA Kernels for Multidimensional Data Zane W. Bell 1, Greg G. Davidson 2, Ed D Azevedo 3, Thomas M. Evans 2, Wayne Joubert 4, John K. Munro, Jr. 5, Dilip R. Patlolla

More information

Performance Optimization of a Massively Parallel Phase-Field Method Using the HPC Framework walberla

Performance Optimization of a Massively Parallel Phase-Field Method Using the HPC Framework walberla Performance Optimization of a Massively Parallel Phase-Field Method Using the HPC Framework walberla SIAM PP 2016, April 13 th 2016 Martin Bauer, Florian Schornbaum, Christian Godenschwager, Johannes Hötzer,

More information

Reconstruction of the 3D charge distribution of an electron bunch using a novel variable-polarization transverse deflecting structure (TDS)

Reconstruction of the 3D charge distribution of an electron bunch using a novel variable-polarization transverse deflecting structure (TDS) Journal of Physics: Conference Series PAPER OPEN ACCESS Reconstruction of the 3D charge distribution of an electron bunch using a novel variable-polarization transverse deflecting structure (TDS) Recent

More information

What run-time services could help scientific programming?

What run-time services could help scientific programming? 1 What run-time services could help scientific programming? Stephen Kell stephen.kell@cl.cam.ac.uk Computer Laboratory University of Cambridge Contrariwise... 2 Some difficulties of software performance!

More information

PHCpack, phcpy, and Sphinx

PHCpack, phcpy, and Sphinx PHCpack, phcpy, and Sphinx 1 the software PHCpack a package for Polynomial Homotopy Continuation polyhedral homotopies the Python interface phcpy 2 Documenting Software with Sphinx Sphinx generates documentation

More information

Can We Migrate Our Analysis Routines to Python?

Can We Migrate Our Analysis Routines to Python? Can We Migrate Our Analysis Routines to Python? Introduction Can we migrate our analysis routines to Python? - MATLAB is powerful, but it s expensive. - Capable open-source alternatives exist and are thriving.

More information

Shared Memory Programming With OpenMP Exercise Instructions

Shared Memory Programming With OpenMP Exercise Instructions Shared Memory Programming With OpenMP Exercise Instructions John Burkardt Interdisciplinary Center for Applied Mathematics & Information Technology Department Virginia Tech... Advanced Computational Science

More information

Welcome to Python! If you re the type of person who wants to know

Welcome to Python! If you re the type of person who wants to know In This Chapter The history of Python What people use Python for Chapter 1 Introducing Python Useful concepts for Python programming Welcome to Python! If you re the type of person who wants to know what

More information

Nexus Builder Developing a Graphical User Interface to create NeXus files

Nexus Builder Developing a Graphical User Interface to create NeXus files Nexus Builder Developing a Graphical User Interface to create NeXus files Lilit Grigoryan, Yerevan State University, Armenia September 9, 2014 Abstract This report describes a project which main purpose

More information

Introduc)on to Julia: Why are we doing this to you? (Spring 2017)

Introduc)on to Julia: Why are we doing this to you? (Spring 2017) Introduc)on to Julia: Why are we doing this to you? (Spring 2017) Steven G. Johnson, MIT Applied Math MIT classes 18.06, 18.303, 18.330, 18.08[56], 18.335, 18.337, What language for teaching scien)fic

More information

Introduction to Data Science. Introduction to Data Science with Python. Python Basics: Basic Syntax, Data Structures. Python Concepts (Core)

Introduction to Data Science. Introduction to Data Science with Python. Python Basics: Basic Syntax, Data Structures. Python Concepts (Core) Introduction to Data Science What is Analytics and Data Science? Overview of Data Science and Analytics Why Analytics is is becoming popular now? Application of Analytics in business Analytics Vs Data

More information

Interval Arithmetic Support In The Fortran Compiler

Interval Arithmetic Support In The Fortran Compiler 1 Interval Arithmetic Support In The Fortran Compiler P.Sambath Narayanan Sun Microsystems Computing School January 11, 2005 Chennai 2 This Is Not A Scientific Talk Global Estimate Of Delta Taken From

More information

ERTH2020 Introduction to Geophysics

ERTH2020 Introduction to Geophysics ERTH2020 Practical:: Introduction to Python Page 1 ERTH2020 Introduction to Geophysics 2018 Practical 1: Introduction to scientific programming using Python, and revision of basic mathematics Purposes

More information

manifold Documentation

manifold Documentation manifold Documentation Release 0.0.1 Open Source Robotics Foundation Mar 04, 2017 Contents 1 What is Manifold? 3 2 Installation 5 2.1 Ubuntu Linux............................................... 5 2.2

More information

Data Analytics and Dynamic Languages. Lee E. Edlefsen, Ph.D. VP of Engineering

Data Analytics and Dynamic Languages. Lee E. Edlefsen, Ph.D. VP of Engineering Data Analytics and Dynamic Languages Lee E. Edlefsen, Ph.D. VP of Engineering 1 Overview This is my perspective on the use of dynamic languages (interpreters) for data analytics (statistics) I am a long-time

More information

The Cantor Handbook. Alexander Rieder

The Cantor Handbook. Alexander Rieder Alexander Rieder 2 Contents 1 Introduction 5 2 Using Cantor 6 2.1 Cantor features....................................... 6 2.2 The Cantor backends.................................... 7 2.3 The Cantor Workspace...................................

More information

Construction: version control and system building

Construction: version control and system building Construction: version control and system building Paul Jackson School of Informatics University of Edinburgh The problem of systems changing Systems are constantly changing through development and use

More information

NEW CERN PROTON SYNCHROTRON BEAM OPTIMIZATION TOOL

NEW CERN PROTON SYNCHROTRON BEAM OPTIMIZATION TOOL 16th Int. Conf. on Accelerator and Large Experimental Control Systems ICALEPCS2017, Barcelona, Spain JACoW Publishing NEW CERN PROTON SYNCHROTRON BEAM OPTIMIZATION TOOL E. Piselli, A. Akroh CERN, Geneva,

More information