-
Notifications
You must be signed in to change notification settings - Fork 708
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
Enhance VectorTools::project #12699
Enhance VectorTools::project #12699
Conversation
Overall, this looks pretty good to me. Some remarks:
|
Thanks for your remarks!
Unfortunately, the library is not yet compiling due to some undefined references to |
Just to comment on this aspect as I don't have time at the moment to go deeper into the other comments: I believe it would be good if could create a variant of our matrix-free loops (and possibly operator classes) that can handle arbitrary numbers of components by concatenating scalar evaluations one after the other. Our class |
@kronbichler In its generality I would like such a variant as for the fe_degree, but I can also live with applying my changes locally. For me an more interesting issue would be (if it is one) allowing |
@masterleinad If I see it correctly we can maybe just adapt the test from the simplex-case? |
/rebuild |
It should be straightforward to create MPI parallel versions of
|
One of the
Can you investigate? The |
Of course I will try to find it out. However, I am out of office for the next few week. |
Any news? |
Sorry! I haven't had time for it in the last few weeks because I still have some deadlines to meet. But I would like to improve that. |
@gfcas ? |
I know this is still open, but I don't have time for it currently, unfortunately. I would still like to contribute. |
This PR is outdated. I will try to review the current version of VectorTools and contribute maybe some single elements of this PR in a new one. |
Since there is now matrix-free+hp support, the
VectorTools::project
functions might be updated in order to increase the capabilities. As I use a similar function to project the gradients of a given finite element function I tried to revise the current implementation ofVectorTools::project
. In the following a short list of changes:VectorTools::internal::project_matrix_free()
the finite element degree as-1
to theMatrixFreeOperators::MassOperator
the documentation, which says 'the degree of FiniteElement is less than nine', can be removed.I have also some questions:
VectorTools::internal::project
we check if we could use the matrix-free implementation by askingis_supported()
andn_base_elements()==1
. Looking intodeal.II/matrix_free/shape_info.templates.h
I assume that the linesjust ask
Am I wrong?
hp::QCollection<dim> quadrature_mf
inproject_matrix_free()
?FE_Nothing
element. As I see it correctly indeal.II/matrix_free/shape_info.templates.h
, this element is not supported and thus theproject
function would switch to the generic matrix-based implementation. However, then it is not possible to use ap::d::Tria
? Wouldn't this be a desirable feature?And some possible remaining TODOs: