Class Grid1D#

Inheritance Relationships#

Base Type#

Class Documentation#

class Grid1D : public OrbitUtils::CppPyWrapper#

Public Functions

Grid1D(int zSize)#

Constructor with grid size only

Grid1D(int zSize, double length)#

Constructor with lattice length

Constructor with grid size and grid physical length

Grid1D(int zSize, double zMin, double zMax)#

Constructor with grid size and spatial limits

virtual ~Grid1D()#

Destructor

void setGridZ(double zMin, double zMax)#

Sets z-grid

double *getArr()#

Returns the reference to the 1D array

double getMinZ()#

Returns the min z grid point value

double getMaxZ()#

Returns the max z grid point value

int getSizeZ()#

Returns the number of grid points

double getSum()#

Returns the sum of all grid points

Returns the sum of all grid point values

double getStepZ()#

Returns the grid step size

double getGridZ(int index)#

Returns the grid point for index

int isInside(double z)#

Returns 1 if (z) is inside the grid region, and 0 otherwise

void setZero()#

Sets arr_ at all grid points to zero

void multiply(double coeff)#

Multiply all elements of Grid1D by constant coefficient

Multiply all elements of Grid3D by constant coefficient

void setValue(double value, int iZ)#

Sets value of arr_ at one point on the grid

double getValueOnGrid(int iZ)#

Returns value of arr_ at one point on the grid

double getValue(double z)#

Returns interpolated value of arr_

double getValueSmoothed(double z)#

Returns smoothed interpolated value of arr_

void binBunch(Bunch *bunch)#

Bins the Bunch to the grid incorporating macrosize

Bins the Bunch along the longitudinal coordinate using macro-size for each particle.

void binBunch(Bunch *bunch, int axis_ind)#

Bins the Bunch to the grid along any axis

Bins the Bunch along any coordinate using macro-size for each particle.

void binBunchSmoothed(Bunch *bunch)#

Bins the Bunch to the grid using a smoothing algorithm and incorporating macrosize

Bins the Bunch along the longitudinal coordinate using a smoothing algorithm and macro-size for each particle.

void binBunchSmoothed(Bunch *bunch, int axis_ind)#

Bins the Bunch to the grid along any axis using a smoothing algorithm and incorporating macrosize

Bins the Bunch along any coordinate using a smoothing algorithm and macro-size for each particle.

void binBunchByParticle(Bunch *bunch)#

Bins the Bunch to the grid giving each macroparticle unit weight

Bins the Bunch along the longitudinal coordinate giving each macroparticle an unit weight

void binBunchByParticle(Bunch *bunch, int axis_ind)#

Bins the Bunch along the particular coordinate to the grid giving each macro-particle unit weight

Bins the Bunch along the particular coordinate giving each macroparticle an unit weight

void binBunchSmoothedByParticle(Bunch *bunch)#

Bins the Bunch to the grid using a smoothing algorithm and giving each macroparticle unit weight

Bins the Bunch along the longitudinal coordinate using a smoothing algorithm and giving each macroparticle unit weight

void binBunchSmoothedByParticle(Bunch *bunch, int axis_ind)#

Bins the Bunch along the particular coordinate to the grid using a smoothing algorithm and giving each macroparticle unit weight

Bins the Bunch along the particular coordinate using a smoothing algorithm and giving each macroparticle unit weight

void binBunchMoment(int propindex, Bunch *bunch, double *Moment)#

Bins moment of the Bunch to the grid giving each macroparticle unit weight

Bins property of the Bunch to the grid giving each macroparticle unit weight

void binBunchSmoothedMoment(int propindex, Bunch *bunch, double *Moment)#

Bins moment of the Bunch to the grid using a smoothing algorithm and giving each macroparticle unit weight

void binValue(double value, double z)#

Bins a value to the grid

void binValueSmoothed(double value, double z)#

Bins a value to the grid with smoothing

void binMoment(double value, double z, double *Moment)#

Bins a moment to the grid

void binMomentSmoothed(double value, double z, double *Moment)#

Bins a moment to the grid with smoothing

void calcGradient(double z, double &ez)#

Calculates gradient at a position (z)

void calcGradientSmoothed(double z, double &ez)#

Calculates smoothed gradient at a position (z)

void synchronizeMPI(pyORBIT_MPI_Comm *comm)#

synchronizeMPI

Protected Attributes

double *arr_#
int zSize_#

Grid size

double dz_#

Grid steps

double zMin_#

grid limits

double zMax_#