tempus System Class PropagationController
PropagationController is part of the WaveTrain system class library

  PropagationController is a special purpose system class used for setting various propagation modeling options. These options include the mesh parameters, the type of reference wavefront (planar or spherical), spatial filtering and absorbing boundaries, and the types of models to use for point sources and speckle imaging.
  The AtmoPath library system contains PropagationControllers, so it is frequently unnecessary to explicitly insert Propagation Controllers into a WaveTrain system. See the WT User Guide for further discussion of the conditions that warrant explicit use f the PropagationController.
  A PropagationController can be connected anywhere along the path between an optical source and an optical sensor, and it is required that there be one somewhere on the path, if there is an optical propagation on it. If there are two or more PropagationControllers along the same source-sensor path, the one nearest the source overrides the others. Thus placing a PropagationController on a common path for two or more sources means that it will control the propagation options for all the sensors, unless another PropagationController, typically placed on some non-common part of the path, is used to override it.
  The atmospheric dispersion option ("useDispersion" ="true") in PropagationController can still be used, but a separate DispersionController is now available that has greater functionality. (Dispersion allows the treatment of the slightly different paths taken through phase screens by different wavelengths.) The bending of ray paths is calculated relative to a straight path taken by light with the "nominalWavelength".

Tempus Block Diagram Editor Snapshot
Parameters
targetGrid  GridGeometry   defines propagation mesh at aperture plane.   grid_with_origin_on_mesh(nxy,dxy)
xReferenceFocus  float   used to define propagation geometry; set to zero for plane wave propagation.   0.0
yReferenceFocus  float   used to define propagation geometry; set to zero for plane wave propagation. (ignored at present)   0.0
oneTimeSpatialFilter  constFilter&   used to remove high spatial frequency content from initial wavefront - see Filter documentation.   NullFilter()
spatialFilter  constFilter&   used to remove high spatial frequency content at each propagation step - see Filter documentation   NullFilter()
absorbingBoundary  constFilter&   used to remove energy near the edge of the propagation mesh - see Filter documentation.   NullFilter()
pointSourceModel  PointSourceModel   controls point source model used.   DEFAULT_PSM
speckleModel  SpeckleModel   controls speckle model used.   DEFAULT_SM
superApDiameter  float   used in modeling point sources and surface speckle; defines a circular region at the aperture plane which in vacuum would be uniformly illuminated   1.5 * Dap
edgeSigma  float   used in modeling point sources and surface speckle; defines a gaussian round off at the edge of the superaperture   5.0 * dxy
useDispersion  bool   use atmospheric dispersion calculations   false
nominalWavelength  float   nominal wavelength (m) for dispersion calculations   0.0
Inputs
incident  WaveTrain   describes all light incident   WaveTrain()
Outputs
transmitted  WaveTrain   describes all light transmitted   
Subsystems


Last Saved: Mon Jul 02 16:07:00 CDT 2001 by TVE version 2007A