Package gda.px.flux

Class DoseCalculator

All Implemented Interfaces:
INeXusInfoWriteable, ControllerRecord, Device, Scannable, ScannableMotion, Configurable, Findable, gda.observable.IObservable, DoseEstimateProvider

  • Field Details

  • Constructor Details

    • DoseCalculator

      public DoseCalculator()
  • Method Details

    • calculateAngleLimit

      public static double calculateAngleLimit(double radLimit, double dosePerFrame, double degPerFrame)
    • calculateDosePerFrame

      public static double calculateDosePerFrame(double flux, double muAbs, double beamWidthInMicrons, double beamHeightInMicrons, double energyInEv, double exposureTime)
    • calculateDosePerSecond

      public static double calculateDosePerSecond(double flux, double muAbs, double beamWidthInMicrons, double beamHeightInMicrons, double energyInEv)
      Returns the dose (MGy) per second.
    • calculateEstimate

      public static EstimateData calculateEstimate(double dosePerFrame, double degreesPerFrame, double radLimit)
    • calculateFrameLimit

      public static double calculateFrameLimit(double radLimit, double dosePerFrame)
    • calculateLimits

      public static double[][] calculateLimits(double dosePerFrame, double degreesPerFrame, double[] radLimit)
    • muAbsForAverageSample

      public static double muAbsForAverageSample(double energyInEv)
    • predictFlux

      public static double predictFlux(double energy, double transmission, String aperture)
    • predictFlux

      public static double predictFlux(double energy, double transmission, double scale_factor)
    • getAngleLimit

      public double getAngleLimit(double radLimit, double exposure, double degPerFrame)
      Specified by:
      getAngleLimit in interface DoseEstimateProvider
    • getDosePerFrame

      public double getDosePerFrame(double exposure)
      Specified by:
      getDosePerFrame in interface DoseEstimateProvider
    • getEnergy

      public double getEnergy()
    • getFlux

      public double getFlux()
    • getFrameLimit

      public double getFrameLimit(double radLimit, double exposure)
      Specified by:
      getFrameLimit in interface DoseEstimateProvider
    • getMuAbs

      public double getMuAbs()
    • setDoseRate

      public void setDoseRate(double doseRate)
    • setEnergy

      public void setEnergy(double energy)
    • setFlux

      public void setFlux(double flux)
    • setMuAbs

      public void setMuAbs(double muAbs)