Module simpa.acc

Class BeamRegion

java.lang.Object
simpa.acc.api.create.BeamRegion

public class BeamRegion extends Object
An object representing the beam region in an accelerator by a succesion of profiles extruded around the reference orbit. The resulting surface can be written to an STL file, which can serve as an aperture during the tracking or an input to create a lattice ball cover for the beam region. It is a global description of the beam region in a ring or beam line and serves a different purpose than the BoundarySurface or the VacuumChamber which related to individual elements.
  • Constructor Details

    • BeamRegion

      public BeamRegion(Sequence seq, double distance, Profile defaultProfile, double extention)
      Creates a BeamRegion object. The default profile is extruded along the given path. Regions along the path with profiles different than the default can be set with the setProfile method.
      Parameters:
      seq - The sequence the beam region is constructed for.
      distance - Approximate distance between consecutive default profiles. The exact distance is an integer multiple of the step size in the path.
      defaultProfile - A default 2D profile to be extruded along the path.
      extention - In case of transfer lines, the beam region covered is extended some distance at the start of the sequence in the negative S direction and at the end of the sequence in the positive S direction to surely cover the fist and last step of the tracking. Ignored for rings. Unit is in [m].
  • Method Details

    • writeHCPLatticeCover

      public void writeHCPLatticeCover(String outFileName, double radius) throws KnownFatalException
      Writes a HCP lattice cover file for the beam region.
      Parameters:
      outFileName - The name of the output file. The extension should be according to FileNamingConventions.HCP_COVER_FILE_EXTENSION
      radius - The radius of the spheres in the cover.
      Throws:
      KnownFatalException
    • addVacuumChamber

      public void addVacuumChamber(VacuumChamber chamber)
      Adds a vacuum chamber and removes the not needed overlapping default profiles.
      Parameters:
      chamber - A vacuum chamber to be added.
    • writeSTLTextFile

      public void writeSTLTextFile(String file)
      Write the surface representing the beam region to an STL text file.
      Parameters:
      file - Filename, should end with .stl
    • getTriangulation

      public Triangulation getTriangulation()
      Gets triangles of the boundary of the beam region.
      Returns:
      The Triangulation