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

[Global Params] sss2_input #175

Open
gwenchee opened this issue Oct 15, 2021 · 6 comments
Open

[Global Params] sss2_input #175

gwenchee opened this issue Oct 15, 2021 · 6 comments

Comments

@gwenchee
Copy link
Contributor

gwenchee commented Oct 15, 2021

sss2_input is a boolean input to determine if the user is using serpent or scale group constants, and depending on which one, a different formula is used to calculate the jac due to the fact that scale's scattering matrix is a transpose of serpent's in

if (_sss2_input)

However, with the introduction of openmc group constants in #174, we need to update this input variable to include openmc as well. OpenMC will use the same jac calculation as Serpent.

I suggest changing the variable name to scale_input that accepts a boolean. True = scale, False = serpent and openmc

@gwenchee
Copy link
Contributor Author

However, changing the name makes it not backward compatible. Should we just leave it as sss2_input? But update the Moltres documentation to use sss2_input = True for openmc as well?

@gwenchee
Copy link
Contributor Author

@munkm suggests to name the variable gtransfxs_inverted. gtransfxs_inverted = True will be used for SCALE and gtransfxs_inverted = False will be used for OpenMC and Serpent. To ensure backward capability, I will enable Moltres to also accept sss2_input but not both.

@gwenchee
Copy link
Contributor Author

@smpark7 what do you think?

@smpark7
Copy link
Collaborator

smpark7 commented Oct 19, 2021

Yea we should move away from using sss2_input since we're adding support for OpenMC-generated cross sections. Having gtransfxs_inverted = True for SCALE could be misleading because the gtransfxs term originates from SCALE, while its equivalents in Serpent and OpenMC are named SP0 and ScatterProbabilityMatrix. So we may wanna have gtransfxs_inverted = True apply for Serpent and OpenMC? I could also look into using MOOSE's in-built deprecation system to indicate to users that sss2_input is deprecated while still accepting it.

@gwenchee
Copy link
Contributor Author

Oh I see, ya makes sense. I'll implement gtransfxs_inverted = False for SCALE and gtransfxs_inverted = True for OpenMC and Serpent.

Yeah if you could give me any pointers about MOOSE's in-built deprecation system, that would be great

@smpark7
Copy link
Collaborator

smpark7 commented Oct 19, 2021

Unfortunately, there's no official guide for their deprecation system. I'm not too familiar with it either.

I found an example which could be useful. The MOOSE team transitioned from calling their diffusion coefficient from D_name to diffusivity in the MatDiffusionBase Material class here. Among other things, they introduced checks in lines 84-85 and 96 which use the isParamValid function to check which parameter the user provided.

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

No branches or pull requests

3 participants