I have a question about FEMSystem::init_context and inherited instances like NavierSystem::init_context from example 18. Why is it necessary to call get_JxW(), get_phi(), etc? In FEMSystem::assembly() this is only called once before we have actually started looping over any elements. Furthermore, all of the get_* functions are actually called again in the appropriate *_time_derivative, and *_constraint functions. I believe they are appropriate in this latter case because a specific element has been specified at this point. I tried commenting out this block of code in ex18, and it doesn't appear to break anything. Can anyone explain if and what the purpose of this code is?

Thanks,
-- 
Truman Ellis