Thank you, John,

at least now we are on the same page.

Let me tell you what I'm doing, and hopefully you can suggest an effective way 
without using protected methods.

I'm solving a Newmark system with vector finite elements (Nedelec elements).

I need to compute solution, curl of the solution and derivative over time of 
the solution at a specific set of points for every time step.

To do so I pre-compute local coordinates of the points, then I do something 
like this:

 FEGenericBase<RealGradient>* fe_new = 
fecontext.cached_fe<RealGradient>(elem->dim(), fe_type);
 fe_new->reinit (elem, &(local_points));

After this I have access to fe_new->get_phi() and can compute all what I need.

What would you suggest?

Thank you,

Michael.

On 3/21/2019 9:08 AM, John Peterson wrote:


On Thu, Mar 21, 2019 at 7:59 AM John Peterson 
<[email protected]<mailto:[email protected]>> wrote:


On Wed, Mar 20, 2019 at 11:47 PM Povolotskyi, Mykhailo 
<[email protected]<mailto:[email protected]>> wrote:
Dear LibMesh developers,

in the documentation 
http://libmesh.github.io/doxygen/classlibMesh_1_1FEMContext.html#ab308f0ea12c91d002e896e0217d3c3c9


the method cached_fe is public.

In the release 1.4.0 it is protected.

Your link doesn't go to the cached_fe() implementation for me, and as far as I 
can tell, the cached_fe() interface was added as a protected member function in 
this commit:

commit 6a9f9060f5596085b9801c5caeafc4d19d1fc54a
Author: Roy H. Stogner 
<[email protected]<mailto:[email protected]>>
Date:   Mon Oct 2 12:59:34 2017 -0500

    Cache FEMContext::point_value() FE Objects

    This really ought to be redone entirely, but hopefully we can get a
    little performance improvement right away by just avoiding de and
    reallocations.

and it's never been public.

OK, after scrolling up, it looks like cached_fe does show up among the other 
public APIs in doxygen:

https://drive.google.com/file/d/1JqJCROKxhsU084JPgShsIY6haCKUzP2G/view?usp=sharing

but I'd chalk that up to a bug in Doxygen... this function has always been 
protected AFAICT.

--
John


_______________________________________________
Libmesh-users mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/libmesh-users

Reply via email to