From 922f3da8018db44c31fce0a2b6426c0d548cbf0c Mon Sep 17 00:00:00 2001 From: Stefan Possanner Date: Tue, 20 Oct 2026 15:09:44 +0200 Subject: [PATCH] Rename VlasovPoissonElectrostaticAdiabatic to VlasovPoissonAdiabatic The Poisson equation already says that the model is electrostatic. Renames the model module, the class, the example folder and the verification test, and updates the references in the docs, the API and the drift-kinetic slab example. Co-Authored-By: Claude Opus 5.5 --- doc/sections/subsections/models-all.rst | 2 +- .../slab_drift_wave/params_slab_drift_wave.py | 4 ++-- .../slab_drift_wave/pproc_slab_drift_wave.py | 4 ++-- .../slab_drift_wave/params_slab_drift_wave.py | 10 +++++----- .../slab_drift_wave/pproc_slab_drift_wave.py | 0 src/struphy/api/models/__init__.py | 4 ++-- src/struphy/models/__init__.py | 6 +++--- ...iabatic.py => test_verif_VlasovPoissonAdiabatic.py} | 10 +++++----- ...static_adiabatic.py => vlasov_poisson_adiabatic.py} | 6 +++--- 9 files changed, 23 insertions(+), 23 deletions(-) rename examples/{VlasovPoissonElectrostaticAdiabatic => VlasovPoissonAdiabatic}/slab_drift_wave/params_slab_drift_wave.py (96%) rename examples/{VlasovPoissonElectrostaticAdiabatic => VlasovPoissonAdiabatic}/slab_drift_wave/pproc_slab_drift_wave.py (100%) rename src/struphy/models/tests/verification/{test_verif_VlasovPoissonElectrostaticAdiabatic.py => test_verif_VlasovPoissonAdiabatic.py} (95%) rename src/struphy/models/{vlasov_poisson_electrostatic_adiabatic.py => vlasov_poisson_adiabatic.py} (98%) diff --git a/doc/sections/subsections/models-all.rst b/doc/sections/subsections/models-all.rst index 059024323..8b7de6b45 100644 --- a/doc/sections/subsections/models-all.rst +++ b/doc/sections/subsections/models-all.rst @@ -26,7 +26,7 @@ Full-orbit Vlasov :undoc-members: :show-inheritance: -.. autoclass:: struphy.models.VlasovPoissonElectrostaticAdiabatic +.. autoclass:: struphy.models.VlasovPoissonAdiabatic :members: doc_pde, doc_scalar_quantities, doc_normalization, doc_discretization, doc_long_description, doc_examples, doc_use_cases, doc_cannot_be_used_for :undoc-members: :show-inheritance: diff --git a/examples/DriftKineticElectrostaticAdiabatic/slab_drift_wave/params_slab_drift_wave.py b/examples/DriftKineticElectrostaticAdiabatic/slab_drift_wave/params_slab_drift_wave.py index ebb8fd068..79b3350d1 100644 --- a/examples/DriftKineticElectrostaticAdiabatic/slab_drift_wave/params_slab_drift_wave.py +++ b/examples/DriftKineticElectrostaticAdiabatic/slab_drift_wave/params_slab_drift_wave.py @@ -1,5 +1,5 @@ """Kinetic drift wave in a slab with drift-kinetic ions and adiabatic electrons (DriftKineticElectrostaticAdiabatic); -the same setup as examples/VlasovPoissonElectrostaticAdiabatic/slab_drift_wave, for comparison with full-orbit ions.""" +the same setup as examples/VlasovPoissonAdiabatic/slab_drift_wave, for comparison with full-orbit ions.""" # ----------------------------- # Description of the simulation @@ -9,7 +9,7 @@ description = """ Drift wave in a slab with a density gradient, with drift-kinetic (guiding-center, 5D) ions and adiabatic electrons (DriftKineticElectrostaticAdiabatic). The physical setup is the one of the slab_drift_wave example of the full-orbit -model VlasovPoissonElectrostaticAdiabatic, so that the two models can be compared directly. +model VlasovPoissonAdiabatic, so that the two models can be compared directly. Physics. The guiding-center distribution f(X, v_par, mu, t) is advected by the parallel streaming, the E x B drift and the parallel acceleration by E_par (uniform B0 = e_z, no curvature). The potential follows from the quasi-neutrality diff --git a/examples/DriftKineticElectrostaticAdiabatic/slab_drift_wave/pproc_slab_drift_wave.py b/examples/DriftKineticElectrostaticAdiabatic/slab_drift_wave/pproc_slab_drift_wave.py index 44da3046c..c4d52dd03 100644 --- a/examples/DriftKineticElectrostaticAdiabatic/slab_drift_wave/pproc_slab_drift_wave.py +++ b/examples/DriftKineticElectrostaticAdiabatic/slab_drift_wave/pproc_slab_drift_wave.py @@ -4,7 +4,7 @@ the flags must be those of the run. The figures are written into ``/results`` (``--show`` shows them instead): the amplitude and phase of the initial (k_y, k_z) mode against time with the measured and predicted frequencies, the field energy, and phi in the (x, y) plane at the first, middle and last saved time. With -``--compare FOLDER``, the output folder of a run of examples/VlasovPoissonElectrostaticAdiabatic/slab_drift_wave +``--compare FOLDER``, the output folder of a run of examples/VlasovPoissonAdiabatic/slab_drift_wave (same physical setup), the mode of the full-orbit run is overlaid. """ @@ -152,7 +152,7 @@ def main(path_out=DEFAULT_OUTPUT, save_figs=True, compare=None): parser.add_argument( "--compare", default=None, - help="Output folder of a run of examples/VlasovPoissonElectrostaticAdiabatic/slab_drift_wave to overlay.", + help="Output folder of a run of examples/VlasovPoissonAdiabatic/slab_drift_wave to overlay.", ) parser.add_argument("--show", action="store_true", help="Show the figures instead of saving them.") args = parser.parse_args(other_flags) diff --git a/examples/VlasovPoissonElectrostaticAdiabatic/slab_drift_wave/params_slab_drift_wave.py b/examples/VlasovPoissonAdiabatic/slab_drift_wave/params_slab_drift_wave.py similarity index 96% rename from examples/VlasovPoissonElectrostaticAdiabatic/slab_drift_wave/params_slab_drift_wave.py rename to examples/VlasovPoissonAdiabatic/slab_drift_wave/params_slab_drift_wave.py index 0413bc942..d72fed433 100644 --- a/examples/VlasovPoissonElectrostaticAdiabatic/slab_drift_wave/params_slab_drift_wave.py +++ b/examples/VlasovPoissonAdiabatic/slab_drift_wave/params_slab_drift_wave.py @@ -1,15 +1,15 @@ """Kinetic drift wave in a slab with full-orbit ions and adiabatic electrons -(VlasovPoissonElectrostaticAdiabatic); the full-orbit counterpart of the drift-kinetic model +(VlasovPoissonAdiabatic); the full-orbit counterpart of the drift-kinetic model DriftKineticElectrostaticAdiabatic.""" # ----------------------------- # Description of the simulation # ----------------------------- -name = "Slab drift wave (VlasovPoissonElectrostaticAdiabatic)" +name = "Slab drift wave (VlasovPoissonAdiabatic)" description = """ Drift wave in a slab with a density gradient, with full-orbit (6D) ions and adiabatic electrons -(VlasovPoissonElectrostaticAdiabatic). +(VlasovPoissonAdiabatic). Physics. The ions follow full Lorentz-force orbits, dx/dt = v, dv/dt = (1/epsilon) (-grad phi + v x B0), @@ -105,7 +105,7 @@ maxwellians, ) from struphy.initial.base import GenericPerturbation -from struphy.models import VlasovPoissonElectrostaticAdiabatic +from struphy.models import VlasovPoissonAdiabatic # --------------------- # Physical parameters (also used by the pproc) @@ -124,7 +124,7 @@ # --------------------- base_units = BaseUnits(kBT=1.0) -model = VlasovPoissonElectrostaticAdiabatic(base_units=base_units, epsilon=epsilon) +model = VlasovPoissonAdiabatic(base_units=base_units, epsilon=epsilon) model.em_fields.phi.save_data = True model.kinetic_ions.var.save_data = False diff --git a/examples/VlasovPoissonElectrostaticAdiabatic/slab_drift_wave/pproc_slab_drift_wave.py b/examples/VlasovPoissonAdiabatic/slab_drift_wave/pproc_slab_drift_wave.py similarity index 100% rename from examples/VlasovPoissonElectrostaticAdiabatic/slab_drift_wave/pproc_slab_drift_wave.py rename to examples/VlasovPoissonAdiabatic/slab_drift_wave/pproc_slab_drift_wave.py diff --git a/src/struphy/api/models/__init__.py b/src/struphy/api/models/__init__.py index dde4b4891..77e073171 100644 --- a/src/struphy/api/models/__init__.py +++ b/src/struphy/api/models/__init__.py @@ -48,7 +48,7 @@ from struphy.models.vlasov import Vlasov from struphy.models.vlasov_ampere_one_species import VlasovAmpereOneSpecies from struphy.models.vlasov_maxwell_one_species import VlasovMaxwellOneSpecies -from struphy.models.vlasov_poisson_electrostatic_adiabatic import VlasovPoissonElectrostaticAdiabatic +from struphy.models.vlasov_poisson_adiabatic import VlasovPoissonAdiabatic __all__ = [ "ColdPlasma", @@ -91,5 +91,5 @@ "Vlasov", "VlasovAmpereOneSpecies", "VlasovMaxwellOneSpecies", - "VlasovPoissonElectrostaticAdiabatic", + "VlasovPoissonAdiabatic", ] diff --git a/src/struphy/models/__init__.py b/src/struphy/models/__init__.py index 33e976a66..e15acebf1 100644 --- a/src/struphy/models/__init__.py +++ b/src/struphy/models/__init__.py @@ -49,7 +49,7 @@ "Vlasov": "struphy.models.vlasov", "VlasovAmpereOneSpecies": "struphy.models.vlasov_ampere_one_species", "VlasovMaxwellOneSpecies": "struphy.models.vlasov_maxwell_one_species", - "VlasovPoissonElectrostaticAdiabatic": "struphy.models.vlasov_poisson_electrostatic_adiabatic", + "VlasovPoissonAdiabatic": "struphy.models.vlasov_poisson_adiabatic", } if TYPE_CHECKING: # static analysis and IDEs see the eager imports @@ -93,7 +93,7 @@ from struphy.models.vlasov import Vlasov from struphy.models.vlasov_ampere_one_species import VlasovAmpereOneSpecies from struphy.models.vlasov_maxwell_one_species import VlasovMaxwellOneSpecies - from struphy.models.vlasov_poisson_electrostatic_adiabatic import VlasovPoissonElectrostaticAdiabatic + from struphy.models.vlasov_poisson_adiabatic import VlasovPoissonAdiabatic __all__ = [ "ColdPlasma", @@ -136,7 +136,7 @@ "Vlasov", "VlasovAmpereOneSpecies", "VlasovMaxwellOneSpecies", - "VlasovPoissonElectrostaticAdiabatic", + "VlasovPoissonAdiabatic", ] diff --git a/src/struphy/models/tests/verification/test_verif_VlasovPoissonElectrostaticAdiabatic.py b/src/struphy/models/tests/verification/test_verif_VlasovPoissonAdiabatic.py similarity index 95% rename from src/struphy/models/tests/verification/test_verif_VlasovPoissonElectrostaticAdiabatic.py rename to src/struphy/models/tests/verification/test_verif_VlasovPoissonAdiabatic.py index 3e6fa33a6..4c7c3268c 100644 --- a/src/struphy/models/tests/verification/test_verif_VlasovPoissonElectrostaticAdiabatic.py +++ b/src/struphy/models/tests/verification/test_verif_VlasovPoissonAdiabatic.py @@ -24,7 +24,7 @@ maxwellians, perturbations, ) -from struphy.models import VlasovPoissonElectrostaticAdiabatic +from struphy.models import VlasovPoissonAdiabatic from struphy.propagators.base import Propagator logger = logging.getLogger("struphy") @@ -48,11 +48,11 @@ def test_ion_acoustic_Landau(quasi_neutral: bool, do_plot: bool = False, exit_be :math:`\gamma = -0.1936`. """ # light-weight model instance (alpha only matters with the vacuum term, epsilon drops out for k parallel to B0) - model = VlasovPoissonElectrostaticAdiabatic(alpha=2.0, epsilon=1.0) + model = VlasovPoissonAdiabatic(alpha=2.0, epsilon=1.0) # environment options test_folder = os.path.join(os.getcwd(), "struphy_verification_tests") - out_folders = os.path.join(test_folder, "VlasovPoissonElectrostaticAdiabatic") + out_folders = os.path.join(test_folder, "VlasovPoissonAdiabatic") env = EnvironmentOptions(out_folders=out_folders, sim_folder=f"ion_acoustic_qn_{quasi_neutral}") # time stepping @@ -164,10 +164,10 @@ def test_neutral_full_f_background(): ion density; the charge number is part of the source coefficient, not of the background. A background :math:`Z n_0` would give :math:`\phi = -Z (Z - 1) \varepsilon T_0`, here :math:`-2`, everywhere. """ - model = VlasovPoissonElectrostaticAdiabatic(charge_number=2, mass_number=4.0, alpha=1.0, epsilon=1.0) + model = VlasovPoissonAdiabatic(charge_number=2, mass_number=4.0, alpha=1.0, epsilon=1.0) test_folder = os.path.join(os.getcwd(), "struphy_verification_tests") - out_folders = os.path.join(test_folder, "VlasovPoissonElectrostaticAdiabatic") + out_folders = os.path.join(test_folder, "VlasovPoissonAdiabatic") env = EnvironmentOptions(out_folders=out_folders, sim_folder="neutral_full_f") # n0 = 1 and T_e = p / n0 = beta |B0|^2 / 2 = 1 diff --git a/src/struphy/models/vlasov_poisson_electrostatic_adiabatic.py b/src/struphy/models/vlasov_poisson_adiabatic.py similarity index 98% rename from src/struphy/models/vlasov_poisson_electrostatic_adiabatic.py rename to src/struphy/models/vlasov_poisson_adiabatic.py index 25ea4aa1a..cff14c6b9 100644 --- a/src/struphy/models/vlasov_poisson_electrostatic_adiabatic.py +++ b/src/struphy/models/vlasov_poisson_adiabatic.py @@ -21,7 +21,7 @@ logger = logging.getLogger("struphy") -class VlasovPoissonElectrostaticAdiabatic(StruphyModel): +class VlasovPoissonAdiabatic(StruphyModel): r"""Electrostatic full-orbit (6D) model for a single ion species with adiabatic electrons. The full-orbit counterpart of :class:`~struphy.models.DriftKineticElectrostaticAdiabatic`: @@ -321,9 +321,9 @@ def doc_examples(cls): .. code-block:: python - from struphy.models import VlasovPoissonElectrostaticAdiabatic + from struphy.models import VlasovPoissonAdiabatic - model = VlasovPoissonElectrostaticAdiabatic() + model = VlasovPoissonAdiabatic() model.em_fields.phi model.kinetic_ions.var