summaryrefslogtreecommitdiff
path: root/doc/source/f2py/array_session.dat
diff options
context:
space:
mode:
Diffstat (limited to 'doc/source/f2py/array_session.dat')
-rw-r--r--doc/source/f2py/array_session.dat112
1 files changed, 67 insertions, 45 deletions
diff --git a/doc/source/f2py/array_session.dat b/doc/source/f2py/array_session.dat
index 069530d03..714c03651 100644
--- a/doc/source/f2py/array_session.dat
+++ b/doc/source/f2py/array_session.dat
@@ -1,65 +1,87 @@
>>> import arr
->>> from numpy import array
->>> print arr.foo.__doc__
-foo - Function signature:
- a = foo(a,[overwrite_a])
-Required arguments:
- a : input rank-2 array('d') with bounds (n,m)
-Optional arguments:
- overwrite_a := 0 input int
-Return objects:
- a : rank-2 array('d') with bounds (n,m)
+>>> from numpy import asfortranarray
+>>> print(arr.foo.__doc__)
+a = foo(a,[overwrite_a])
->>> a=arr.foo([[1,2,3],
-... [4,5,6]])
-copied an array using PyArray_CopyFromObject: size=6, elsize=8
->>> print a
+Wrapper for ``foo``.
+
+Parameters
+----------
+a : input rank-2 array('d') with bounds (n,m)
+
+Other Parameters
+----------------
+overwrite_a : input int, optional
+ Default: 0
+
+Returns
+-------
+a : rank-2 array('d') with bounds (n,m)
+
+>>> a = arr.foo([[1, 2, 3],
+... [4, 5, 6]])
+created an array from object
+>>> print(a)
[[ 1. 3. 4.]
[ 3. 5. 6.]]
->>> a.iscontiguous(), arr.has_column_major_storage(a)
-(0, 1)
->>> b=arr.foo(a) # even if a is proper-contiguous
-... # and has proper type, a copy is made
-... # forced by intent(copy) attribute
-... # to preserve its original contents
-...
-copied an array using copy_ND_array: size=6, elsize=8
->>> print a
+>>> a.flags.c_contiguous
+False
+>>> a.flags.f_contiguous
+True
+# even if a is proper-contiguous and has proper type,
+# a copy is made forced by intent(copy) attribute
+# to preserve its original contents
+>>> b = arr.foo(a)
+copied an array: size=6, elsize=8
+>>> print(a)
[[ 1. 3. 4.]
[ 3. 5. 6.]]
->>> print b
+>>> print(b)
[[ 1. 4. 5.]
[ 2. 5. 6.]]
->>> b=arr.foo(a,overwrite_a=1) # a is passed directly to Fortran
-... # routine and its contents is discarded
+>>> b = arr.foo(a, overwrite_a = 1) # a is passed directly to Fortran
+... # routine and its contents is discarded
...
->>> print a
+>>> print(a)
[[ 1. 4. 5.]
[ 2. 5. 6.]]
->>> print b
+>>> print(b)
[[ 1. 4. 5.]
[ 2. 5. 6.]]
->>> a is b # a and b are actually the same objects
-1
->>> print arr.foo([1,2,3]) # different rank arrays are allowed
-copied an array using PyArray_CopyFromObject: size=3, elsize=8
+>>> a is b # a and b are actually the same objects
+True
+>>> print(arr.foo([1, 2, 3])) # different rank arrays are allowed
+created an array from object
[ 1. 1. 2.]
->>> print arr.foo([[[1],[2],[3]]])
-copied an array using PyArray_CopyFromObject: size=3, elsize=8
-[ [[ 1.]
- [ 3.]
- [ 4.]]]
+>>> print(arr.foo([[[1], [2], [3]]]))
+created an array from object
+[[[ 1.]
+ [ 1.]
+ [ 2.]]]
>>>
>>> # Creating arrays with column major data storage order:
-...
->>> s = arr.as_column_major_storage(array([[1,2,3],[4,5,6]]))
-copied an array using copy_ND_array: size=6, elsize=4
->>> arr.has_column_major_storage(s)
-1
->>> print s
+ ...
+>>> s = asfortranarray([[1, 2, 3], [4, 5, 6]])
+>>> s.flags.f_contiguous
+True
+>>> print(s)
[[1 2 3]
[4 5 6]]
->>> s2 = arr.as_column_major_storage(s)
+>>> print(arr.foo(s))
+>>> s2 = asfortranarray(s)
>>> s2 is s # an array with column major storage order
# is returned immediately
-1
+True
+>>> # Note that arr.foo returns a column major data storage order array:
+ ...
+>>> s3 = ascontiguousarray(s)
+>>> s3.flags.f_contiguous
+False
+>>> s3.flags.c_contiguous
+True
+>>> s3 = arr.foo(s3)
+copied an array: size=6, elsize=8
+>>> s3.flags.f_contiguous
+True
+>>> s3.flags.c_contiguous
+False