On Thu, 10 May 2012, John Peterson wrote:

On Thu, May 10, 2012 at 4:37 PM, Roy Stogner <royst...@ices.utexas.edu> wrote:

So, 2.:  Do we create FEAbstract, which doesn't include *phi* data or
get_*phi* methods, then derive FEBase and FEVectorBase from it?  Or do
we just add get_vec_*phi* methods (and vec_*phi data) to FEBase?

The former sounds pretty good.

Might make it a little inconvenient to switch between FEBase and
FEVectorBase *within the same code* but how often are you mixing
scalar and vector FE types with the same assembly loop?

Right.  Utility codes would need to be changed (e.g. I have a code for
visualizing smoothed gradients of arbitrary restart files) before they
could handle loading systems with vector-valued FE spaces, but app
codes wouldn't encounter such a space unless the app itself created
it.

Some of the library code will need modification (anything that uses
projections, either for their own sake or to calculate constraints),
and I'm still trying to figure out if there's a smooth way to do
vector/scalar-independent ErrorEstimator code.

Would e.g. the FEMSystem hold a pointer to FEAbstract and then
dynamically allocate the proper underlying derived type based on what
the types of variables were added?

FEMContext, you mean?  In hindsight we shouldn't be exposing
element_fe etc. without hiding them behind accessors.  We'll probably
have to have leave those targets as FEBase* for backwards
compatibility, but add FEVectorBase* map/vector structures for any
vector-valued variables, possibly along with proper accessor methods
for newer codes to use.
---
Roy
------------------------------------------------------------------------------
Live Security Virtual Conference
Exclusive live event will cover all the ways today's security and 
threat landscape has changed and how IT managers can respond. Discussions 
will include endpoint security, mobile security and the latest in malware 
threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
_______________________________________________
Libmesh-devel mailing list
Libmesh-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/libmesh-devel

Reply via email to