aspect icon indicating copy to clipboard operation
aspect copied to clipboard

Add CPO DRex computation

Open MFraters opened this issue 2 years ago • 2 comments

Add initial D-Rex code as close as possible to the ASPECT CPO/ D-Rex paper, but with a different random number generator. This also already include the fabric selector based on Karato 2008.

I had to think a bit about the structure to both keep the main code and unit test code reasonable. I also thought about generalizing the current 4 slip planes to n slip planes (it is an actual use case), but I think it is better to leave that for now as it should not be hard to do later.

I also added a CPO cite tag to the initialization and the references to the ASPECT CPO/D-Rex paper. Since D-Rex is a crucial part of it, I am considering also adding the 2 D-Rex papers to the list of requested citations. Is there any policy on that?

(point 2 in #3885)

MFraters avatar Oct 06 '22 14:10 MFraters

Hey @tjhei, Thanks for the review! I think I have addressed all your comments. Based on some of your comments I realized that it would probably be better to do some more groundwork for the generalization from 4 slip systems to n slip systems.

MFraters avatar Oct 10 '22 18:10 MFraters

@tjhei I have addressed your comments. I removed some of the repetition in the description of the enum and added some text to explain the difference between the deformation type and the deformation type selector. Can you take a look to see whether the text is more clear now?

MFraters avatar Oct 12 '22 21:10 MFraters

Can you please at least add one test model that uses the new functionality. In particular there were typos in input parameters that were not caught, because no test actually uses the whole D-REX calculation together (the existing tests use the passive case without fabric evolution).

This is a bit of a problem of cutting up a pull request this much. I have tests for this which depend on other parts (need at least the postprocessor). That is why I put it as a separate point (point 9) in the tracking issue #3885. What do you think is the best way to move forward on this?

And about the typos in the input parameters, don't worry, they are also definitely in the input files of the tests ;)

MFraters avatar Oct 20 '22 22:10 MFraters

(the existing tests use the passive case without fabric evolution).

There is a unit test which tests 2 different computations of the derivatives with an actual fabric (one of which I computed a analytic solution of the derivatives by hand). The adding computation of these derivatives is the core part of this pull request, since it is what the D-Rex algorithm essentially is.

MFraters avatar Oct 20 '22 23:10 MFraters

@gassmoeller Thanks for the review! I have addressed all your comments. I have left the comment I thought would be good for you to read if my reply is satisfactory unresolved.

MFraters avatar Oct 24 '22 21:10 MFraters