Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

(Feature Suggestion): Time integrated full diagnostics #4251

Open
PhysicsDan opened this issue Aug 30, 2023 · 3 comments
Open

(Feature Suggestion): Time integrated full diagnostics #4251

PhysicsDan opened this issue Aug 30, 2023 · 3 comments
Labels
component: diagnostics all types of outputs enhancement New feature or request help wanted Extra attention is needed

Comments

@PhysicsDan
Copy link
Contributor

Hello,

I could have missed it but I didn't notice anyway in the documentation to get time integrated full diagnostic outputs. If an output is integrated for $\lambda_L / c$ prior to a dump this would remove the oscillating laser component from the output (e.g. the accelerating field / the particle energy).

It was suggested in the gitter that the FieldProbe in the Reduced Diagnostics could be used, at least for the fields, as it can be integrated from simulation start and output two

It would be useful to have something implemented with the full diagnostics so we can make use of the openpmd files.

Thanks for the help,
Daniel

@aodhanmci
Copy link

hi @ax3l , I think you said that the feature existed but maybe isn't documented?

@ax3l ax3l added enhancement New feature or request question Further information is requested component: diagnostics all types of outputs help wanted Extra attention is needed and removed question Further information is requested labels Oct 9, 2023
@ax3l
Copy link
Member

ax3l commented Oct 9, 2023

Hi @PhysicsDan , @aodhanmci ,

This would be great feature, yes. Correct, FieldProbes are currently the only way to integrate fields for output - note that the flexible syntax for the start-to-end allows to select your integration period flexibly: https://warpx.readthedocs.io/en/latest/usage/parameters.html#intervals-parser

We will add this to our potential list of intern topics and keep it as up-for-graps developer topics.

In the meantime, a quick way to implement this could be by running WarpX from Python and adding additional diagnostics fields via pyAMReX. There is no concrete example of this use case yet, but there are multiple Python WarpX "PICMI" input scripts here and examples for pyAMReX on https://pyamrex.readthedocs.io

The workflow would be:

  • Use a PICMI WarpX input script to run.
  • Register a callback that allocates additional diagnostics fields during / after the input phase.
  • Register a Python callback per time step that copies/adds the data to the respective diagnostics fields.
  • Output data via openPMD-api' s Python bindings.

@PhysicsDan
Copy link
Contributor Author

Hi @ax3l,

Great thanks for all the information. I will look into adding additional diagnostics with pyAMREX for the time being.

Cheers,
Daniel

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
component: diagnostics all types of outputs enhancement New feature or request help wanted Extra attention is needed
Projects
None yet
Development

No branches or pull requests

3 participants