Field Solvers¶
PyPIC3D supports two production runtime modes selected from
simulation_parameters.
Runtime Modes¶
Electrostatic mode¶
Set:
solver = "electrostatic"
Per step, PyPIC3D:
Pushes particles.
Deposits
rho.Solves Poisson’s equation for
phi.Computes
E = -grad(phi).
The electrostatic path uses the finite-difference Yee method:
conjugate-gradient Poisson solve for
phicentered finite-difference gradient for
E = -grad(phi)
Electrodynamic mode¶
Set:
solver = "electrodynamic_yee"
Per step, PyPIC3D:
Pushes particles.
Deposits current
J.Updates
E.Updates
B.
The electrodynamic update uses first-order Yee-style kernels in
PyPIC3D.solvers.first_order_yee.
Electrodynamic Update Equations¶
PyPIC3D additionally applies a digital filter controlled by
constants.alpha to field components each update.
Boundary Conditions¶
Field boundary conditions are defined by:
simulation_parameters.x_bcsimulation_parameters.y_bcsimulation_parameters.z_bc
Supported values:
periodicconducting
For conducting boundaries, tangential electric-field components are zeroed on
boundary faces during the E update.
Current Deposition Selection¶
Current deposition is selected by:
current_calculation = "j_from_rhov"
or
current_calculation = "esirkepov"
See Current Deposition for behavior and tradeoffs.