Skip to content

Commit eb95a97

Browse files
committed
Adding Function for compatibility
1 parent 5aa785e commit eb95a97

File tree

3 files changed

+15
-6
lines changed

3 files changed

+15
-6
lines changed

examples/darray.py

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
import numpy as np
22
from mpi4py import MPI
33
from mpi4py_fft.pencil import Subcomm
4-
from mpi4py_fft.distributedarray import DistributedArray, getDarray
4+
from mpi4py_fft.distributedarray import DistributedArray, getDarray, Function
55
from mpi4py_fft.mpifft import PFFT
66

77
# Test DistributedArray. Start with alignment in axis 0, then tranfer to 1 and
@@ -26,7 +26,8 @@
2626

2727
print(z3.local_slice(), z3.substart, z3.commsizes)
2828

29-
v0 = getDarray(fft, forward_output=False, rank=1)
29+
#v0 = getDarray(fft, forward_output=False, rank=1)
30+
v0 = Function(fft, forward_output=False, rank=1)
3031
v0[:] = np.random.random(v0.shape)
3132
v0c = v0.copy()
3233
v1 = getDarray(fft, forward_output=True, rank=1)

mpi4py_fft/distributedarray.py

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -40,7 +40,7 @@ class DistributedArray(np.ndarray):
4040
4141
"""
4242
def __new__(cls, global_shape, subcomm=None, val=None, dtype=np.float,
43-
buffer=None, alignment=None, rank=0):
43+
buffer=None, alignment=None, rank=0, **kw):
4444

4545
if isinstance(subcomm, Subcomm):
4646
pass
@@ -248,3 +248,11 @@ def getDarray(pfft, forward_output=True, val=0, rank=0):
248248

249249
return DistributedArray(global_shape, subcomm=p0.subcomm, val=val,
250250
dtype=dtype, rank=rank)
251+
252+
def Function(*args, **kwargs):
253+
import warnings
254+
warnings.warn("Function() is deprecated; use getDarray().", FutureWarning)
255+
if 'tensor' in kwargs:
256+
kwargs['rank'] = 1
257+
del kwargs['tensor']
258+
return getDarray(*args, **kwargs)

mpi4py_fft/utilities/h5py_file.py

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -75,11 +75,11 @@ def write(self, step, fields, **kw):
7575
Example
7676
-------
7777
>>> from mpi4py import MPI
78-
>>> from mpi4py_fft import PFFT, HDF5File, Function
78+
>>> from mpi4py_fft import PFFT, HDF5File, getDarray
7979
>>> comm = MPI.COMM_WORLD
8080
>>> T = PFFT(comm, (15, 16, 17))
81-
>>> u = Function(T, forward_output=False, val=1)
82-
>>> v = Function(T, forward_output=False, val=2)
81+
>>> u = getDarray(T, forward_output=False, val=1)
82+
>>> v = getDarray(T, forward_output=False, val=2)
8383
>>> f = HDF5File('h5filename.h5', T)
8484
>>> f.write(0, {'u': [u, (u, [slice(None), 4, slice(None)])],
8585
... 'v': [v, (v, [slice(None), 5, 5])]})

0 commit comments

Comments
 (0)