-
Notifications
You must be signed in to change notification settings - Fork 32
How to build an undulator in Design Mode
Step by step instructions for building an undulator.
This will reproduce the Undulator example, seen here:

From the Simulations page, click "New Simulation", enter a suitable name, and select a Beam Axis of "y". Save changes.

Sirepo will open a 3d view of the new simulation, which will be empty. Click the "Design" tab to begin building the magnet.
The Designer comprises a toolbar of available objects and tools (currently limited to Boxes and Groups), a list of the objects created, and a workspace in "plan" or "elevation" view.
To simplify construction, a single octant of the magnet will be built and then expanded using Radia's symmetry operations.
Start with a pole to be at the center of the full magnet. Drag a box into the workspace. Name it "Half Pole" and give it a size of (22.5, 2.5, 25) and a center of (11.25, 1.25, -22.5). Select the "Neodymium Iron Boron" and leave the magnetization at (0, 0, 0). Turn "Divide" on and use a division of (2, 2, 5). Select a suitable color and Save.

Custom
Next comes a magnet block and pole assembly that will be repeated for a number of periods. For the block, drag in a new box with following parameters:
- Name: "Magnet Block"
- Magnetization: (0, -1.2, 0)
- Material: "Neodymium Iron Boron"
- Divide: Yes
- Num Divisions: (1, 3, 1)
- Center: (16.25, 11.5, -33.5)
- Size: (32.5, 18, 45)

For the pole, go to the Object list, mouse over "Half Pole" and click "Copy". Change these parameters:
- Name: "Pole"
- Center: (11.25, 23, -22.5)
- Size: (22.5, 5, 25)

Now group the block and pole to manipulate them as a unit. Drag a group into the workspace. Name it "Magnet-Pole Pair". Add Magnet Block and Pole. Drag in a Clone Transform. 3 Copies. Alternate Fields Yes. Drag in Translate. Set to (0, 23, 0).



The last object is a terminating magnet block. Copy Magnet Block and change:
- Name: "End Block"
- Center: (16.25, 99, -33.5)
- Size: (32.5, 9, 45)

Last apply the symmetries to the objects to form the full magnet. Drag in a group and name it "Octant". Add Half Pole, Magnet-Pole Pair, and End Block. Drag in 3 symmetries:

- Symmetry: Perpendicular
- Plane: (1, 0, 0)
- Point: (0, 0, 0)

- Symmetry: Parallel
- Plane: (0, 0, 1)
- Point: (0, 0, 0)

- Symmetry: Perpendicular
- Plane: (0, 1, 0)
- Point: (0, 0, 0)

Click the Visualization tab to see the magnet in 3D.
TODO: add y-axis field evaluation line.
License: http://www.apache.org/licenses/LICENSE-2.0.html
Copyright ©️ 2015–2020 RadiaSoft LLC. All Rights Reserved.
- Activait
- Controls
- elegant
- FLASH
- Genesis
- JSPEC
- JupyterHub
- MAD-X
- OPAL
- Radia
- Shadow
- Synchrotron Radiation Workshop (SRW)
- Warp PBA
- Warp VND
- Zgoubi
- Authentication and Account Creation
- How Your Sirepo Workspace Works
- Navigating the Sirepo Simulations Interface
- How to upload a lattice file
- How to share a Sirepo simulation via URL
- How Example simulations work
- How to report a bug in Sirepo
- Using lattice files in Sirepo
- Resetting an Example Simulation to default
- Backup SRW Sirepo simulations
- SRW Aperture
- SRW Brilliance Report
- SRW Circular Cylinder Mirror
- SRW CRL
- SRW Crystal
- SRW Electron Beam
- SRW Elliptical Cylinder Mirror
- SRW Fiber
- SRW Flux
- SRW Fully Coherent Gaussian Beam
- SRW Import Python or JSON Simulation File
- SRW Initial Wavefront Simulation Grid
- SRW Intensity Report
- SRW Planar Mirror
- SRW Power Density Report
- SRW Propagation Parameters
- SRW Single Electron Spectrum Report
- SRW Spherical Mirror
- SRW Toroid Mirror
- SRW Watchpoint
- SRW Additional Documentation