Class ForceSolver2D#

Inheritance Relationships#

Base Type#

Derived Type#

Class Documentation#

class ForceSolver2D : public OrbitUtils::CppPyWrapper#

The ForceSolver2D class calculates 2D forces along X and Y axes created by a 2D charge distribution.

Subclassed by ForceSolverFFT2D

Public Functions

ForceSolver2D(int xSize, int ySize)#

Constructor

virtual ~ForceSolver2D()#

Destructor

int getSizeX()#

Returns the grid size in x-direction

Returns the number of points in x direction

int getSizeY()#

Returns the grid size in y-direction

Returns the number of points in y direction

double getMaxX()#

Returns the maximal value of the grid in x-axis

Returns the max x in the grid points

double getMinX()#

Returns the minimal value of the grid in x-axis

Returns the min x in the grid points

double getMaxY()#

Returns the maximal value of the grid in y-axis

Returns the max y in the grid points

double getMinY()#

Returns the minimal value of the grid in y-axis

Returns the min y in the grid points

double getStepX()#

Returns the grid step along x-axis

Returns the mesh step in x direction

double getStepY()#

Returns the grid step along y-axis

Returns the mesh step in y direction

virtual void setGridX(double xMin, double xMax) = 0#

Sets x-grid. This method is virtual, because the setting of limits may involve some subclass specific actions.

virtual void setGridY(double yMin, double yMax) = 0#

Sets y-grid. This method is virtual, because the setting of limits may involve some subclass specific actions.

virtual void findForce(Grid2D *rhoGrid, Grid2D *forceGridX, Grid2D *forceGridY) = 0#

Solves the Force problem for an external charge distribution and puts results into an external force grid

Protected Functions

void checkSizes(Grid2D *rhoGrid)#
virtual void init(int xSize, int ySize) = 0#

Protected Attributes

int xSize_#
int ySize_#
double xMin_#
double xMax_#
double yMin_#
double yMax_#
double dx_#
double dy_#