On Dec 6, 2012, at 2:18 PM, Derek Gaston <[email protected]> wrote:
> On Thu, Dec 6, 2012 at 1:08 PM, Kirk, Benjamin (JSC-EG311)
> <[email protected]> wrote:
> Looks like in the System we always assume any SCALAR values were added last,
> and that we can have only one. As such, a VariableGroup with multiple SCALAR
> types makes no sense (under current assumptions) right? If you need more
> SCALARs you up the oder, not append more - seems to be my reading of what is
> there presently.
>
> Mostly trying to grok the Variable::first_scalar_number() business.
>
> I don't think that's right - we have multiple SCALAR variables here... each
> of arbitrary order (things like Lagrange multipliers for contact and "joints"
> in 1D flow and fully-coupled ODE systems).
>
> Derek
Gotcha. I was misinterpreting this
inline
unsigned int System::n_components() const
{
if (_variables.empty())
return 0;
const Variable& last = _variables.back();
return last.first_scalar_number() + last.n_components();
}
as meaning you only have one SCALAR and it is the last in the list.
...but rather through the magic of recursion when building up
first_scalar_number() it is only necessary to interrogate the last variable in
the list.
-Ben
------------------------------------------------------------------------------
LogMeIn Rescue: Anywhere, Anytime Remote support for IT. Free Trial
Remotely access PCs and mobile devices and provide instant support
Improve your efficiency, and focus on delivering more value-add services
Discover what IT Professionals Know. Rescue delivers
http://p.sf.net/sfu/logmein_12329d2d
_______________________________________________
Libmesh-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/libmesh-devel