-
Notifications
You must be signed in to change notification settings - Fork 16
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
'Maximum number of cells' parameter unused. #216
Comments
Have you changed the refinement strategy from |
I tried this now and the program enters what appears to be an infinite loop once max cells (here 10,000) is exceeded:
(this keeps going until I stop the program manually) At the end of this message I'll paste used_parameters.prm. Does anything look wrong? I'm new to the community and I don't see a way to attach a file (except for hosting it somewhere and linking to it); so please do let me know the appropriate way to share these things :) I haven't yet looked in to what's causing the loop, and it might be a while before I can take time to dig into this. As a side note: It seems odd to me that the "refinement strategy" would change whether or not the max_cells parameter is used. I would think the parameter should work for both the fraction and number strategies. Maybe I'm missing something. Is it just not implemented yet, or am I misunderstanding these strategies? Thanks for your help.
|
@alexanderzimmerman, I've updated your comment with proper style. When you need to include code snippets or text files use ``` before the first line of code and after the last one. RE the infinite loop, the point is that you have set a threshold for refinement that is quite small
and set a maximum number of cells that is not-so-big
Our solvers try to refine the mesh until the infinity norm of the error estimation is below the given threshold.
|
@asartori86, I don't understand your answer. What is the "maximum number of cells" parameter supposed to do? I have been moving forward with my "work-around" for the past couple of weeks, but currently it's my only difference from the master branch, so I'd like to figure this out. Thanks for your help :) Edit: To clarify, I essentially want to specify some maximum number of cells and some accuracy, and I want the code to adaptively refine the grid until either A. it exceeds the maximum number of cells or B. it meets the accuracy requirement. I think this is a typical capability that people would generally want. I think I could dig up a deal.II tutorial where they do this (unless I'm remembering it wrong). |
Update: I see the same behavior with the deal2lkit heat equation example. Is there a way for me to reference this pi-DoMUS issue directly if I raise the issue at the deal2lkit repo? |
@alexanderzimmerman , pi-DoMUS uses deal2lkit for this, so yes, this is how it goes. You can refer this issue by its html address in deal2lkit issues, and github will act automatically: #216 (this was obtained by copy-pasting the address). The deal2lkit interface is a wrapper to the functionality in deal.II. What you are asking is not implemented in deal.II, at the moment. The "maximum number of cells" is supposed to do exactly what it says, but not all strategies are supported in deal.II for this. Ideally what you want to achieve coincides with the goals of this class. As you found out, however, it is not trivial to put into practice what you suggest. For example, if you exceed the number of cells, what should happen next step? Should one increase the accuracy requirements? Should this be done automatically? If you don't increase the accuracy requirements, the refinement strategy will always propose something that breaks the first rule (# of cells). This is something that we should add, but so far we had no stringent need for this. If you come up with an idea to obtain this in a robust manner, please do provide a PR and we'll merge it in deal2lkit (pi-domus will pick it up automatically). |
Ps: @asartori86 , we should document this much better in deal2lkit. I'll open an issue. |
At least for the Poisson problem interface (I haven't tested others), the 'Maximum number of cells' parameter in the Refinement subsection appears to be unused. I mentioned this to @asartori86. who said he also experienced some issues with this parameter.
I already have made what I would call a "work around" rather than an ideal solution. I will request a pull, since I think that's clearer than explaining more here.
It's entirely possible that I'm just using pi-DoMUS incorrectly. Does this parameter work for anyone? Is there already a test that uses it successfully?
The text was updated successfully, but these errors were encountered: