Class RfFieldMap

java.lang.Object
xal.smf.AcceleratorNode
xal.smf.impl.RfGap
xal.extension.jels.smf.impl.RfFieldMap
All Implemented Interfaces:
Comparable, IFileBasedFieldMap, ElementType, ISplittable, DataListener

public class RfFieldMap extends RfGap implements ISplittable, IFileBasedFieldMap
General RF Field Map element. It can be used with any type of FieldMap objects.

This element has to buckets:

  • RFGap: contains rf parameters.
  • FieldMapBucket: includes the filename of the field map file and information about its type.
Author:
Juan F. Esteban Müller <JuanF.EstebanMuller@esss.se>
  • Field Details

  • Constructor Details

  • Method Details

    • getType

      public String getType()
      Description copied from class: RfGap
      Override to provide type signature
      Overrides:
      getType in class RfGap
    • getFieldMapBucket

      public FieldMapBucket getFieldMapBucket()
    • setFieldMapBucket

      public final void setFieldMapBucket(FieldMapBucket buc)
    • addBucket

      public void addBucket(AttributeBucket buc)
      Override AcceleratorNode implementation to check for a FieldMapBucket
      Overrides:
      addBucket in class RfGap
      Parameters:
      buc -
    • getFieldMapFile

      public String getFieldMapFile()
      Returns:
      FieldMap file
    • setFieldMapFile

      public void setFieldMapFile(String strVal)
      Parameters:
      strVal - FieldMap file
    • getFieldMap

      public FieldMap getFieldMap()
      Returns:
      Field profile
    • setFieldMap

      public void setFieldMap(FieldMap fieldMap)
      Parameters:
      fieldMap -
    • toE0TLFromGapField

      public double toE0TLFromGapField(double field)
      Description copied from class: RfGap
      Convert RF gap field, E0, to E0TL. This is the product of the field * gap length * TTF.
      Overrides:
      toE0TLFromGapField in class RfGap
      Parameters:
      field - the RF field in KV/m
      Returns:
      the E0TL product (kV)
    • update

      public void update(DataAdaptor adaptor)
      Loads the field profile if necessary
      Specified by:
      update in interface DataListener
      Overrides:
      update in class AcceleratorNode
      Parameters:
      adaptor -
    • getLongitudinalPositions

      public double[] getLongitudinalPositions()
      Specified by:
      getLongitudinalPositions in interface ISplittable
      Returns:
      Longitudinal positions at which the element must be split.
    • getSliceLength

      public double getSliceLength()
      Specified by:
      getSliceLength in interface ISplittable
      Returns:
      Length of each slice of the element.
    • setDimensions

      public void setDimensions(int i)
    • setDynamic

      public void setDynamic(boolean b)
    • writeFieldMap

      public void writeFieldMap(String fieldMapPath)
      Description copied from interface: IFileBasedFieldMap
      Write the field map to a file.
      Specified by:
      writeFieldMap in interface IFileBasedFieldMap
      Parameters:
      fieldMapPath - The path to the directory where field map should be saved.