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/explain expression #224

Open
wants to merge 6 commits into
base: master
Choose a base branch
from

Conversation

mgyoo86
Copy link
Contributor

@mgyoo86 mgyoo86 commented Dec 19, 2024

Summary

This PR is to "explain" the detailed procedures when executing onetime or dynamic expressions in dd, which is to address the issue raised from the code camp (see Backend/user interace section in ProjectTorreyPines/FUSE.jl#786).

The more details and examples are described in the following PR:
ProjectTorreyPines/FUSE.jl#794

Dependency / Related PRs

This change depends on related PR in the IMASdd package to fully function:
ProjectTorreyPines/IMASdd.jl#47

Note

  • CI might fail until dependent PRs are merged.
  • Once the dependent changes are integrated, this PR should work as expected.

@orso82
Copy link
Member

orso82 commented Dec 19, 2024

@mgyoo86 I ❤️ this! It's amazing!! You always manage to convey back to the user a lot of information in a very clear way :)

I wonder if the expr_info.jl file should live under IMASdd.jl, since that's where the base functionality of the expressions is implemented.

@mgyoo86
Copy link
Contributor Author

mgyoo86 commented Dec 20, 2024

@orso82 I am glad that you like this feature, and thanks for saying highly :)

I've tried to move expr_info.jl to under the IMASdd.jl, but the @store_expr macro defined in expr_info.jl does not work as expected.
The issue seems to be the different scopes of @store_expr, such that it is defined in the IMASdd scope but used in the IMAS scope, leading to some tricky conflict.

Hence, at the moment, I think we can allow expr_info.jl to live in the IMAS package, like onetime.jl and dynamic.jl.
FYI, if I move all three files (expr_info.jl, onetime.jl, dynamic.jl) to under the IMASdd, the new macros work as expected, except for some expressions that use functions defined in IMAS package.
So for now, it seems safe to set all three files as bound to the IMAS package.

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.

2 participants