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
Enable multiple objects, postprocs, transfers for FV variables #16115
Conversation
…est for ElementVariableValuePP. idaholab#16099
Job Precheck on 6e81f25 wanted to post the following: Your code requires style changes. A patch was auto generated and copied here
Alternatively, with your repository up to date and in the top level of your repository:
|
Regarding test questions - just make sure that ideally ~every modified chunk of code gets hit by at least one test - i.e. if you undo any single (substantive) change in this PR - you would want at least one test to break. |
Ok one test per base object should be able to do this then. I will add them soon. Thanks for the guidance |
Alright - are you ready for a review on this? |
Sure! EDIT Actually I used those in 2 different tests and the other did fine. I wonder what's special about this one. If the workaround is not satisfactory I think I would just fix stateful materials with FV. |
Job Documentation on 21e9e5a wanted to post the following: View the site here This comment will be updated on new commits. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks good. Just a couple minor things.
@@ -18,7 +18,15 @@ | |||
input = 'pps_old_value.i' | |||
exodiff = 'pps_old_value_out.e' | |||
|
|||
detail = 'at the end of each time step.' | |||
detail = 'at the end of each time step, for both FE and' |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
'... and FV.'
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
ok moved the and to the next detail.
Not sure where these go yet, I just copied what was being done in the file
[Postprocessors] | ||
[./diffusivity_average] | ||
type = InterfaceIntegralVariableValuePostprocessor | ||
interface_value_type = average | ||
variable = diffusivity_1 | ||
neighbor_variable = diffusivity_2 | ||
execute_on = TIMESTEP_END | ||
boundary = 'interface' | ||
[../] | ||
[./diffusivity_jump_primary_secondary] | ||
type = InterfaceIntegralVariableValuePostprocessor | ||
interface_value_type = jump_primary_minus_secondary | ||
variable = diffusivity_1 | ||
neighbor_variable = diffusivity_2 | ||
execute_on = TIMESTEP_END | ||
boundary = 'interface' | ||
[../] | ||
[./diffusivity_jump_secondary_primary] | ||
type = InterfaceIntegralVariableValuePostprocessor | ||
interface_value_type = jump_secondary_minus_primary | ||
variable = diffusivity_1 | ||
neighbor_variable = diffusivity_2 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think this input file can be combined with the average variable value postprocessor one. Just do type=${pp_type}
and then have a top-level pp_type = foo
parameter that you then set in the test spec file via the cli_args
param to be either InterfaceIntegralVariableValuePostprocessor or InterfaceAverageVariableValuePostrocessor.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
ok done.
I also did the same for the FE tests for consistency. Two less input files to download!
@@ -28,7 +28,15 @@ | |||
input = 'average_sample.i' | |||
exodiff = 'average_sample_out.e' | |||
|
|||
detail = 'as an average calculation.' | |||
detail = 'as an average calculation,' |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I do not understand what the detail writer on these tests was trying to do. These detail fragments don't mesh well with the group prefix. @aeslaughter - are detail comments suppose to not "finish" the group sentence each? Why do these end with "with" and "and"?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The requirement just needs to be cleaned up. I tend to write them as one complete sentence if possible.
requirement = "The system shall output data the"
detail = "ExodusII,"
detail = "CSV, and"
detail = "JSON formats."
This will render as:
The system shall output data the
(a) ExodusII,
(b) CSV, and
(c) JSON formats.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
the way I wrote the requirements should work either way?
8000835
to
bcddbab
Compare
ok lemme clean the mess with the gold. Ideally, I shouldnt need to re-gold those two I changed |
Use command line arguments to simplify interface value tests, idaholab#16099
bcddbab
to
21e9e5a
Compare
Ok should be good now, aside from the "detail" thing |
I'll wait for tests to finish before merging. |
I don't think the test failures have to do with this PR btw. Am I wrong? |
Job App tests (Non Conda) on 21e9e5a : invalidated by @GiudGiud Testing re-running a test |
Job Private App tests on 21e9e5a : invalidated by @GiudGiud Why are Relap7 and thm failing |
Job Mac Test on 21e9e5a : invalidated by @rwcarlsen |
There are 2 failing mastodon tests that look like they might be related to this. Mastodon lives on idaholab github. Why don't you check it out and see if you can reproduce the issue and confirm whether this PR causes it. |
They fail on my workstation with devel moose. |
Enable the following pp, user objects and transfers to work with FV variables:
Refs #16099, linked to #16069
For the user objects, they are bases for other user objects. Should I add tests with fv for all of them or just one?
For the fix in the phase field module, should I add a test? Not sure FV is used for phase field modeling.