15  Emission Sources

View:

15.1 Introduction

EMISSIONSOURCE and EMISSIONSOURCELIST are OPALX statements that separate distribution sampling from source placement and timing.

15.2 High-Level Setup

The OPALX workflow is:

  1. define a DISTRIBUTION
  2. define one or more EMISSIONSOURCE objects that reference it
  3. group those sources in an EMISSIONSOURCELIST
  4. attach the source list to a BEAM through SOURCES

15.3 Adapting Legacy Input Files

Legacy OPAL input files often attach emission semantics directly to the distribution. In OPALX, source position, momentum offset, start time, and the simple emission model are moved to EMISSIONSOURCE.

15.4 Distribution Attributes Relevant for Emission

On the distribution side, OPALX still uses the EMITTED flag and the distribution shape parameters. The source object provides the placement and timing metadata.

15.5 The EMISSIONSOURCE Statement

An EMISSIONSOURCE links to a named distribution and adds:

  • R0X, R0Y, R0Z
  • P0X, P0Y, P0Z
  • T0
  • EMISSIONMODEL
  • ZEROFACE_R0Z
  • SHIFTED_GREENS_FUNCTION
  • ZEROFACEPLANEDUMP
  • ZEROFACE_MAXSTEPS

The currently supported emission models are:

  • NONE
  • ASTRA

15.6 The EMISSIONSOURCELIST Statement

EMISSIONSOURCELIST is a named list of emission sources:

mySources: EMISSIONSOURCELIST = (ES1, ES2, ...);

15.7 Use With BEAM and TRACK

The beam references the list through SOURCES, and TRACK later resolves the effective emission sources from the beam rather than from a direct TRACK attribute.

15.8 Examples

15.8.1 FLATTOP Emission with a Delayed GAUSS Injector

15.8.2 Two Counter-Propagating FLATTOP Sources

The legacy OPALX note includes both patterns as examples of time-delayed and multi-source injection.

15.9 Current OPALX Implementation Notes

The current implementation resolves emission sources per beam, applies the source offsets after sampling, and uses the source-level emission model during particle creation.