Input File: PIC¶
Smoothing¶
Any field solver or particle species module can accept the following smoothing directives. If applied to a field solver, sources are smoothed prior to advancing the fields, and the physics is affected. If applied to a particle species, only the single species density diagnostic is affected (note that the sources may be smoothed, even if the density diagnostic is not). The original WAVE smoother used smoothing=(4,4,4) and compensation=(1,1,1).
- smoothing = (smx,smy,smz)
Used to perform smoothing passes (0.25, 0.5, 0.25) on the source functions.
- Parameters:
smx (int) – number of smoothing passes in x-direction.
smy (int) – number of smoothing passes in y-direction.
smz (int) – number of smoothing passes in z-direction.
- compensation = (cnx,cny,cnz)
Apply compensation passes (-1.25 , 3.5 , -1.25) after smoother.
- Parameters:
cnx (int) – number of compensation passes in x-direction.
cny (int) – number of compensation passes in y-direction.
cnz (int) – number of compensation passes in z-direction.
Field Solvers¶
- new electrostatic [field solver] [<name>] { <directives> }
Installs a general electrostatic field solver. Inhomogeneous boundary conditions are imposed using Conductor objects. Conductor objects may fill either ghost cells or interior cells. The topology of conductor objects is unrestricted. However, elliptical solvers have varying restrictions on the complexity of the topology. An elliptic solver tool is required.
- Parameters:
directives (block) –
The following directives are supported:
Installable tools: Particle Movers
- new coulomb [field solver] [<name>] { <directives> }
Installs a Coulomb gauge electromagnetic field solver. Similar to WAVE field solver, but assumes continuity of sources (no divergence cleaning structure). Cartesian coordinates only. An elliptic solver tool is required. At present only the
facrelliptic solver is recommended.- Parameters:
directives (block) –
The following directives are supported:
Installable tools: Particle Movers, Radiation Injection
- dipole center = (x,y,z)
Reference point for dipole moment diagnostic
- gamma beam = g
Reference gamma for initializing beam potentials
- new direct [field solver] [<name>] { <directives> }
Create an EM module that advances Maxwell’s curl equations directly, relying on continuity of sources to preserve divergence conditions. An elliptical solver is used for initialization. Cartesian only.
- Parameters:
directives (block) –
The following directives are supported:
Installable tools: Particle Movers, Radiation Injection
- dipole center = (x,y,z)
Reference point for dipole moment diagnostic
- layers = ( x0,x1,y0,y1,z0,z1 )
thickness of absorbing layers.
- Parameters:
x0 (int) – number of cells in a single strip occupied by absorbing layers adjacent to the lower boundary in the x direction. If 0 there are no PML media at this boundary. Other 5 parameters are analogous.
- reflection coefficient = Rx0 Rx1 Ry0 Ry1 Rz0 Rz1
- Parameters:
Rx0 (float) – Desired fraction of AMPLITUDE reflected from lower x boundary. If actual reflection is larger than requested, try increasing the number of layers. Other 5 parameters are analogous.
- new curvilinear direct [field solver] [<name>] { <directives> }
Same as direct electromagnetic module except for arbitrary coordinate system. Elliptical solver should be
eigenmode.
- new pgc [laser solver] [<name>] { <directives> }
Create an enveloped field solver suitable for use with ponderomotive guiding center simulations.
- Parameters:
directives (block) –
The following directives are supported:
Installable tools: Laser Propagator, Radiation Injection
- carrier frequency = f
- Parameters:
f (float) – base frequency ratio for the laser radiation
- polarization = p
- Parameters:
p (enum) – can be
linear,circular, orradial
Particle Species¶
Particle species can be used in electromagnetic PIC or as Bohmian particles in Quantum Optics Modules.
- new species [<name>] { <directives> }
- Parameters:
name (str) – name given to the species
directives (block) –
The following directives are supported:
Shared directives: see boundaries
Installable tools: PhotoIonization
- mass = m0
- Parameters:
m0 (float) – mass of the particle, default = 1.0
- charge = q0
- Parameters:
q0 (float) – charge of the particle, default = -1.0
- particles per cell = ( Nx , Ny , Nz ) when density = n0
Lays out particles on a subgrid of dimension
within a cell. The particles are weighted so that the density in the cell is n0. If particle weights are variable, the density specification is ignored (but still required), and the requested profile density is achieved in every cell.
- minimum density = nmin
- Parameters:
nmin (float) – suppress creation of particles with density less than this
- emission temperature = ( Tx , Ty , Tz )
Thermal momentum of particles re-emitted from the boundaries
- mobile = tst
- Parameters:
tst (bool) – set to false to hold this species immobile (defaults to true)
- acceleration time = dt
- Parameters:
dt (float) – time over which to accelerate particle
- acceleration momentum = pz
- Parameters:
pz (float) – final momentum of particle
- radiation damping = tst
- Parameters:
tst (bool) – set to true to apply radiation damping to the particles (default = false)
Nonlinear Optics¶
Bound particles treated as anharmonic oscillators can be used in the electromagnetic PIC environment.
- new bound [<name>] { <directives> }
- Parameters:
name (str) – name given to the bound species
directives (block) –
The following directives are supported:
- mass = m0
- Parameters:
m0 (float) – mass of the particle, default = 1.0
- charge = q0
- Parameters:
q0 (float) – charge of the particle, default = -1.0
- basis = ( u1,u2,u3,v1,v2,v3,w1,w2,w3)
Defines the
,
, and
unit vectors which define the principal axes of the crystal.
- resonance = ( w1 , w2 , w3 )
- Parameters:
w1 (float) – resonant frequency along u axis
w2 (float) – resonant frequency along v axis
w3 (float) – resonant frequency along w axis
- damping = ( d1 , d2 , d3 )
- Parameters:
d1 (float) – damping frequency along u axis
d2 (float) – damping frequency along v axis
d3 (float) – damping frequency along w axis
- strength = ( f1 , f2 , f3 )
- Parameters:
f1 (float) – oscillator strength along u axis
f2 (float) – oscillator strength along v axis
f3 (float) – oscillator strength along w axis
- a1 = ( a11 , a12 , a13 , a14 , a15 , a16)
First row of the second order anharmonic tensor
- a2 = ( a21 , a22 , a23 , a24 , a25 , a26)
Second row of the second order anharmonic tensor
- a3 = ( a31 , a32 , a33 , a34 , a35 , a36)
Third row of the second order anharmonic tensor
- b = b0
- Parameters:
b0 (float) – cubic anharmonic coefficient
- d = d0
- Parameters:
d0 (float) – quintic anharmonic coefficient
- phi = q1
- Parameters:
q1 (float) – Rotation about z in radians. Initial orientation has principal axes aligned with standard basis. This rotation happens before the theta rotation.
- theta = q2
- Parameters:
q2 (float) – Rotation about y in radians. Initial orientation has principal axes aligned with standard basis. This rotation happens after the phi rotation.