- lightFrameEnvelopeUpdater
lightFrameEnvelopeUpdater¶
Works with VSimPA license.
Multifield updater that updates the envelope fields in the laser
envelope model. To use it effectively, you must use it with the
lightFrameEnvelopeMultiField kind of MultiField.
When using the envelope model with particles, the species should
be of kind envBoris Species Kind.
lightFrameEnvelope Updater Parameters¶
The lightFrameEnvelopeUpdater takes the
lowerBounds and upperBounds parameters of
FieldUpdater, as well as the following parameters:
- readFields (required string vector)
Three field names: the active envelope field, the alternate field, and the susceptibility field. The envelope fields are complex scalars, with the real part in component 0 and the imaginary part in component 1.
- writeFields (required string vector)
Two field names: the active and alternate envelope fields.
- omega (required float)
Angular frequency of the laser, in Hz.
- Solver (required parameter block)
The
lightFrameEnvelopeUpdaterrequires a block of typeSolverof any name. This block provides parameters for the linear solver used in the update.In general, the possible values of solver block parameters correspond to the values of parameters of the AztecOO library used by Vorpal. String parameters are case insensitive and need not have the AZ_ prefix. Not all AztecOO parameters can be set from the input file, and the parameters in the example file have been found to work well. However, solver parameters that you may want to adjust include:
kind(optional string):Specifies the iterative solver available in Aztec to use for the linear system of equations of the envelope model. Please refer to the Trilinos documentation for further details. One of:
cggmrescgstfgmrbicgstab
precond(optional string):Please refer to the Trilinos documentation for details regarding Trilinos preconditioners. The precond parameter specifies a Trilinos preconditioner; one of:
mldom_decomp_iludom_decomp_ilutneumannlsjacobi
output(optional string):specifies information to be printed. Possible values to specify level of output include:
allnone: suppress residual datawarningslastsummary
tolerance(optional float):Tolerance for solver convergence.
Example lightFrameEnvelopeUpdater Block¶
<FieldUpdater envUpdater>
kind = lightFrameEnvelopeUpdater
lowerBounds = [ 0 0 0]
upperBounds = [NX NY NZ]
readFields = [activeEnvFld altEnvFld chi]
writeFields = [activeEnvFld altEnvFld]
omega = OMEGA
<Solver mySolver>
kind = gmres
precond = dom_decomp
output = all
tolerance = 1.e-08
</Solver>
</FieldUpdater>