LinacBPM#

class orbit.py_linac.lattice.LinacBPM(frequency=805000000.0, name='BPM')[source]#

Bases: orbit.py_linac.lattice.LinacAccNodes.BaseLinacNode

The linac BPM representation. It calculates the average x,y, and phases of all particles in the bunch, and the amplitude signal which is an amplitude of the Fourier harmonics. To calculate this it needs the frequency [Hz] of BPM’s electronics and the normalization factor. At this moment, all functionality is implemented on the Python level, but in the future the operations with the particles’ coordinates should be moved to C++ level.

Methods Summary

analyzeBunch(bunch)

Here we assume that the macrosize is the same for each particle

dumpPhaseHistorgam([file_out_name])

getAmplitude()

getAvgPhase()

getAvgX()

getAvgY()

getFourierAmplitude()

getFourierPhase()

getFrequency()

getNormalizationCoefficient()

getPeakPhase()

getPhaseRMS()

getSynchPhase()

setFrequency(frequency)

setNormalizationCoefficient(norm_coeff)

track(paramsDict)

The LinacBPM class implementation of the AccNode class track(paramsDict) method.

Methods Documentation

analyzeBunch(bunch)[source]#

Here we assume that the macrosize is the same for each particle

dumpPhaseHistorgam(file_out_name=None)[source]#
getAmplitude()[source]#
getAvgPhase()[source]#
getAvgX()[source]#
getAvgY()[source]#
getFourierAmplitude()[source]#
getFourierPhase()[source]#
getFrequency()[source]#
getNormalizationCoefficient()[source]#
getPeakPhase()[source]#
getPhaseRMS()[source]#
getSynchPhase()[source]#
setFrequency(frequency)[source]#
setNormalizationCoefficient(norm_coeff)[source]#
track(paramsDict)[source]#

The LinacBPM class implementation of the AccNode class track(paramsDict) method.