> So here's a simple question I should have come up with years ago: Why
> do we suggest *Explicit*System for storing element data? That system
> allocates a rhs vector for use in solve(), but if you're only wanting
> to store (and project, distribute, read/write...) data fields then the
> rhs is just a slight waste of memory.
Because I always thought of no matrix being good enough, and an abuse of
inheritance I guess.
> A couple small changes are enough to make System itself a
> constructable class. Should I commit those, or am I missing some
> reason for making System an abstract base class?
I can't think of any. I originally only thought of systems as being good
for solving a problem, and using them to stash data was an afterthought.
But it is something that has become exceptionally useful, and what you
propose seems logical.