Hi,
These can very well be very naive questions, since
I am relatively new to this - apologies..:
I am trying to write a pde solver
for a 3D problem.
Multi-array seems like a very natural choice for a data
structure to store the functtion values.
The method I am trying to use is
operrator splitting.
This amounts to solving a tridiagonal system for each
dimension in sequence.
Suppose then that I have a MA( M, N, L ):
It is
highly desirable to maintain this xyz (let's call it) "logical" system of
reference
since incorporation of boundary conditions and stencil
calculations would be
conceptually straightforward -otherwise very
complicated. The idea being that, I would
then have the tridiagonal
opertator ( and rhs) in the "rotated" system and all other calculations
in
the "logical" one.
Therefore, I need some fascility to rotate my MA,
from the xyz to yzx etc (cyclically).
Is there functionality ( as a view to
the data ) that would allow me to do this off-the-shelve?
Also, a couple
of other points:
-If I wanted to use views to subgrids, in parallelized
calculations, are there memory allocations that
happen under the hood for
which I should worry (for performance)?
-Is a one dimensional MA
usable?
-Are there adapters between 2D MAs and uBlas matrices?
Thank
you very much for your help in
advance!
P-