freepooma-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

RE: [pooma-dev] [BUG] ScalarCode does not work for Arrays


From: James Crotinger
Subject: RE: [pooma-dev] [BUG] ScalarCode does not work for Arrays
Date: Wed, 15 Jan 2003 09:25:39 -0700

I don't think this makes sense. Engine is about data storage, not about spatial stuff, guards, etc., so I don't think it should have anything but "domain()".  Of course, I would say the same thing about Array - I don't know when Array acquired a physicalDomain(). I'm sure this was to simplify some generic code, but this could have been done with traits without making an unnecessary expansion of Array's interface.

Anyway, that's my 2 cents,

        Jim

-----Original Message-----
From: Richard Guenther [mailto:address@hidden]
Sent: Wednesday, January 15, 2003 6:56 AM
To: address@hidden
Subject: [pooma-dev] [BUG] ScalarCode does not work for Arrays

Hi!

Due to the mess (it seems to me...) of the different domain() access
functions for Arrays and Fields (namely physicalDomain() having different
semantics), ScalarCode does not work for Arrays.

To summarize:

Array.domain()         -> engine.domain()
                       -> layout->domain()
Array.physicalDomain() -> engine.domain()
                       -> layout->domain()
Array.totalDomain()    -> engine.domain()
                       -> layout->domain()

Field.domain()         -> fieldEngine.physicalDomain()
                       -> (effectively) layout->innerDomain()
Field.physicalDomain() -> fieldEngine.physicalDomain()
                       -> (effectively) layout->innerDomain()
Field.totalDomain()    -> fieldEngine.totalDomain()
                       -> (effectively) layout->baseDomain()
but all those dependend on centering (i.e. vertex vs. cell domains)

Layout.domain() == Layout.baseDomain()


So I propose to make Engine's domain access interface match FieldEngine's,
i.e. add Engine->physicalDomain(), make Array.physicalDomain() call that
and return Layout->innerDomain() for this.

Other suggestions?

Thanks, Richard.

--
Richard Guenther <address@hidden>
WWW: http://www.tat.physik.uni-tuebingen.de/~rguenth/


reply via email to

[Prev in Thread] Current Thread [Next in Thread]