-
Notifications
You must be signed in to change notification settings - Fork 44
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
Jint surfing #88
Jint surfing #88
Conversation
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.
Please remove the scripts for submitting jobs. Also remove output files like surf_AT2_Gc2L0.35del1.16_dt1e-2_J5b_14523984
.
Directly writing to standard streams (like std::cout) is prohibited. You can use them in your local branch for debugging purposes, but remember to remove those in a PR. |
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.
Overall looks good. I suggest we start from cleaning up some unused comments. Then we can double check the implementation.
I have cleaned unused comments and complete the necessary comments. But I did not make changes that will cause further changing in input deck. Were they changed, all of the input deck must be changed. I cannot guarantee a same result. The problem right now is not with kumar's model, but j integral in general. In the folder /benchmark/AT2surfing, there is input deck for surfing boundary problem under AT-2 without irreversibility (with irreversibility commented). The problem right now is that in the AT-2 model, with smaller mesh size, it still cannot return a close value to Gc. |
... the number of changes made is still very large. I think it is because i rm your examples. I thought that is a way not to track the change in it. |
The number of lines of addition is huge because you've checked in many exodus files -- remove those. |
recovered benchmark examples. |
Fantastic, thanks. |
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.
We are getting close. I think I found the cause of your J-R curve issue.
Also, please enforce clang-format -- most long equations are pretty unreadable right now. If you need help setting up clang-format just let me know.
Here is a decision for you to make: if you only want to demonstrate the usage of J-integral in this PR, then all you need are the source code for the J-integral postprocessor and one tutorial input file. If you also want to check in the Kumar model, then in addition to the source code that you have checked in, I also need to see at least one regression test/tutorial that demonstrates its usage. I'm fine with both, it's up to you. |
You can see why the tests are failing if you click on
|
COPY FROM MOOSE WEBPAGE: Referencing Issues |
If you don't find a relevant issue, you can create your own. Then you can modify your commit message to reference that issue. |
For example, is the input deck already committed in this folder enough to be a tutorial input file for simply J integral? I do also want to check the kumar model, since I have already committed the object and it cannot return a Jintegral value close to that of AT2. I want to know what kind of test is good enough as a regression test. can surfing boundary value problem serve as a regression test? we know the expected speed of the crack propagation but the result need to be obtained from paraview. |
Yes.
You might have misunderstood the meaning of regression test. Regression test is used to ensure consistency, not for correctness. Take a look at other files in the tutorials folder, each tutorial has its own |
I did misunderstand the regression test. But for now, since we are not updating our moose, is one tutorial file, say kumar's model with surfing BVP, enough for kumar's usage? |
Yes, that's sufficient. It will demonstrate the usage of both the J integral post processor and the nucleation model. |
Just ping me when you think this PR is ready for review. |
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.
Caught a few more minor things.
It is ready for review now. I have made modifications to most of the issues mentioned above. I still keep the J2 and F_surface in the object GeneralizedExternalForce because it will be useful for debuging. They will not be stored in the future. The surfing boundary condition did not change. |
I am not sure it will pass the checks. I need to run for the bus now |
Thanks, this is getting really close now. The "Travis CI" test fails because of documentation failure -- some classes are missing documentations. Let's discuss about the boundary condition in tomorrow's group meeting. A few minor things:
As a reminder, to build documentation on your own machine:
|
Hey Bo, have you had a chance to address those comments? If you need help with anything just let me know. |
I was not on it this week. My Mac machine became slow again and I have to focus on one task. It is slow even just typing on Github page. My laptop is back and I am preparing it back to work. I will be back on this soon. |
Okay no worries -- wasn't pushing you. |
Do you accept a kumar's that might be wrongly implemented? I am still looking for the reason I cannot have Jintegral = Gc. |
It's not related to the nucleation model, is it? You've shown that J isn't exactly equal to Gc even with standard AT1 or AT2. |
But I do remember that when I tried the surfing problem, I got J = Gc for a purely elastic case. Let me play with it and see if I can reproduce what I had before. |
How do I remove this redundant moose safely? |
564f73a
to
bc3ba50
Compare
How long should this step usually take? |
I install the most up-to-date clang format 11 on my Mac machine and tried clang-format the src code of GeneralizedExternalDrivingForce.C. The result is the same as the one which got rejected by this clang-format check in the first place. So it was not the problem of my clang-format version. There has to be some setting in clang format that should not be default value. I also tried format by hand and it solved most of the problem. It is ready for review. |
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.
Some minor naming questions and code suggestions.
doc/content/source/materials/GeneralizedExternalDrivingForce.md
Outdated
Show resolved
Hide resolved
I just pushed three commits cleaning up everything. Take a look at the changes I made -- if you are fine with those then this PR is good to go. I was mostly making minor style changes. But one mistake I noticed is that you named the test specification |
I would also like to thank you for your contribution! It is hard for everyone to make their first pull request. Hopefully you've learnt something from this PR. You should definitely be proud of this work! |
@milljm This is the PR waiting for CIVET tests. |
f813af2
to
3fbb027
Compare
Yeah, I think those modifications are great. Thank you for being so patient with this PR! I did learned a lot! |
A negative J2 invariant should never happen again. But I have not yet found out why the J integral over the boundary does not approach the value of the prescribed Gc.
In the folder /benchmark/AT2surfing, there are input deck for surfing boundary problem under AT-2 without irreversibility. As a standard phase-field fracture problem it still cannot return a close value to Gc.