Re: [petsc4py] What should be the 'default' communicator?
You have to do what you have to do; if this is the only way then it is the only way, so I have to live with it. Barry On Aug 26, 2008, at 8:54 AM, Lisandro Dalcin wrote:
On Tue, Aug 26, 2008 at 10:24 AM, Barry Smith <[email protected]> wrote:
This seems a fundamental stupidity of python. Why can't you make this PETSc thing be a python class where the default_comm is a property?
In general, such approach is not convenient. Modules are tightly releated to 'import' statements. Modules provide a 'namespace' for all stuff you put inside them.
Barry, see my current inplementation:
from petsc4py import PETSc
saved_comm = PETSc.Sys.getDefaultComm() PETSc.Sys.setDefaultComm(PETSc.COMM_SELF) # do stuff.... PETSc.Sys.setDefaultComm(saved_comm)
Do it looks too bad?. I do not expect this pattern to be used all over user code. Trying to hack/emulate what you want (using a class instance) will complicate too much the implementation, and the final result could be 'unnatural' for end users. For example,
from petsc4py.PETSc import Vec, Mat
is expected to work, but that will not work if 'PETSc' is a class instance.
-- Lisandro Dalc�n --------------- Centro Internacional de M�todos Computacionales en Ingenier�a (CIMEC) Instituto de Desarrollo Tecnol�gico para la Industria Qu�mica (INTEC) Consejo Nacional de Investigaciones Cient�ficas y T�cnicas (CONICET) PTLC - G�emes 3450, (3000) Santa Fe, Argentina Tel/Fax: +54-(0)342-451.1594
participants (1)
-
Barry Smith