Package cnuphys.magfield
Interface IField
- All Known Implementing Classes:
CompositeProbe
,FieldProbe
,RotatedCompositeProbe
,SolenoidProbe
,StandardSolenoidProbe
,TorusProbe
,TransverseSolenoidProbe
,ZeroProbe
public interface IField
The Interface IField.
- Version:
- 1.0
- Author:
- David Heddle, Nicole Schumacher
-
Method Summary
Modifier and TypeMethodDescriptionboolean
contains
(double x, double y, double z) Check whether the field boundaries include the pointvoid
field
(float x, float y, float z, float[] result) Obtain the magnetic field at a given location expressed in Cartesian coordinates.void
field
(int sector, float xs, float ys, float zs, float[] result) Obtain the magnetic field at a given location expressed in Cartesian coordinates for the sector system.float
fieldMagnitude
(float x, float y, float z) Get the field magnitude in kiloGauss at a given location expressed in Cartesian coordinates.float
Get the maximum field magnitude in kiloGaussgetName()
void
gradient
(float x, float y, float z, float[] result) Obtain an approximation for the magnetic field gradient at a given location expressed in Cartesian coordinates.boolean
Check whether this field is the zero field (possibly because the scale factor is set to 0)
-
Method Details
-
getName
String getName() -
field
void field(float x, float y, float z, float[] result) Obtain the magnetic field at a given location expressed in Cartesian coordinates. The field is returned as a Cartesian vector in kiloGauss.- Parameters:
x
- the x coordinate in cmy
- the y coordinate in cmz
- the z coordinate in cmresult
- a float array holding the retrieved field in kiloGauss. The 0,1 and 2 indices correspond to x, y, and z components.
-
field
void field(int sector, float xs, float ys, float zs, float[] result) Obtain the magnetic field at a given location expressed in Cartesian coordinates for the sector system. The other "field" methods are for the lab system. The field is returned as a Cartesian vector in kiloGauss.- Parameters:
sector
- the sector [1..6]x
- the x sector coordinate in cmy
- the y sector coordinate in cmz
- the z sector coordinate in cmresult
- the result is a float array holding the retrieved field in kiloGauss. The 0,1 and 2 indices correspond to x, y, and z components.
-
fieldMagnitude
float fieldMagnitude(float x, float y, float z) Get the field magnitude in kiloGauss at a given location expressed in Cartesian coordinates.- Parameters:
x
- the x coordinate in cmy
- the y coordinate in cmz
- the z coordinate in cm- Returns:
- the magnitude of the field in kiloGauss.
-
gradient
void gradient(float x, float y, float z, float[] result) Obtain an approximation for the magnetic field gradient at a given location expressed in Cartesian coordinates. The field is returned as a Cartesian vector in kiloGauss/cm.- Parameters:
x
- the x coordinate in cmy
- the y coordinate in cmz
- the z coordinate in cmresult
- a float array holding the retrieved field in kiloGauss. The 0,1 and 2 indices correspond to x, y, and z components.
-
getMaxFieldMagnitude
float getMaxFieldMagnitude()Get the maximum field magnitude in kiloGauss- Returns:
- the maximum field magnitude in kiloGauss
-
isZeroField
boolean isZeroField()Check whether this field is the zero field (possibly because the scale factor is set to 0)- Returns:
true
if this field is a zero field
-
contains
boolean contains(double x, double y, double z) Check whether the field boundaries include the point- Parameters:
x
- the x coordinate in the map unitsy
- the y coordinate in the map unitsz
- the z coordinate in the map units- Returns:
true
if the point is included in the boundary of the field
-