.. _userguide: Userguide ========= This guide takes you through the classes used in Struphy launch files generated by:: struphy params MODEL for a valid ``MODEL`` from the list of :ref:`models`. All information for running simulations are contained and can be altered in such launch (parameter) files. It is recommended to generate such a file and inspect it with an editor like VScode (using a type checker like "mypy"). :ref:`pproc` is discussed at the end of this section. Basic options ------------- .. autoclass:: struphy.io.options.EnvironmentOptions .. autoclass:: struphy.io.options.BaseUnits .. autoclass:: struphy.io.options.Time Simulation domains ------------------ See :ref:`avail_mappings`. Fluid backgrounds ----------------- See :ref:`equils_avail`. Grids ----- .. autoclass:: struphy.topology.grids.TensorProductGrid :show-inheritance: Derham complex -------------- .. autoclass:: struphy.io.options.DerhamOptions Models ------ See :ref:`models`. Species types ^^^^^^^^^^^^^ Each Struphy model is a collection of species of one of the following types: .. autoclass:: struphy.models.species.FieldSpecies .. autoclass:: struphy.models.species.FluidSpecies .. autoclass:: struphy.models.species.ParticleSpecies .. automethod:: struphy.models.species.Species.set_phys_params Variable types ^^^^^^^^^^^^^^ Each species can contain multiple variables. .. autoclass:: struphy.models.variables.PICVariable .. autoclass:: struphy.models.variables.FEECVariable .. autoclass:: struphy.models.variables.SPHVariable Setting particle parameters --------------------------- .. automethod:: struphy.models.species.ParticlesSpecies.set_markers .. automethod:: struphy.models.species.ParticlesSpecies.set_sorting_boxes .. automethod:: struphy.models.species.ParticlesSpecies.set_save_data .. autoclass:: struphy.pic.utilities.LoadingParameters .. autoclass:: struphy.pic.utilities.WeightsParameters .. autoclass:: struphy.pic.utilities.BoundaryParameters .. autoclass:: struphy.pic.utilities.BinningPlot .. autoclass:: struphy.pic.utilities.KernelDensityPlot Setting backgrounds ------------------- .. automethod:: struphy.models.variables.FEECVariable.add_background .. automethod:: struphy.models.variables.PICVariable.add_background .. automethod:: struphy.models.variables.SPHVariable.add_background .. autoclass:: struphy.io.options.FieldsBackground Adding perturbations -------------------- .. automethod:: struphy.models.variables.FEECVariable.add_perturbation .. automethod:: struphy.models.variables.SPHVariable.add_perturbation .. autoclass:: struphy.initial.base.Perturbation See available :ref:`perturbations`. Setting initial conditions -------------------------- .. automethod:: struphy.models.variables.PICVariable.add_initial_condition For :class:`~struphy.models.variables.FEECVariable` and :class:`~struphy.models.variables.SPHVariable` the initial condition is automatically created as the sum of background + perturbation. .. _pproc: Post-processing --------------- .. automodule:: struphy.main :members: :exclude-members: run