-
-
Couldn't load subscription status.
- Fork 24
Functionality for volumetric coupling on quadrature points of a mesh #146
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
base: develop
Are you sure you want to change the base?
Conversation
…nd remove the old file associated with it
|
The tutorial cases to be added via precice/tutorials#653 tests this functionality. |
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 first comments, I have not yet checked if it works with the given tutorial.
If #135 is needed for precice/tutorials#653, how can precice/tutorials#653 be a test case for this reduced version? How would the behavior change?
How easy would it be to implement another, simpler tutorial, such as https://precice.org/tutorials-volume-coupled-diffusion.html?
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 assume that these two files contain changes compared to the original CalculiX files. A comment on the modifications would be very helpful when porting to later versions.
Was the functionality provided by the deleted file never needed, or is it just substituted by the two new files?
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 assume that these two files contain changes compared to the original CalculiX files. A comment on the modifications would be very helpful when porting to later versions.
Yes, the contents of both the new Fortran files is essentially copied from the CalculiX source code. Additionally I put some of my own code in there. I will add comments in the file.
Was the functionality provided by the deleted file never needed, or is it just substituted by the two new files?
The functionality in the deleted file was not used. I tried to use it, but the Gauss point coordinates returned by it were not correct. Hence the decision to remove the file and add two separate files for two different elements. it id worth noting that in the future, these two files can be merged.
|
I think I did not frame my initial comment correctly. This PR contains a part of the functionality which together with the contents of #135 can be used to run the two-scale notch tutorial case. Standalone this PR cannot be tested, because we do not have a volumetric coupling case with CalculiX. We can either decide to merge this PR based on a code review, or think about adding a simple volumetric coupling tutorial case. I can look up the CalculiX tutorials to try to find a case which we can easily modify. |
|
In principle, we could merge this without a test case, hoping that someone (else?) in the future might pick into that again. But I foresee a lot of "theoretically, it supports volume coupling, but we have no example / do not really know". I would suggest to think a bit more of a simple tutorial case, ideally reusing one of the current ones, even if it does not have physical motivation. |
Actually the follow-up PR to this would be #135 which uses the functionality. I simply extracted the functionality from that PR to keep features separate and have a better git history.
Let me think a bit more about this. |
|
By the way, we should also extend the documentation of the adapter to mention the exact capabilities and limitations of this. |
Yes. Right now the documentation is in precice/precice.github.io#530. I can extract the parts relevant for this PR and prepare a new PR for the website. |
It actually looks like that PR would be ready to merge if only it shifted a bit from the multiscale to the general volume coupling perspective, showing multiscale as one example. |
I will change the language in that PR then, so we can proceed to merging it. I would also recommend merging this PR then. |
This PR consists of the functionality to detect quadrature points of a provided mesh and define them as coupling vertices. The functionality is extracted from #135 because it is deemed to be sufficient as a standalone feature. Quadrature points of a mesh having C3D8 (Hex) or C3D4 (Tet) elements can be detected. In the future, more types of elements can be supported by extending this functionality.