[PATCH-PING] Re: [pooma-dev] Problem with Field::makeOwnCopy() and Relations
Richard Guenther
rguenth at tat.physik.uni-tuebingen.de
Thu May 29 22:18:17 UTC 2003
What about this patch? It fixes the problem with makeOwnCopy() on
multi-centering fields for me.
Richard.
On Wed, 21 May 2003, Richard Guenther wrote:
> On Wed, 21 May 2003, Richard Guenther wrote:
>
> > Hi!
> >
> > We have a problem with Field::makeOwnCopy() and Relations in case of
> > a Field with multiple subfields. Consider
> >
> > Field_t f(canonicalCentering(FaceType, Continuous), ...);
> > Pooma::addAllConstantFaceBC(f, 0.0);
> > Field_t g(f);
> > g.makeOwnCopy();
> >
> > now in FieldEngine::makeOwnCopy() we get passed g as target s and do
> >
> > ...
> > data(m, c).relations().makeOwnCopy(s);
> > ...
> >
> > i.e. we retarget all the subfields relation to the base field g which
> > the relation later chokes on with an assert.
>
> It seems it does. Tested with Fields, Ok?
>
> Richard.
>
> ===== FieldEngine.h 1.4 vs edited =====
> --- 1.4/r2/src/Field/FieldEngine/FieldEngine.h Thu Jan 30 12:11:07 2003
> +++ edited/FieldEngine.h Wed May 21 17:04:26 2003
> @@ -606,7 +606,7 @@
> {
> data(m, c) = model[m*stride_m + c];
> data(m, c).engine().makeOwnCopy();
> - data(m, c).relations().makeOwnCopy(s);
> + data(m, c).relations().makeOwnCopy(s.subField(m, c));
> }
> }
> }
>
More information about the pooma-dev
mailing list