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.
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 lightFrameEnvelopeUpdater
requires a block of type
Solver
of 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:
cg
gmres
cgs
tfgmr
bicgstab
precond
(optional string):Please refer to the Trilinos documentation for details regarding Trilinos preconditioners. The precond parameter specifies a Trilinos preconditioner; one of:
ml
dom_decomp_ilu
dom_decomp_ilut
neumann
ls
jacobi
output
(optional string):specifies information to be printed. Possible values to specify level of output include:
all
none
: suppress residual datawarnings
last
summary
tolerance
(optional float):<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>