-
Notifications
You must be signed in to change notification settings - Fork 0
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
Introduce metric parameters documentation #99
Conversation
* `hausdorff_number`: Spatial scale factor for the problem. Default: 0.01. | ||
* `boundary_tag`: Mesh boundary tag to restrict attention to during | ||
boundary-specific manipulations. Unset by default, which implies all | ||
boundaries are considered. (Note that this parameter does not currently exist |
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.
@jwallwork23 It might be good to add how this parameter currently interacts with a similar flag which can be set in a mesh originating from a .gmsh
, as Firedrake does seem to preserve that flag when communicating between PETSc and MMG. Is this a different flag altogether?
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.
This is a different flag. Small clarification in 7b4ec08. This flag is only currently used by the private method _enforce_variable_constraints
, which is called by the public method enforce_spd
.
animate/metric.py
Outdated
* `num_iterations`: Number of adaptation iterations in the parallel case. | ||
Default: 3. |
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 description leaves open the question of what happens in the non-parallel case. Is there only one adaptation iteration to the metric in the non-parallel case?
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.
See 8834c49.
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.
Thanks for this @jwallwork23! Minor comments from me :)
if self._plex.metricRestrictAnisotropyFirst(): | ||
raise NotImplementedError( | ||
"Restricting metric anisotropy first is not supported in Firedrake." | ||
) |
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.
This should be easy enough to implement (just tweak the arguments to the enforce_spd
call in the definition of normalise
). However, I'd prefer to address it in a separate issue rather than here, considering the impact with some tests.
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.
See #100.
You happy with the changes @ddundo? |
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.
Thanks @jwallwork23 :)
Closes #98.Fixes the issue with deep-copying metric parameters by always deep-copying these parameters upon setting them. (I can't think of a reason why you wouldn't want this.) Also moves some mechanics behind the scenes and provides a public interface tometric_parameters
.Edit: See discussion in the original issue.
Closes #31.
At long last!