Skip to content

update binning plugin domain info docs #5660

Open
ikbuibui wants to merge 3 commits intoComputationalRadiationPhysics:devfrom
ikbuibui:binningDocs
Open

update binning plugin domain info docs #5660
ikbuibui wants to merge 3 commits intoComputationalRadiationPhysics:devfrom
ikbuibui:binningDocs

Conversation

@ikbuibui
Copy link
Copy Markdown
Contributor

Improves documentation on how to use the domain info object to get positions in the binning plugin.

@ikbuibui ikbuibui added this to the 0.9.0 / next stable milestone Mar 24, 2026
@ikbuibui ikbuibui added documentation regarding documentation or wiki discussions CI:no-compile CI is skipping compile/runtime tests but runs PICMI tests labels Mar 24, 2026
Copy link
Copy Markdown
Contributor

@chillenzer chillenzer left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It's a great improvement, thanks! But I found some minor points for discussion before we can merge.

Comment on lines 45 to 47
* @brief Provides knowledge of the simulation domain to the user
* Names and concept are described at
* https://github.com/ComputationalRadiationPhysics/picongpu/wiki/PIConGPU-domain-definitions
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This doesn't render correctly in the docs. Please either put a colon at the end of the first line or figure out how to separate them in the docs (maybe a blank line in between)?

Comment on lines +136 to +139
.. code-block:: cpp

getParticlePosition<DomainOrigin, PositionPrecision, PositionUnits>()

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Why wouldn't those be doxygenclass:: (or rather the equivalent for functions) as well? Same for getCellIndex of course.

Comment on lines +157 to +187
Domain origin
^^^^^^^^^^^^^

The reference origin for returned positions is selected with ``DomainOrigin``:

The available origins are:

.. doxygenenum:: picongpu::plugins::binning::DomainOrigin

Position precision
^^^^^^^^^^^^^^^^^^

For particle positions, the precision is selected with ``PositionPrecision``.

The available precisions are:

.. doxygenenum:: picongpu::plugins::binning::PositionPrecision

Position units
^^^^^^^^^^^^^^

The output units for positions are selected with ``PositionUnits``.

The available units are:

.. doxygenenum:: picongpu::plugins::binning::PositionUnits

.. note::

Using positions in SI/PIC units introduces floating point numerical errors and may be especially problematic when using the ``TOTAL`` origin with moving window, because floating-point precision decreases as the distance from the origin increases.

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

You should probably say something about the return type of getParticlePosition because it is not quite obvious that/how it changes depending on which parameters you pass.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

CI:no-compile CI is skipping compile/runtime tests but runs PICMI tests documentation regarding documentation or wiki discussions

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants