GeneralAtmosphere2 is part of the WaveTrain system class library
GeneralAtmosphere2 is a modified GeneralAtmosphere.
Option to remove tilt from individual phase screens added.
Beam diameter over which tilt is fit is specified.
Phase screens are available as output as a nscreen by 11+nxy*nxy array. The header of 11 data values before the nxy*nxy phase values for each screen is set in compPhaseScreen() in AcsPhaseScreen.cpp as:
propGrid->nx();
propGrid->ny();
propGrid->dx();
propGrid->dy();
propGrid->xCenter()-xtw;
propGrid->yCenter()-ytw;
distance;
rateX;
rateY;
xtw;
ytw;
GeneralAtmosphere2 models optical propagation through atmospheric turbulence. The atmosphere is modeled using multiple "phase screens", typically 5-20, distributed along the propagation path. Each phase screen represents the cumulative optical path differences for a slab of atmosphere, and in between phase screens we perform vacuum propagations, using a two-step FFT propagator. The details of the path model (number and placement of screens, turbulence strengths, inner scale, etc.) are specified by "atmosphere specification" (an object of type AcsAtmSpec). Atmosphere specifications can be created using TurbTool, and for certain common cases (e.g. uniform turbulence, or scaled Clear1) we have also provided a more convenient function call interface. The dimensions of each phase screen dimensions are controlled by a user-defined bounding rectangle for the region of interest at each end of the propagation path. If the specified bounds should be exceeded, each screen will be "scrolled" as necessary. Unlike AtmoPath, GeneralAtmosphere2 does not include PropagationControllers, at least one of which is required somewhere along each propagation path, so the user must put them in himself.
|
Parameters
|
atmSpec |  AcsAtmSpec | Atmosphere specification | |
randomSeed |  int | Seed for phasescreen generation | -1234567 |
gridPlatform |  GridGeometry | Region of interest at 'platform' end of path | |
gridTarget |  GridGeometry | Region of interest at 'target' end of path | |
dxy |  float | Phase screen grid spacing (m) | |
locFlag |  int | Low order correction flag | 0 |
removeTilt |  bool | Flag to remove tilt from phase screens | false |
diam |  float | Beam diameter for tilt removal fit (m) | diam |
Inputs
|
incomingIncident |  WaveTrain | Light incident in 'incoming' direction | WaveTrain() |
outgoingIncident |  WaveTrain | Light incident in 'outgoing' direction | WaveTrain() |
Outputs
|
incomingTransmitted |  WaveTrain | Light transmitted in 'incoming' direction | |
outgoingTransmitted |  WaveTrain | Light transmitted in 'outgoing' direction | |
phaseScreen |  Array<float> | Phase screens as a nscreen by 11+nxy*nxy array | |
Subsystems |
|
|
Last Saved: Fri Feb 22 10:40:45 MST 2008 by TVE version 2007B
|
|