plasma.inpNote: Include the following unit-conversion key directive at the very top of plasma.inp to normalize grid spacing and light speed:
!!key dx=[0.5], to_c=[10000.0]
plasma.inp
EMSES uses a normalized unit system to simplify computations and reduce numerical cost. Four primary conversions are fixed:
dx) [m] → 1cv) [m/s] → 10000epsilon_0) [F/m] → 1q/m) [C/kg] → –1All other physical quantities scale consistently according to these base units. Conversion formula:
X_EMSES = X_phys × C
where C derives from the chosen normalizations. See the emout conversion module or Excel sheet for explicit coefficients.
&esorem: Field solver mode&jobcon: Job control&digcon: Diagnostic output control&plasma: Plasma properties&tmgrid: Time & spatial grid&mpi: MPI decomposition&intp: Particle integration & initialization&ptcond: Surface/conductor boundary parameters&gradema: Surface charging acceleration&dipole: Embedded dipole source&emissn: Particle emissionDefined in namels.f90.
emflag (integer): 1=full EM, 0=electrostaticjobnum(2) (integer): [new/continue, always 1]nstep (integer): total time stepsControls diagnostics (HDF5, current, particle, etc.). Key parameters:
hdfdigstart, hdfdigend (integer): start/end step for HDF outputifdiag, ijdiag (integer): field/current output intervalsipadig(1:3) (integer): in-situ grid sizeipahdf(1:3), ipaxyz(18), ifxyz(1:7), ijxyz(1:3) (integer arrays): masks and flagsisort, itchck (integer): sorted output, checkpoint intervalildig, ikdiag, ivdiag, irhsp, imdig (integer): specialized diagnosticsFundamental plasma parameters (in EMSES units):
wp(1:nspec) (real): plasma frequency per specieswc (real): cyclotron frequencycv (real): normalized light speedTime & spatial grid:
dt (real): time-step sizenx, ny, nz (integer): grid pointsdx (real): grid spacingSystem parameters:
nspec (integer): number of speciesnfbnd, npbnd (integer): field/particle boundary (0=periodic, 2=free)mtd_vbnd (integer): potential BC (0=periodic, 1=Dirichlet, 2=Neumann)separate_accumulated_and_space_charge (logical): if .true., compute the electric‐field contributions from accumulated charge and from space charge separately. Default is .true.MPI domain decomposition:
nodes(1:3) (integer): processes along x, y, zParticle integration & initialization:
qm(1:nspec), npin(1:nspec), np(1:nspec) (real/integer arrays): q/m, initial/buffer particle countspath(1:nspec), peth(1:nspec) (real arrays): thermal velocitiesvdri(1:nspec), vdthz(1:nspec), vdthxy(1:nspec) (real arrays): bulk-flow magnitudes & anglesSurface & conductor boundaries.
npc, npcg (integer): counts of solid/conductor bodiespcgs, ccgs (integer arrays): conductor groupingmtd_vchg (integer): potential treatment (0=float, -1=fixed)pfixed (real): fixed potential valuegeotype (integer): 0/1=rectangular, 2=cylinder, 3=spherebdyalign (integer): cylinder axis (1=x, 2=y, 3=z)bdyradius, bdyedge, bdycoord (real arrays): shape parameters{x,y,z}{l,u}pc (real): rectangular bounds(See next section)
grad_coef (real): acceleration coef. for surface chargingEmbedded magnetic dipole source:
md (real): dipole field magnitudemdx, mdy, mdz (integer): grid indices of dipole centermddir (integer): orientation (1=x, 2=y, 3=z)Particle emission settings:
nflag_emit(1:nspec) (integer): 0=external, 1=internal, 2=internal (with pe-raycasting)nepl (integer): # of emission surfacescurf (real): base current densitycurfs(1:nepl) (real): per-surface overridesnemd(1:nepl) (integer): direction/surface (±1=x, ±2=y, ±3=z)xmaxe(1:nepl), xmine(1:nepl), ymaxe(1:nepl), ymine(1:nepl), zmaxe(1:nepl), zmine(1:nepl) (integer arrays): emission-region boundsipcpl(1:nepl) (integer): Specifies the conductor number (ipc at geotype(ipc)) if this emission surface constitute the conductor object (by deafult 1).pe_ray_cast (logical): solar-illumination-driven emission flag; Particles with nflag_emit == 2 are emitted from the regions of internal boundaries (as defined by the Finbound extension) that are exposed to sunlightray_zenith_angle_deg(1:nspec), ray_azimuth_angle_deg(1:nspec) the angle of sunlight is defined (default: vdthz(1) and vdthxy(1))periodic_raycast raycast with periodic boundary flag.All following parameters belong to the \&ptcond group and are implemented via the finbound module (see allcom.f90 and particle_collision.f90). They enable precise control over complex inner boundary geometries.
boundary_type (character(30))
Supported values:
none (no special inner boundary)flat-surface (planar cut)rectangle-hole, cylinder-hole, hyperboloid-hole, ellipsoid-hole (hole through a surface)complex (combined shapes defined by boundary_types)boundary_types(1:nboundary_types) (character(30) array)
flat-surface (planar cut)rectangle-hole, cylinder-hole, hyperboloid-hole, ellipsoid-hole (hole through a surface)rectanglex, rectangley, rectanglez (rectangular prism in X/Y/Z)circlex, circley, circlez (cylindrical cut aligned with an axis)cuboid (axis-aligned block)diskx, disky, diskz (flat disk perpendicular to an axis)sphereboundary_conductor_id(1:nboundary_types)
ipc at geotype(ipc)) if this boundary condition constitute the conductor object.Geometry Parameter Arrays (each dimensioned by nboundary_types):
cylinder_origin(3, nbt)
[x, y, z] of each cylindrical sub-boundary.cylinder_radius(nbt)
cylinder_height(nbt)
rectangle_shape(6, nbt)
(x_lower, x_upper, y_lower, y_upper, z_lower, z_upper), defining each rectangular prism.cuboid_shape(6, nbt)
rectangle_shape, used interchangeably for cuboid bodies.sphere_origin(3, nbt)
[x, y, z] of each spherical sub-boundary.sphere_radius(nbt)
circle_origin(3, nbt)
[x, y, z] of each circular hole (disk) or cylindrical cut.circle_radius(nbt)
disk_origin(3, nbt)
[x, y, z] of each flat disk surface.disk_height(nbt)
disk_radius(nbt)
disk_inner_radius(nbt)
(Here, nbt denotes nboundary_types.)
plasma.inp&esorem
emflag = 0
&end
&jobcon
jobnum = 0, 1
nstep = 100000
&end
&plasma
wp = 0.5950738d0, -1.0d0
wc = 0.0d0
cv = 10000.0d0
&end
&tmgrid
dt = 0.01d0
nx = 128; ny = 128; nz = 128
dx = 1.0d0
&end
... (continued)
Refer to the EMSES user guide and source-code comments for further configuration details and advanced options.