@@ -22,7 +22,6 @@ public class Data extends ArrayFire {
2222
2323 private native static long createIdentityArray (int [] dims , int type );
2424
25-
2625 public static float [] getFloatArray (Array A ) throws Exception {
2726 A .assertType (Array .FloatType );
2827 return getFloatFromArray (A .ref );
@@ -53,44 +52,29 @@ public static boolean[] getBooleanArray(Array A) throws Exception {
5352 return getBooleanFromArray (A .ref );
5453 }
5554
56- // Binary operations
57- public static Array randu (int [] dims , int type ) throws Exception {
58- int [] adims = Array .dim4 (dims );
59- long ref = createRanduArray (adims , type );
60- if (ref == 0 )
61- throw new Exception ("Failed to create Array" );
62- return new Array (ref );
55+ // Binary operations
56+ public static void randu (Array res , int [] dims , int type ) throws Exception {
57+ int [] adims = Array .dim4 (dims );
58+ res .set (createRanduArray (adims , type ));
6359 }
6460
65- public static Array randn (int [] dims , int type ) throws Exception {
66- int [] adims = Array .dim4 (dims );
67- long ref = createRandnArray (adims , type );
68- if (ref == 0 )
69- throw new Exception ("Failed to create Array" );
70- return new Array (ref );
61+ public static void randn (Array res , int [] dims , int type ) throws Exception {
62+ int [] adims = Array .dim4 (dims );
63+ res .set (createRandnArray (adims , type ));
7164 }
7265
73- public static Array constant (double val , int [] dims , int type ) throws Exception {
74- int [] adims = Array .dim4 (dims );
75- long ref = createConstantsArray (val , adims , type );
76- if (ref == 0 )
77- throw new Exception ("Failed to create Array" );
78- return new Array (ref );
66+ public static void constant (Array res , double val , int [] dims , int type ) throws Exception {
67+ int [] adims = Array .dim4 (dims );
68+ res .set (createConstantsArray (val , adims , type ));
7969 }
8070
81- public static Array identity (int [] dims , int type ) throws Exception {
82- int [] adims = Array .dim4 (dims );
83- long ref = createIdentityArray (adims , type );
84- if (ref == 0 ) {
85- throw new Exception ("Failed to create Array" );
86- }
87- return new Array (ref );
71+ public static void identity (Array res , int [] dims , int type ) throws Exception {
72+ int [] adims = Array .dim4 (dims );
73+ res .set (createIdentityArray (adims , type ));
8874 }
8975
90- public static Array identity (int [] dims ) throws Exception {
91- int [] adims = Array .dim4 (dims );
92- long ref = createIdentityArray (adims , Array .FloatType );
93- return new Array (ref );
76+ public static void identity (Array res , int [] dims ) throws Exception {
77+ identity (res , dims , Array .FloatType );
9478 }
9579
9680}
0 commit comments