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 Type
    Method
    Description
    boolean
    contains(double x, double y, double z)
    Check whether the field boundaries include the point
    void
    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 kiloGauss
     
    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 cm
      y - the y coordinate in cm
      z - the z coordinate in cm
      result - 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 cm
      y - the y sector coordinate in cm
      z - the z sector coordinate in cm
      result - 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 cm
      y - the y coordinate in cm
      z - 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 cm
      y - the y coordinate in cm
      z - the z coordinate in cm
      result - 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 units
      y - the y coordinate in the map units
      z - the z coordinate in the map units
      Returns:
      true if the point is included in the boundary of the field