Skip to content

Refactor permission substitution to do all substitutions at once#436

Closed
cmacmackin wants to merge 74 commits into
cmacmackin/access_controlfrom
cmacmackin/refactor_permission_substitution
Closed

Refactor permission substitution to do all substitutions at once#436
cmacmackin wants to merge 74 commits into
cmacmackin/access_controlfrom
cmacmackin/refactor_permission_substitution

Conversation

@cmacmackin

Copy link
Copy Markdown
Collaborator

This was a suggestion made by @ZedThree when review #421. I thought I saw a way to do this but it proved to be quite involved. By the time I realised that I was most of the way done so I decided to keep the work on a separate branch just in case we wanted to use it for something. However, I think this approach is actually less flexible and ultimately more complex. For example, it is now harder to predict the order in which substitutions occur. This means that if there are two substitutions that will ultimately result in the same variable name we don't know which one will be kept.

@cmacmackin cmacmackin force-pushed the cmacmackin/refactor_permission_substitution branch from e3b61b2 to 43b78ec Compare December 9, 2025 15:20
@cmacmackin cmacmackin force-pushed the cmacmackin/access_control branch from 05b64e5 to e302db2 Compare December 9, 2025 18:05
cmacmackin and others added 27 commits December 9, 2025 19:11
I've specified that these tests are for the Braginskii closure. I've
also renamed the existing collision tests accordingly. This will be
useful when we add alternative closures in future.

I've also caught an error in the existing collisions operator, which
means it will sometimes assume that a species is charged if the
`charge` variable has been set to 0 (rather than left unsent).
Unit tests have been updated and pass. I still need to update the
regression tests.
Co-authored-by: Peter Hill <peter.hill@york.ac.uk>
cmacmackin and others added 24 commits December 9, 2025 19:22
All unit and integration tests pass, but many components are
untested. There may be errors in their permissions.
Also added an additional constructor for SpeciesInfo
Co-authored-by: Peter Hill <peter.hill@york.ac.uk>
@cmacmackin cmacmackin force-pushed the cmacmackin/access_control branch from e302db2 to 3b76f8f Compare December 9, 2025 19:24
@cmacmackin cmacmackin force-pushed the cmacmackin/refactor_permission_substitution branch from 43b78ec to a2c4f80 Compare December 9, 2025 19:54
@cmacmackin cmacmackin force-pushed the cmacmackin/access_control branch from 3b76f8f to a79db98 Compare December 11, 2025 11:58
@cmacmackin

Copy link
Copy Markdown
Collaborator Author

It was agreed that this didn't make sense as a change.

@cmacmackin cmacmackin closed this Dec 12, 2025
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.

1 participant