Skip to content

Add support and documentation for aia_scale export processing (#122) - #199

Open
ghanashyam03 wants to merge 2 commits into
sunpy:mainfrom
ghanashyam03:aia-scale-support
Open

ghanashyam03 wants to merge 2 commits into
sunpy:mainfrom
ghanashyam03:aia-scale-support

Conversation

@ghanashyam03

Copy link
Copy Markdown

Description

Closes #122

When requesting calibrated Level 1.5 SDO/AIA data from JSOC via the export system, users can specify the aia_scale_aialev1 processing step. Currently, drms only serialized processing options when given keyword arguments (key=value), but commands like aia_scale_aialev1 can be run without extra options, or with options like mpt=aia.master_pointing3h.

This PR improves export processing handling in HttpJsonClient._exp_request_url:

  • Allows passing a single processing command name as a string (e.g. process="aia_scale_aialev1"), in addition to dictionaries and lists.
  • Allows dictionary values to be None or empty dicts when no sub-arguments are needed (e.g. process={"aia_scale_aialev1": None}).
  • Supports sequences containing strings, (name, options) tuples, or single-key dicts.
  • Gracefully handles the legacy {None: None} workaround pattern without emitting None=None.
  • Adds unit tests in drms/tests/test_json.py covering URL query construction for these combinations.
  • Adds an end-to-end example (examples/aia_scale_export_request.py) and tutorial documentation in docs/tutorial.rst demonstrating how to request calibrated AIA data.
  • Adds a towncrier changelog entry (changelog/122.feature.rst).

This branch has not been deployed

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

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Add an example and documents about how to use the aia_scale option to export AIA lev1.5 data from JSOC through drms

1 participant