Class IdealMagQuad

All Implemented Interfaces:
IElectromagnet, IComponent, IElement
Direct Known Subclasses:
IdealMagSkewQuad

public class IdealMagQuad extends ThickElectromagnet
Represents an ideal magnetic quadrupole magnet for a beam transport/accelerator system.
Author:
Christopher K. Allen
  • Field Details

  • Constructor Details

    • IdealMagQuad

      public IdealMagQuad(String strId, int enmOrient, double dblFld, double dblLen)
      Creates a new instance of IdealMagQuad
      Parameters:
      strId - identifier for this IdealMagQuad object
      enmOrient - enumeration specifying the quadrupole orientation (ORIENT_HOR or ORIENT_VER)
      dblFld - field gradient strength (in Tesla/meter)
      dblLen - length of the quadrupole
    • IdealMagQuad

      public IdealMagQuad()
      JavaBean constructor - creates a new uninitialized instance of IdealMagQuad BE CAREFUL
  • Method Details

    • getBRhoScaling

      public double getBRhoScaling()
    • setBRhoScaling

      public void setBRhoScaling(double d)
    • getFringeIntegral1Entr

      public double getFringeIntegral1Entr()
    • getFringeIntegral1Exit

      public double getFringeIntegral1Exit()
    • getFringeIntegral2Entr

      public double getFringeIntegral2Entr()
    • getFringeIntegral2Exit

      public double getFringeIntegral2Exit()
    • setFringeIntegral1Entr

      public void setFringeIntegral1Entr(double dbl)
    • setFringeIntegral1Exit

      public void setFringeIntegral1Exit(double dbl)
    • setFringeIntegral2Entr

      public void setFringeIntegral2Entr(double dbl)
    • setFringeIntegral2Exit

      public void setFringeIntegral2Exit(double dbl)
    • setRadIn

      public void setRadIn(double ri)
    • setRadOut

      public void setRadOut(double ro)
    • getRadIn

      public double getRadIn()
    • getRadOut

      public double getRadOut()
    • setFieldPathFlag

      public void setFieldPathFlag(double ba)
    • setNominalKineEnergy

      public void setNominalKineEnergy(double ba)
    • getFieldPathFlag

      public double getFieldPathFlag()
    • getNominalKineEnergy

      public double getNominalKineEnergy()
    • getK1

      public double getK1()
    • setK1

      public void setK1(double k1)
    • elapsedTime

      public double elapsedTime(IProbe probe, double dblLen)
      Returns the time taken for the probe to drift through part of the element.
      Specified by:
      elapsedTime in interface IElement
      Specified by:
      elapsedTime in class ThickElement
      Parameters:
      probe - propagating probe
      dblLen - length of subsection to propagate through meters
      Returns:
      the elapsed time through sectionUnits: seconds
    • energyGain

      public double energyGain(IProbe probe, double dblLen)
      Return the energy gain imparted to a particular probe. For an ideal quadrupole magnet this value is always zero.
      Specified by:
      energyGain in interface IElement
      Specified by:
      energyGain in class ThickElement
      Parameters:
      probe - dummy argument
      dblLen - dummy argument
      Returns:
      returns a zero value
    • transferMap

      public PhaseMap transferMap(IProbe probe, double length)
      Compute the partial transfer map of an ideal quadrupole for the particular probe. Computes transfer map for a section of quadrupole dblLen meters in length.
      Specified by:
      transferMap in interface IElement
      Specified by:
      transferMap in class ThickElement
      Parameters:
      probe - supplies the charge, rest and kinetic energy parameters
      length - compute transfer matrix for section of this length
      Returns:
      transfer map of ideal quadrupole for particular probe
      See Also:
    • toString

      public String toString()
      Overrides:
      toString in class Element
      Since:
      Jan 27, 2015 by Christopher K. Allen
      See Also:
    • print

      public void print(PrintWriter os)
      Dump current state and content to output stream.
      Overrides:
      print in class Element
      Parameters:
      os - output stream object