ruby-dcl 1.7.1 → 1.8.2
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +5 -5
- data/ChangeLog +1149 -365
- data/LICENSE.txt +1 -1
- data/Rakefile +7 -11
- data/demo/gokuraku/hop/hop.rb +1 -2
- data/demo/gokuraku/jump/jump1.rb +1 -2
- data/demo/gokuraku/jump/jump2.rb +2 -3
- data/demo/gokuraku/layout/lay1.rb +1 -2
- data/demo/gokuraku/layout/lay2.rb +1 -2
- data/demo/gokuraku/step/step0.rb +1 -2
- data/demo/gokuraku/step/step1.rb +1 -2
- data/demo/gokuraku/step/step2.rb +1 -2
- data/demo/gokuraku/u1d/u1d1.rb +1 -2
- data/demo/gokuraku/u1d/u1d2.rb +1 -2
- data/demo/gokuraku/u2d/u2d1.rb +1 -2
- data/demo/gokuraku/u2d/u2d2.rb +1 -2
- data/demo/gokuraku/u2d/u2d3.rb +1 -2
- data/demo/gokuraku/u2d/u2d4.rb +1 -2
- data/demo/grph1/scpack/scpkt2.rb +1 -2
- data/demo/grph1/scpack/scpkt3.rb +1 -2
- data/demo/grph1/scpack/scpkt6.rb +1 -2
- data/demo/grph1/scpack/scpkt7.rb +1 -2
- data/demo/grph1/scpack/scpkt8.rb +1 -2
- data/demo/grph1/sgpack/sgfont.rb +2 -3
- data/demo/grph1/sgpack/sgfonz.rb +2 -3
- data/demo/grph1/sgpack/sgksx1.rb +1 -2
- data/demo/grph1/sgpack/sgksx2.rb +1 -2
- data/demo/grph1/sgpack/sgksx3.rb +1 -2
- data/demo/grph1/sgpack/sglidx.rb +1 -2
- data/demo/grph1/sgpack/sgltyp.rb +1 -2
- data/demo/grph1/sgpack/sgpk01.rb +1 -2
- data/demo/grph1/sgpack/sgpk02.rb +1 -2
- data/demo/grph1/sgpack/sgpk03.rb +1 -2
- data/demo/grph1/sgpack/sgpk04.rb +1 -2
- data/demo/grph1/sgpack/sgpk05.rb +1 -2
- data/demo/grph1/sgpack/sgpk06.rb +1 -2
- data/demo/grph1/sgpack/sgpk07.rb +9 -8
- data/demo/grph1/sgpack/sgpk08.rb +1 -2
- data/demo/grph1/sgpack/sgpk09.rb +1 -2
- data/demo/grph1/sgpack/sgpk10.rb +1 -2
- data/demo/grph1/sgpack/sgtclr.rb +1 -2
- data/demo/grph1/sgpack/sgtone.rb +1 -2
- data/demo/grph1/sgpack/sgtonz.rb +1 -2
- data/demo/grph1/slpack/slpk01.rb +1 -2
- data/demo/grph1/slpack/slpk02.rb +1 -2
- data/demo/grph1/slpack/slpk03.rb +1 -2
- data/demo/grph1/slpack/slpk04.rb +2 -3
- data/demo/grph2/grpack/grpk01.rb +1 -2
- data/demo/grph2/ucpack/ucpk01.rb +1 -2
- data/demo/grph2/ucpack/ucpk02.rb +1 -2
- data/demo/grph2/udegpk/u2df01.rb +1 -2
- data/demo/grph2/udegpk/u2df02.rb +1 -2
- data/demo/grph2/udegpk/u2df03.rb +3 -4
- data/demo/grph2/udegpk/u2df04.rb +1 -2
- data/demo/grph2/udegpk/u2df05.rb +1 -2
- data/demo/grph2/udegpk/u2df06.rb +1 -2
- data/demo/grph2/udegpk/u2df07.rb +1 -2
- data/demo/grph2/udegpk/u2df08.rb +1 -2
- data/demo/grph2/udegpk/u2df09b.rb +0 -1
- data/demo/grph2/udegpk/u2df09c.rb +0 -1
- data/demo/grph2/udegpk/u2df09e.rb +0 -1
- data/demo/grph2/udegpk/u2df09f.rb +0 -1
- data/demo/grph2/uipack/uipk01.rb +1 -2
- data/demo/grph2/uipack/uipk02.rb +26 -18
- data/demo/grph2/uipack/uipk03.rb +50 -0
- data/demo/grph2/ulpack/ulpk01.rb +1 -2
- data/demo/grph2/ulpack/ulpk01n.rb +1 -2
- data/demo/grph2/ulpack/ulpk02.rb +1 -2
- data/demo/grph2/ulpack/ulpk02n.rb +1 -2
- data/demo/grph2/umpack/test01.rb +1 -2
- data/demo/grph2/umpack/test02.rb +1 -2
- data/demo/grph2/umpack/test03.rb +1 -2
- data/demo/grph2/umpack/test04.rb +2 -3
- data/demo/grph2/umpack/test05.rb +1 -2
- data/demo/grph2/umpack/test05r.rb +86 -0
- data/demo/grph2/umpack/test06.rb +1 -2
- data/demo/grph2/umpack/test07.rb +1 -2
- data/demo/grph2/umpack/test08.rb +1 -2
- data/demo/grph2/umpack/test10.rb +0 -1
- data/demo/grph2/umpack/umpk01.rb +1 -2
- data/demo/grph2/umpack/umpk02.rb +1 -2
- data/demo/grph2/umpack/umpk03.rb +1 -2
- data/demo/grph2/umpack/umpk04.rb +1 -2
- data/demo/grph2/umpack/umpk05.rb +1 -2
- data/demo/grph2/uspack/uspk01.rb +1 -2
- data/demo/grph2/uspack/uspk02.rb +1 -2
- data/demo/grph2/uspack/uspk03.rb +1 -2
- data/demo/grph2/uspack/uspk04.rb +1 -2
- data/demo/grph2/uspack/uspk05.rb +1 -2
- data/demo/grph2/uspack/uspk06.rb +2 -3
- data/demo/grph2/uspack/uspk07.rb +1 -2
- data/demo/grph2/uspack/uspk08.rb +2 -3
- data/demo/grph2/uspack/uspk09.rb +1 -2
- data/demo/grph2/uspack/uspk10.rb +1 -2
- data/demo/grph2/uspack/uspk11.rb +1 -2
- data/demo/grph2/uspack/uspk12.rb +1 -2
- data/demo/grph2/uupack/uupk01.rb +1 -2
- data/demo/grph2/uupack/uupk02.rb +1 -2
- data/demo/grph2/uupack/uupk03.rb +1 -2
- data/demo/grph2/uupack/uupk04.rb +1 -2
- data/demo/grph2/uupack/uupk05.rb +1 -2
- data/demo/grph2/uupack/uupk06.rb +1 -2
- data/demo/grph2/uupack/uupk07.rb +1 -2
- data/demo/grph2/uxyzpk/uxyz01.rb +1 -2
- data/demo/grph2/uxyzpk/uxyz02.rb +1 -2
- data/demo/grph2/uxyzpk/uxyz03.rb +1 -2
- data/demo/grph2/uxyzpk/uxyz04.rb +1 -2
- data/demo/grph2/uxyzpk/uxyz05.rb +1 -2
- data/demo/grph2/uxyzpk/uxyz06.rb +1 -2
- data/demo/grph2/uxyzpk/uxyz07.rb +1 -2
- data/demo/grph2/uxyzpk/uxyz08.rb +1 -2
- data/demo/grph2/uxyzpk/uxyz09.rb +1 -2
- data/demo/grph2/uxyzpk/uxyz10.rb +1 -2
- data/demo/grph2/ximage/ximg01.rb +2 -3
- data/demo/math1/clsplib/cslb01.rb +1 -2
- data/demo/math2/fftlib/fftl01.rb +1 -2
- data/demo/math2/fftlib/fftl02.rb +1 -2
- data/demo/math2/intrlib/intr01.rb +1 -2
- data/demo/math2/rnmlib/rnml01.rb +1 -2
- data/demo/math2/vstlib/vstl01.rb +1 -2
- data/demo/math2/vstlib/vstl02.rb +1 -2
- data/demo/misc2/tmpack/tmpk01.rb +46 -0
- data/demo/misc2/tmpack/tmpk02.rb +58 -0
- data/demo/misc2/tmpack/tmpk03.rb +56 -0
- data/demo/rakuraku/color/color1.rb +1 -2
- data/demo/rakuraku/color/color2.rb +5 -5
- data/demo/rakuraku/color/color3.rb +1 -2
- data/demo/rakuraku/kihon/kihon1.rb +1 -2
- data/demo/rakuraku/kihon/kihon2.rb +1 -2
- data/demo/rakuraku/kihon/kihon3.rb +1 -2
- data/demo/rakuraku/kihon/kihon4.rb +1 -2
- data/demo/rakuraku/kihon/kihon5.rb +1 -2
- data/demo/rakuraku/kihon/kihon6.rb +1 -2
- data/demo/rakuraku/kihon/kihon7.rb +10 -5
- data/demo/rakuraku/kihon/kihon8.rb +1 -2
- data/demo/rakuraku/kihon/kihon9.rb +1 -2
- data/demo/rakuraku/kihon/kihona.rb +1 -2
- data/demo/rakuraku/kihon/kihonb.rb +12 -11
- data/demo/rakuraku/kihon/kihonc.rb +1 -2
- data/demo/rakuraku/layout/lay1.rb +1 -2
- data/demo/rakuraku/layout/lay2.rb +1 -2
- data/demo/rakuraku/layout/lay3.rb +1 -2
- data/demo/rakuraku/map3d/map3d1.rb +1 -2
- data/demo/rakuraku/map3d/map3d2.rb +1 -2
- data/demo/rakuraku/map3d/map3d3.rb +1 -2
- data/demo/rakuraku/map3d/map3d4.rb +1 -2
- data/demo/rakuraku/map3d/map3d5.rb +1 -2
- data/demo/rakuraku/map3d/map3d6.rb +0 -1
- data/demo/rakuraku/map3d/map3d7.rb +0 -1
- data/demo/rakuraku/miss/miss1.rb +1 -2
- data/demo/rakuraku/miss/miss2.rb +1 -2
- data/demo/rakuraku/quick/quick1.rb +1 -2
- data/demo/rakuraku/quick/quick2.rb +1 -2
- data/demo/rakuraku/quick/quick3.rb +1 -2
- data/demo/rakuraku/quick/quick4.rb +1 -2
- data/demo/rakuraku/quick/quick5.rb +1 -2
- data/demo/rakuraku/u2d/u2d1.rb +1 -2
- data/demo/rakuraku/u2d/u2d2.rb +1 -2
- data/demo/rakuraku/u2d/u2d3.rb +1 -2
- data/demo/rakuraku/u2d/u2d4.rb +1 -2
- data/demo/rakuraku/u2d/u2d5.rb +1 -2
- data/demo/rakuraku/u2d/u2d6.rb +1 -2
- data/demo/rakuraku/u2d/u2d7.rb +1 -2
- data/demo/rakuraku/uspack/uspac1.rb +2 -3
- data/demo/rakuraku/uspack/uspac2.rb +1 -2
- data/demo/rakuraku/uspack/uspac3.rb +2 -3
- data/demo/rakuraku/uspack/uspac4.rb +1 -2
- data/demo/rakuraku/uxyz/uxyz1.rb +1 -2
- data/demo/rakuraku/uxyz/uxyz2.rb +1 -2
- data/demo/rakuraku/uxyz/uxyz3.rb +1 -2
- data/demo/rakuraku/uxyz/uxyz4.rb +1 -2
- data/demo/rakuraku/uxyz/uxyz5.rb +1 -2
- data/demo/rakuraku/uxyz/uxyz6.rb +1 -2
- data/demo/rakuraku/uxyz/uxyz7.rb +1 -2
- data/demo/rakuraku/uxyz/uxyz8.rb +1 -2
- data/demo/rubydcloriginal/uemrkz1.rb +0 -1
- data/ext/numru/dcl_cary2obj.c +29 -24
- data/ext/numru/dcl_narrayed_funcs.c +21 -21
- data/ext/numru/dcl_obj2cary.c +9 -5
- data/ext/numru/dcl_rubydcloriginal.c +14 -5
- data/ext/numru/extconf.rb +73 -61
- data/ext/numru/grph1_csgi.c +38 -8
- data/ext/numru/grph1_scpack.c +49 -46
- data/ext/numru/grph1_sgpack.c +167 -164
- data/ext/numru/grph1_slpack.c +23 -20
- data/ext/numru/grph1_stpack.c +44 -41
- data/ext/numru/grph1_swpack.c +155 -92
- data/ext/numru/grph2_grpack.c +22 -19
- data/ext/numru/grph2_ucpack.c +55 -52
- data/ext/numru/grph2_udpack.c +61 -58
- data/ext/numru/grph2_uepack.c +60 -57
- data/ext/numru/grph2_ugpack.c +49 -46
- data/ext/numru/grph2_uhpack.c +25 -22
- data/ext/numru/grph2_uipack.c +57 -54
- data/ext/numru/grph2_ulpack.c +59 -56
- data/ext/numru/grph2_umpack.c +75 -72
- data/ext/numru/grph2_uspack.c +97 -94
- data/ext/numru/grph2_uupack.c +78 -75
- data/ext/numru/grph2_uvpack.c +25 -22
- data/ext/numru/grph2_uwpack.c +30 -27
- data/ext/numru/grph2_uxpack.c +23 -20
- data/ext/numru/grph2_uypack.c +23 -20
- data/ext/numru/grph2_uzpack.c +69 -66
- data/ext/numru/init.c.default +6 -2
- data/ext/numru/math1_blklib.c +13 -10
- data/ext/numru/math1_chrlib.c +16 -13
- data/ext/numru/math1_clsplib.c +13 -10
- data/ext/numru/math1_fnclib.c +16 -13
- data/ext/numru/math1_gnmlib.c +21 -18
- data/ext/numru/math1_gt2dlib.c +18 -15
- data/ext/numru/math1_ifalib.c +18 -15
- data/ext/numru/math1_indxlib.c +24 -21
- data/ext/numru/math1_intlib.c +13 -10
- data/ext/numru/math1_lrllib.c +33 -30
- data/ext/numru/math1_maplib.c +14 -11
- data/ext/numru/math1_oslib.c +11 -8
- data/ext/numru/math1_rfalib.c +39 -36
- data/ext/numru/math1_rfblib.c +12 -9
- data/ext/numru/math1_sublib.c +13 -10
- data/ext/numru/math1_syslib.c +82 -79
- data/ext/numru/math1_vialib.c +31 -28
- data/ext/numru/math1_viblib.c +24 -21
- data/ext/numru/math1_vralib.c +31 -28
- data/ext/numru/math1_vrblib.c +24 -21
- data/ext/numru/math1_xfclib.c +12 -9
- data/ext/numru/math2_fftlib.c +28 -25
- data/ext/numru/math2_intrlib.c +11 -8
- data/ext/numru/math2_rnmlib.c +12 -9
- data/ext/numru/math2_shtlib.c +34 -31
- data/ext/numru/math2_vstlib.c +15 -12
- data/ext/numru/misc1_chnlib.c +12 -9
- data/ext/numru/misc1_datelib.c +36 -33
- data/ext/numru/misc1_fmtlib.c +10 -7
- data/ext/numru/misc1_misclib.c +11 -8
- data/ext/numru/misc1_randlib.c +13 -10
- data/ext/numru/misc1_timelib.c +20 -17
- data/ext/numru/misc2_tmpack.c +1200 -0
- data/lib/numru/dcl/dcl.rb +5676 -0
- data/lib/numru/dcl/version.rb +5 -0
- data/lib/numru/dcl.rb +6 -5580
- data/ruby-dcl.gemspec +13 -9
- metadata +25 -99
- data/.gitignore +0 -13
- data/.rspec +0 -2
- data/.travis.yml +0 -3
- data/GenWrapper/Makefile +0 -15
- data/GenWrapper/cproto2init.rb +0 -41
- data/GenWrapper/dcl_narrayed_funcs.rb +0 -181
- data/GenWrapper/dcl_rb_footing +0 -29
- data/GenWrapper/dcl_rb_heading +0 -123
- data/GenWrapper/def.rb +0 -20
- data/GenWrapper/elim_ary_size.rb +0 -398
- data/GenWrapper/etc/p_header +0 -64
- data/GenWrapper/pparse.rb +0 -137
- data/GenWrapper/proto/Makefile +0 -36
- data/GenWrapper/proto/grph1_00 +0 -17
- data/GenWrapper/proto/grph1_csgi.fp +0 -27
- data/GenWrapper/proto/grph1_scpack.fp +0 -442
- data/GenWrapper/proto/grph1_sgpack.fp +0 -1772
- data/GenWrapper/proto/grph1_slpack.fp +0 -316
- data/GenWrapper/proto/grph1_stpack.fp +0 -455
- data/GenWrapper/proto/grph1_swpack.fp +0 -826
- data/GenWrapper/proto/grph2_00 +0 -16
- data/GenWrapper/proto/grph2_grpack.fp +0 -139
- data/GenWrapper/proto/grph2_ucpack.fp +0 -522
- data/GenWrapper/proto/grph2_udpack.fp +0 -692
- data/GenWrapper/proto/grph2_uepack.fp +0 -601
- data/GenWrapper/proto/grph2_ugpack.fp +0 -436
- data/GenWrapper/proto/grph2_uhpack.fp +0 -246
- data/GenWrapper/proto/grph2_uipack.fp +0 -508
- data/GenWrapper/proto/grph2_ulpack.fp +0 -516
- data/GenWrapper/proto/grph2_umpack.fp +0 -676
- data/GenWrapper/proto/grph2_uspack.fp +0 -989
- data/GenWrapper/proto/grph2_uupack.fp +0 -663
- data/GenWrapper/proto/grph2_uvpack.fp +0 -246
- data/GenWrapper/proto/grph2_uwpack.fp +0 -203
- data/GenWrapper/proto/grph2_uxpack.fp +0 -295
- data/GenWrapper/proto/grph2_uypack.fp +0 -295
- data/GenWrapper/proto/grph2_uzpack.fp +0 -574
- data/GenWrapper/proto/math1_00 +0 -12
- data/GenWrapper/proto/math1_blklib.fp +0 -58
- data/GenWrapper/proto/math1_chrlib.fp +0 -83
- data/GenWrapper/proto/math1_clsplib.fp +0 -74
- data/GenWrapper/proto/math1_fnclib.fp +0 -79
- data/GenWrapper/proto/math1_gnmlib.fp +0 -118
- data/GenWrapper/proto/math1_gt2dlib.fp +0 -144
- data/GenWrapper/proto/math1_ifalib.fp +0 -123
- data/GenWrapper/proto/math1_indxlib.fp +0 -222
- data/GenWrapper/proto/math1_intlib.fp +0 -46
- data/GenWrapper/proto/math1_lrllib.fp +0 -276
- data/GenWrapper/proto/math1_maplib.fp +0 -24
- data/GenWrapper/proto/math1_oslib.fp +0 -28
- data/GenWrapper/proto/math1_rfalib.fp +0 -420
- data/GenWrapper/proto/math1_rfblib.fp +0 -51
- data/GenWrapper/proto/math1_sublib.fp +0 -60
- data/GenWrapper/proto/math1_syslib.fp +0 -767
- data/GenWrapper/proto/math1_vialib.fp +0 -339
- data/GenWrapper/proto/math1_viblib.fp +0 -264
- data/GenWrapper/proto/math1_vralib.fp +0 -339
- data/GenWrapper/proto/math1_vrblib.fp +0 -264
- data/GenWrapper/proto/math1_xfclib.fp +0 -68
- data/GenWrapper/proto/math2_00 +0 -12
- data/GenWrapper/proto/math2_fftlib.fp +0 -803
- data/GenWrapper/proto/math2_intrlib.fp +0 -32
- data/GenWrapper/proto/math2_odelib.fp_notused +0 -568
- data/GenWrapper/proto/math2_rnmlib.fp +0 -54
- data/GenWrapper/proto/math2_shtlib.fp +0 -1292
- data/GenWrapper/proto/math2_vstlib.fp +0 -84
- data/GenWrapper/proto/misc1_00 +0 -17
- data/GenWrapper/proto/misc1_chnlib.fp +0 -47
- data/GenWrapper/proto/misc1_datelib.fp +0 -352
- data/GenWrapper/proto/misc1_fmtlib.fp +0 -19
- data/GenWrapper/proto/misc1_misclib.fp +0 -26
- data/GenWrapper/proto/misc1_randlib.fp +0 -50
- data/GenWrapper/proto/misc1_timelib.fp +0 -151
- data/GenWrapper/proto2c.rb +0 -13
- data/GenWrapper/prototype.rb +0 -209
- data/GenWrapper/util.rb +0 -9
- data/GenWrapper/variable.rb +0 -671
- data/README +0 -29
- data/ToDo +0 -2
- data/bin/console +0 -14
- data/bin/setup +0 -7
- data/demo/grph2/ximage/MEMO +0 -23
- data/obsolete/README +0 -2
- data/obsolete/dcl_ext.html +0 -112
- data/obsolete/dcl_ext.rb +0 -313
data/ext/numru/math1_vrblib.c
CHANGED
@@ -1,10 +1,9 @@
|
|
1
1
|
/*
|
2
|
-
* $Id
|
2
|
+
* $Id$
|
3
3
|
*/
|
4
4
|
|
5
5
|
#include <stdio.h>
|
6
6
|
#include "ruby.h"
|
7
|
-
#include "libtinyf2c.h"
|
8
7
|
#include "narray.h"
|
9
8
|
#include "cdcl.h"
|
10
9
|
|
@@ -15,6 +14,10 @@
|
|
15
14
|
|
16
15
|
#define DFLT_SIZE 32
|
17
16
|
|
17
|
+
#ifndef NARRAY_BIGMEM
|
18
|
+
typedef int na_shape_t;
|
19
|
+
#endif
|
20
|
+
|
18
21
|
extern char *dcl_obj2ccharary(VALUE, int, int);
|
19
22
|
extern integer *dcl_obj2cintegerary(VALUE);
|
20
23
|
extern real *dcl_obj2crealary(VALUE);
|
@@ -22,10 +25,10 @@ extern complex *dcl_obj2ccomplexary(VALUE);
|
|
22
25
|
extern logical *dcl_obj2clogicalary(VALUE);
|
23
26
|
|
24
27
|
extern VALUE dcl_ccharary2obj(char *, int, int);
|
25
|
-
extern VALUE dcl_cintegerary2obj(integer *,
|
26
|
-
extern VALUE dcl_crealary2obj(real *,
|
27
|
-
extern VALUE dcl_ccomplexary2obj(complex *, int, char *);
|
28
|
-
extern VALUE dcl_clogicalary2obj(logical *,
|
28
|
+
extern VALUE dcl_cintegerary2obj(integer *, na_shape_t, int, na_shape_t *);
|
29
|
+
extern VALUE dcl_crealary2obj(real *, na_shape_t, int, na_shape_t *);
|
30
|
+
/* extern VALUE dcl_ccomplexary2obj(complex *, int, char *); */
|
31
|
+
extern VALUE dcl_clogicalary2obj(logical *, na_shape_t, int, na_shape_t *);
|
29
32
|
|
30
33
|
extern void dcl_freeccharary(char *);
|
31
34
|
extern void dcl_freecintegerary(integer *);
|
@@ -116,7 +119,7 @@ dcl_vrfnb(obj, rx, ry, n, jx, jy, jz, rfnb)
|
|
116
119
|
|
117
120
|
o_rz= ALLOCA_N(real, i_jz*(i_n-1)+1);
|
118
121
|
|
119
|
-
|
122
|
+
vrfnb__(i_rx, i_ry, o_rz, &i_n, &i_jx, &i_jy, &i_jz, &i_rfnb);
|
120
123
|
|
121
124
|
{int array_shape[1] = {i_jz*(i_n-1)+1};
|
122
125
|
rz = dcl_crealary2obj(o_rz, i_jz*(i_n-1)+1, 1, array_shape);
|
@@ -183,7 +186,7 @@ dcl_vrfnb0(obj, rx, ry, n, jx, jy, jz, rfnb)
|
|
183
186
|
|
184
187
|
o_rz= ALLOCA_N(real, i_jz*(i_n-1)+1);
|
185
188
|
|
186
|
-
|
189
|
+
vrfnb0__(i_rx, i_ry, o_rz, &i_n, &i_jx, &i_jy, &i_jz, &i_rfnb);
|
187
190
|
|
188
191
|
{int array_shape[1] = {i_jz*(i_n-1)+1};
|
189
192
|
rz = dcl_crealary2obj(o_rz, i_jz*(i_n-1)+1, 1, array_shape);
|
@@ -250,7 +253,7 @@ dcl_vrfnb1(obj, rx, ry, n, jx, jy, jz, rfnb)
|
|
250
253
|
|
251
254
|
o_rz= ALLOCA_N(real, i_jz*(i_n-1)+1);
|
252
255
|
|
253
|
-
|
256
|
+
vrfnb1__(i_rx, i_ry, o_rz, &i_n, &i_jx, &i_jy, &i_jz, &i_rfnb);
|
254
257
|
|
255
258
|
{int array_shape[1] = {i_jz*(i_n-1)+1};
|
256
259
|
rz = dcl_crealary2obj(o_rz, i_jz*(i_n-1)+1, 1, array_shape);
|
@@ -312,7 +315,7 @@ dcl_vradd(obj, rx, ry, n, jx, jy, jz)
|
|
312
315
|
|
313
316
|
o_rz= ALLOCA_N(real, i_jz*(i_n-1)+1);
|
314
317
|
|
315
|
-
|
318
|
+
vradd__(i_rx, i_ry, o_rz, &i_n, &i_jx, &i_jy, &i_jz);
|
316
319
|
|
317
320
|
{int array_shape[1] = {i_jz*(i_n-1)+1};
|
318
321
|
rz = dcl_crealary2obj(o_rz, i_jz*(i_n-1)+1, 1, array_shape);
|
@@ -374,7 +377,7 @@ dcl_vradd0(obj, rx, ry, n, jx, jy, jz)
|
|
374
377
|
|
375
378
|
o_rz= ALLOCA_N(real, i_jz*(i_n-1)+1);
|
376
379
|
|
377
|
-
|
380
|
+
vradd0__(i_rx, i_ry, o_rz, &i_n, &i_jx, &i_jy, &i_jz);
|
378
381
|
|
379
382
|
{int array_shape[1] = {i_jz*(i_n-1)+1};
|
380
383
|
rz = dcl_crealary2obj(o_rz, i_jz*(i_n-1)+1, 1, array_shape);
|
@@ -436,7 +439,7 @@ dcl_vradd1(obj, rx, ry, n, jx, jy, jz)
|
|
436
439
|
|
437
440
|
o_rz= ALLOCA_N(real, i_jz*(i_n-1)+1);
|
438
441
|
|
439
|
-
|
442
|
+
vradd1__(i_rx, i_ry, o_rz, &i_n, &i_jx, &i_jy, &i_jz);
|
440
443
|
|
441
444
|
{int array_shape[1] = {i_jz*(i_n-1)+1};
|
442
445
|
rz = dcl_crealary2obj(o_rz, i_jz*(i_n-1)+1, 1, array_shape);
|
@@ -498,7 +501,7 @@ dcl_vrsub(obj, rx, ry, n, jx, jy, jz)
|
|
498
501
|
|
499
502
|
o_rz= ALLOCA_N(real, i_jz*(i_n-1)+1);
|
500
503
|
|
501
|
-
|
504
|
+
vrsub__(i_rx, i_ry, o_rz, &i_n, &i_jx, &i_jy, &i_jz);
|
502
505
|
|
503
506
|
{int array_shape[1] = {i_jz*(i_n-1)+1};
|
504
507
|
rz = dcl_crealary2obj(o_rz, i_jz*(i_n-1)+1, 1, array_shape);
|
@@ -560,7 +563,7 @@ dcl_vrsub0(obj, rx, ry, n, jx, jy, jz)
|
|
560
563
|
|
561
564
|
o_rz= ALLOCA_N(real, i_jz*(i_n-1)+1);
|
562
565
|
|
563
|
-
|
566
|
+
vrsub0__(i_rx, i_ry, o_rz, &i_n, &i_jx, &i_jy, &i_jz);
|
564
567
|
|
565
568
|
{int array_shape[1] = {i_jz*(i_n-1)+1};
|
566
569
|
rz = dcl_crealary2obj(o_rz, i_jz*(i_n-1)+1, 1, array_shape);
|
@@ -622,7 +625,7 @@ dcl_vrsub1(obj, rx, ry, n, jx, jy, jz)
|
|
622
625
|
|
623
626
|
o_rz= ALLOCA_N(real, i_jz*(i_n-1)+1);
|
624
627
|
|
625
|
-
|
628
|
+
vrsub1__(i_rx, i_ry, o_rz, &i_n, &i_jx, &i_jy, &i_jz);
|
626
629
|
|
627
630
|
{int array_shape[1] = {i_jz*(i_n-1)+1};
|
628
631
|
rz = dcl_crealary2obj(o_rz, i_jz*(i_n-1)+1, 1, array_shape);
|
@@ -684,7 +687,7 @@ dcl_vrmlt(obj, rx, ry, n, jx, jy, jz)
|
|
684
687
|
|
685
688
|
o_rz= ALLOCA_N(real, i_jz*(i_n-1)+1);
|
686
689
|
|
687
|
-
|
690
|
+
vrmlt__(i_rx, i_ry, o_rz, &i_n, &i_jx, &i_jy, &i_jz);
|
688
691
|
|
689
692
|
{int array_shape[1] = {i_jz*(i_n-1)+1};
|
690
693
|
rz = dcl_crealary2obj(o_rz, i_jz*(i_n-1)+1, 1, array_shape);
|
@@ -746,7 +749,7 @@ dcl_vrmlt0(obj, rx, ry, n, jx, jy, jz)
|
|
746
749
|
|
747
750
|
o_rz= ALLOCA_N(real, i_jz*(i_n-1)+1);
|
748
751
|
|
749
|
-
|
752
|
+
vrmlt0__(i_rx, i_ry, o_rz, &i_n, &i_jx, &i_jy, &i_jz);
|
750
753
|
|
751
754
|
{int array_shape[1] = {i_jz*(i_n-1)+1};
|
752
755
|
rz = dcl_crealary2obj(o_rz, i_jz*(i_n-1)+1, 1, array_shape);
|
@@ -808,7 +811,7 @@ dcl_vrmlt1(obj, rx, ry, n, jx, jy, jz)
|
|
808
811
|
|
809
812
|
o_rz= ALLOCA_N(real, i_jz*(i_n-1)+1);
|
810
813
|
|
811
|
-
|
814
|
+
vrmlt1__(i_rx, i_ry, o_rz, &i_n, &i_jx, &i_jy, &i_jz);
|
812
815
|
|
813
816
|
{int array_shape[1] = {i_jz*(i_n-1)+1};
|
814
817
|
rz = dcl_crealary2obj(o_rz, i_jz*(i_n-1)+1, 1, array_shape);
|
@@ -870,7 +873,7 @@ dcl_vrdiv(obj, rx, ry, n, jx, jy, jz)
|
|
870
873
|
|
871
874
|
o_rz= ALLOCA_N(real, i_jz*(i_n-1)+1);
|
872
875
|
|
873
|
-
|
876
|
+
vrdiv__(i_rx, i_ry, o_rz, &i_n, &i_jx, &i_jy, &i_jz);
|
874
877
|
|
875
878
|
{int array_shape[1] = {i_jz*(i_n-1)+1};
|
876
879
|
rz = dcl_crealary2obj(o_rz, i_jz*(i_n-1)+1, 1, array_shape);
|
@@ -932,7 +935,7 @@ dcl_vrdiv0(obj, rx, ry, n, jx, jy, jz)
|
|
932
935
|
|
933
936
|
o_rz= ALLOCA_N(real, i_jz*(i_n-1)+1);
|
934
937
|
|
935
|
-
|
938
|
+
vrdiv0__(i_rx, i_ry, o_rz, &i_n, &i_jx, &i_jy, &i_jz);
|
936
939
|
|
937
940
|
{int array_shape[1] = {i_jz*(i_n-1)+1};
|
938
941
|
rz = dcl_crealary2obj(o_rz, i_jz*(i_n-1)+1, 1, array_shape);
|
@@ -994,7 +997,7 @@ dcl_vrdiv1(obj, rx, ry, n, jx, jy, jz)
|
|
994
997
|
|
995
998
|
o_rz= ALLOCA_N(real, i_jz*(i_n-1)+1);
|
996
999
|
|
997
|
-
|
1000
|
+
vrdiv1__(i_rx, i_ry, o_rz, &i_n, &i_jx, &i_jy, &i_jz);
|
998
1001
|
|
999
1002
|
{int array_shape[1] = {i_jz*(i_n-1)+1};
|
1000
1003
|
rz = dcl_crealary2obj(o_rz, i_jz*(i_n-1)+1, 1, array_shape);
|
data/ext/numru/math1_xfclib.c
CHANGED
@@ -1,10 +1,9 @@
|
|
1
1
|
/*
|
2
|
-
* $Id
|
2
|
+
* $Id$
|
3
3
|
*/
|
4
4
|
|
5
5
|
#include <stdio.h>
|
6
6
|
#include "ruby.h"
|
7
|
-
#include "libtinyf2c.h"
|
8
7
|
#include "narray.h"
|
9
8
|
#include "cdcl.h"
|
10
9
|
|
@@ -15,6 +14,10 @@
|
|
15
14
|
|
16
15
|
#define DFLT_SIZE 32
|
17
16
|
|
17
|
+
#ifndef NARRAY_BIGMEM
|
18
|
+
typedef int na_shape_t;
|
19
|
+
#endif
|
20
|
+
|
18
21
|
extern char *dcl_obj2ccharary(VALUE, int, int);
|
19
22
|
extern integer *dcl_obj2cintegerary(VALUE);
|
20
23
|
extern real *dcl_obj2crealary(VALUE);
|
@@ -22,10 +25,10 @@ extern complex *dcl_obj2ccomplexary(VALUE);
|
|
22
25
|
extern logical *dcl_obj2clogicalary(VALUE);
|
23
26
|
|
24
27
|
extern VALUE dcl_ccharary2obj(char *, int, int);
|
25
|
-
extern VALUE dcl_cintegerary2obj(integer *,
|
26
|
-
extern VALUE dcl_crealary2obj(real *,
|
27
|
-
extern VALUE dcl_ccomplexary2obj(complex *, int, char *);
|
28
|
-
extern VALUE dcl_clogicalary2obj(logical *,
|
28
|
+
extern VALUE dcl_cintegerary2obj(integer *, na_shape_t, int, na_shape_t *);
|
29
|
+
extern VALUE dcl_crealary2obj(real *, na_shape_t, int, na_shape_t *);
|
30
|
+
/* extern VALUE dcl_ccomplexary2obj(complex *, int, char *); */
|
31
|
+
extern VALUE dcl_clogicalary2obj(logical *, na_shape_t, int, na_shape_t *);
|
29
32
|
|
30
33
|
extern void dcl_freeccharary(char *);
|
31
34
|
extern void dcl_freecintegerary(integer *);
|
@@ -77,7 +80,7 @@ dcl_ifromc(obj, cx)
|
|
77
80
|
i_cx = StringValuePtr(cx);
|
78
81
|
|
79
82
|
|
80
|
-
o_rtn_val =
|
83
|
+
o_rtn_val = ifromc__(i_cx, (ftnlen)strlen(i_cx));
|
81
84
|
|
82
85
|
rtn_val = INT2NUM(o_rtn_val);
|
83
86
|
|
@@ -101,7 +104,7 @@ dcl_lfromc(obj, cx)
|
|
101
104
|
i_cx = StringValuePtr(cx);
|
102
105
|
|
103
106
|
|
104
|
-
o_rtn_val =
|
107
|
+
o_rtn_val = lfromc__(i_cx, (ftnlen)strlen(i_cx));
|
105
108
|
|
106
109
|
rtn_val = (o_rtn_val == FALSE_) ? Qfalse : Qtrue;
|
107
110
|
|
@@ -125,7 +128,7 @@ dcl_rfromc(obj, cx)
|
|
125
128
|
i_cx = StringValuePtr(cx);
|
126
129
|
|
127
130
|
|
128
|
-
o_rtn_val =
|
131
|
+
o_rtn_val = rfromc__(i_cx, (ftnlen)strlen(i_cx));
|
129
132
|
|
130
133
|
rtn_val = rb_float_new((double)o_rtn_val);
|
131
134
|
|
data/ext/numru/math2_fftlib.c
CHANGED
@@ -1,10 +1,9 @@
|
|
1
1
|
/*
|
2
|
-
* $Id
|
2
|
+
* $Id$
|
3
3
|
*/
|
4
4
|
|
5
5
|
#include <stdio.h>
|
6
6
|
#include "ruby.h"
|
7
|
-
#include "libtinyf2c.h"
|
8
7
|
#include "narray.h"
|
9
8
|
#include "cdcl.h"
|
10
9
|
|
@@ -15,6 +14,10 @@
|
|
15
14
|
|
16
15
|
#define DFLT_SIZE 32
|
17
16
|
|
17
|
+
#ifndef NARRAY_BIGMEM
|
18
|
+
typedef int na_shape_t;
|
19
|
+
#endif
|
20
|
+
|
18
21
|
extern char *dcl_obj2ccharary(VALUE, int, int);
|
19
22
|
extern integer *dcl_obj2cintegerary(VALUE);
|
20
23
|
extern real *dcl_obj2crealary(VALUE);
|
@@ -22,10 +25,10 @@ extern complex *dcl_obj2ccomplexary(VALUE);
|
|
22
25
|
extern logical *dcl_obj2clogicalary(VALUE);
|
23
26
|
|
24
27
|
extern VALUE dcl_ccharary2obj(char *, int, int);
|
25
|
-
extern VALUE dcl_cintegerary2obj(integer *,
|
26
|
-
extern VALUE dcl_crealary2obj(real *,
|
27
|
-
extern VALUE dcl_ccomplexary2obj(complex *, int, char *);
|
28
|
-
extern VALUE dcl_clogicalary2obj(logical *,
|
28
|
+
extern VALUE dcl_cintegerary2obj(integer *, na_shape_t, int, na_shape_t *);
|
29
|
+
extern VALUE dcl_crealary2obj(real *, na_shape_t, int, na_shape_t *);
|
30
|
+
/* extern VALUE dcl_ccomplexary2obj(complex *, int, char *); */
|
31
|
+
extern VALUE dcl_clogicalary2obj(logical *, na_shape_t, int, na_shape_t *);
|
29
32
|
|
30
33
|
extern void dcl_freeccharary(char *);
|
31
34
|
extern void dcl_freecintegerary(integer *);
|
@@ -93,7 +96,7 @@ dcl_cfftb(obj, n, c, wsave)
|
|
93
96
|
i_wsave = dcl_obj2crealary(wsave);
|
94
97
|
|
95
98
|
|
96
|
-
|
99
|
+
cfftb__(&i_n, io_c, i_wsave);
|
97
100
|
|
98
101
|
{int array_shape[1] = {2*i_n};
|
99
102
|
c = dcl_crealary2obj(io_c, (2*i_n), 1, array_shape);
|
@@ -137,7 +140,7 @@ dcl_cfftf(obj, n, c, wsave)
|
|
137
140
|
i_wsave = dcl_obj2crealary(wsave);
|
138
141
|
|
139
142
|
|
140
|
-
|
143
|
+
cfftf__(&i_n, io_c, i_wsave);
|
141
144
|
|
142
145
|
{int array_shape[1] = {2*i_n};
|
143
146
|
c = dcl_crealary2obj(io_c, (2*i_n), 1, array_shape);
|
@@ -166,7 +169,7 @@ dcl_cffti(obj, n)
|
|
166
169
|
|
167
170
|
o_wsave= ALLOCA_N(real, (4*i_n+15));
|
168
171
|
|
169
|
-
|
172
|
+
cffti__(&i_n, o_wsave);
|
170
173
|
|
171
174
|
{int array_shape[1] = {4*i_n+15};
|
172
175
|
wsave = dcl_crealary2obj(o_wsave, (4*i_n+15), 1, array_shape);
|
@@ -208,7 +211,7 @@ dcl_cosqb(obj, n, x, wsave)
|
|
208
211
|
i_wsave = dcl_obj2crealary(wsave);
|
209
212
|
|
210
213
|
|
211
|
-
|
214
|
+
cosqb__(&i_n, io_x, i_wsave);
|
212
215
|
|
213
216
|
{int array_shape[1] = {i_n};
|
214
217
|
x = dcl_crealary2obj(io_x, (i_n), 1, array_shape);
|
@@ -252,7 +255,7 @@ dcl_cosqf(obj, n, x, wsave)
|
|
252
255
|
i_wsave = dcl_obj2crealary(wsave);
|
253
256
|
|
254
257
|
|
255
|
-
|
258
|
+
cosqf__(&i_n, io_x, i_wsave);
|
256
259
|
|
257
260
|
{int array_shape[1] = {i_n};
|
258
261
|
x = dcl_crealary2obj(io_x, (i_n), 1, array_shape);
|
@@ -281,7 +284,7 @@ dcl_cosqi(obj, n)
|
|
281
284
|
|
282
285
|
o_wsave= ALLOCA_N(real, (3*i_n+15));
|
283
286
|
|
284
|
-
|
287
|
+
cosqi__(&i_n, o_wsave);
|
285
288
|
|
286
289
|
{int array_shape[1] = {3*i_n+15};
|
287
290
|
wsave = dcl_crealary2obj(o_wsave, (3*i_n+15), 1, array_shape);
|
@@ -323,7 +326,7 @@ dcl_cost(obj, n, x, wsave)
|
|
323
326
|
i_wsave = dcl_obj2crealary(wsave);
|
324
327
|
|
325
328
|
|
326
|
-
|
329
|
+
cost__(&i_n, io_x, i_wsave);
|
327
330
|
|
328
331
|
{int array_shape[1] = {i_n};
|
329
332
|
x = dcl_crealary2obj(io_x, (i_n), 1, array_shape);
|
@@ -352,7 +355,7 @@ dcl_costi(obj, n)
|
|
352
355
|
|
353
356
|
o_wsave= ALLOCA_N(real, (3*i_n+15));
|
354
357
|
|
355
|
-
|
358
|
+
costi__(&i_n, o_wsave);
|
356
359
|
|
357
360
|
{int array_shape[1] = {3*i_n+15};
|
358
361
|
wsave = dcl_crealary2obj(o_wsave, (3*i_n+15), 1, array_shape);
|
@@ -411,7 +414,7 @@ dcl_ezfftb(obj, n, azero, a, b, wsave)
|
|
411
414
|
|
412
415
|
o_r= ALLOCA_N(real, (i_n));
|
413
416
|
|
414
|
-
|
417
|
+
ezfftb__(&i_n, o_r, &i_azero, i_a, i_b, i_wsave);
|
415
418
|
|
416
419
|
{int array_shape[1] = {i_n};
|
417
420
|
r = dcl_crealary2obj(o_r, (i_n), 1, array_shape);
|
@@ -464,7 +467,7 @@ dcl_ezfftf(obj, n, r, wsave)
|
|
464
467
|
o_a= ALLOCA_N(real, (i_n/2));
|
465
468
|
o_b= ALLOCA_N(real, (i_n/2));
|
466
469
|
|
467
|
-
|
470
|
+
ezfftf__(&i_n, i_r, &o_azero, o_a, o_b, i_wsave);
|
468
471
|
|
469
472
|
azero = rb_float_new((double)o_azero);
|
470
473
|
{int array_shape[1] = {i_n/2};
|
@@ -497,7 +500,7 @@ dcl_ezffti(obj, n)
|
|
497
500
|
|
498
501
|
o_wsave= ALLOCA_N(real, (3*i_n+15));
|
499
502
|
|
500
|
-
|
503
|
+
ezffti__(&i_n, o_wsave);
|
501
504
|
|
502
505
|
{int array_shape[1] = {3*i_n+15};
|
503
506
|
wsave = dcl_crealary2obj(o_wsave, (3*i_n+15), 1, array_shape);
|
@@ -539,7 +542,7 @@ dcl_rfftb(obj, n, r, wsave)
|
|
539
542
|
i_wsave = dcl_obj2crealary(wsave);
|
540
543
|
|
541
544
|
|
542
|
-
|
545
|
+
rfftb__(&i_n, io_r, i_wsave);
|
543
546
|
|
544
547
|
{int array_shape[1] = {i_n};
|
545
548
|
r = dcl_crealary2obj(io_r, (i_n), 1, array_shape);
|
@@ -583,7 +586,7 @@ dcl_rfftf(obj, n, r, wsave)
|
|
583
586
|
i_wsave = dcl_obj2crealary(wsave);
|
584
587
|
|
585
588
|
|
586
|
-
|
589
|
+
rfftf__(&i_n, io_r, i_wsave);
|
587
590
|
|
588
591
|
{int array_shape[1] = {i_n};
|
589
592
|
r = dcl_crealary2obj(io_r, (i_n), 1, array_shape);
|
@@ -612,7 +615,7 @@ dcl_rffti(obj, n)
|
|
612
615
|
|
613
616
|
o_wsave= ALLOCA_N(real, (2*i_n+15));
|
614
617
|
|
615
|
-
|
618
|
+
rffti__(&i_n, o_wsave);
|
616
619
|
|
617
620
|
{int array_shape[1] = {2*i_n+15};
|
618
621
|
wsave = dcl_crealary2obj(o_wsave, (2*i_n+15), 1, array_shape);
|
@@ -654,7 +657,7 @@ dcl_sinqb(obj, n, x, wsave)
|
|
654
657
|
i_wsave = dcl_obj2crealary(wsave);
|
655
658
|
|
656
659
|
|
657
|
-
|
660
|
+
sinqb__(&i_n, io_x, i_wsave);
|
658
661
|
|
659
662
|
{int array_shape[1] = {i_n};
|
660
663
|
x = dcl_crealary2obj(io_x, (i_n), 1, array_shape);
|
@@ -698,7 +701,7 @@ dcl_sinqf(obj, n, x, wsave)
|
|
698
701
|
i_wsave = dcl_obj2crealary(wsave);
|
699
702
|
|
700
703
|
|
701
|
-
|
704
|
+
sinqf__(&i_n, io_x, i_wsave);
|
702
705
|
|
703
706
|
{int array_shape[1] = {i_n};
|
704
707
|
x = dcl_crealary2obj(io_x, (i_n), 1, array_shape);
|
@@ -727,7 +730,7 @@ dcl_sinqi(obj, n)
|
|
727
730
|
|
728
731
|
o_wsave= ALLOCA_N(real, (3*i_n+15));
|
729
732
|
|
730
|
-
|
733
|
+
sinqi__(&i_n, o_wsave);
|
731
734
|
|
732
735
|
{int array_shape[1] = {3*i_n+15};
|
733
736
|
wsave = dcl_crealary2obj(o_wsave, (3*i_n+15), 1, array_shape);
|
@@ -769,7 +772,7 @@ dcl_sint(obj, n, x, wsave)
|
|
769
772
|
i_wsave = dcl_obj2crealary(wsave);
|
770
773
|
|
771
774
|
|
772
|
-
|
775
|
+
sint__(&i_n, io_x, i_wsave);
|
773
776
|
|
774
777
|
{int array_shape[1] = {i_n};
|
775
778
|
x = dcl_crealary2obj(io_x, (i_n), 1, array_shape);
|
@@ -798,7 +801,7 @@ dcl_sinti(obj, n)
|
|
798
801
|
|
799
802
|
o_wsave= ALLOCA_N(real, (2*i_n+i_n/2+15));
|
800
803
|
|
801
|
-
|
804
|
+
sinti__(&i_n, o_wsave);
|
802
805
|
|
803
806
|
{int array_shape[1] = {2*i_n+i_n/2+15};
|
804
807
|
wsave = dcl_crealary2obj(o_wsave, (2*i_n+i_n/2+15), 1, array_shape);
|
data/ext/numru/math2_intrlib.c
CHANGED
@@ -1,10 +1,9 @@
|
|
1
1
|
/*
|
2
|
-
* $Id
|
2
|
+
* $Id$
|
3
3
|
*/
|
4
4
|
|
5
5
|
#include <stdio.h>
|
6
6
|
#include "ruby.h"
|
7
|
-
#include "libtinyf2c.h"
|
8
7
|
#include "narray.h"
|
9
8
|
#include "cdcl.h"
|
10
9
|
|
@@ -15,6 +14,10 @@
|
|
15
14
|
|
16
15
|
#define DFLT_SIZE 32
|
17
16
|
|
17
|
+
#ifndef NARRAY_BIGMEM
|
18
|
+
typedef int na_shape_t;
|
19
|
+
#endif
|
20
|
+
|
18
21
|
extern char *dcl_obj2ccharary(VALUE, int, int);
|
19
22
|
extern integer *dcl_obj2cintegerary(VALUE);
|
20
23
|
extern real *dcl_obj2crealary(VALUE);
|
@@ -22,10 +25,10 @@ extern complex *dcl_obj2ccomplexary(VALUE);
|
|
22
25
|
extern logical *dcl_obj2clogicalary(VALUE);
|
23
26
|
|
24
27
|
extern VALUE dcl_ccharary2obj(char *, int, int);
|
25
|
-
extern VALUE dcl_cintegerary2obj(integer *,
|
26
|
-
extern VALUE dcl_crealary2obj(real *,
|
27
|
-
extern VALUE dcl_ccomplexary2obj(complex *, int, char *);
|
28
|
-
extern VALUE dcl_clogicalary2obj(logical *,
|
28
|
+
extern VALUE dcl_cintegerary2obj(integer *, na_shape_t, int, na_shape_t *);
|
29
|
+
extern VALUE dcl_crealary2obj(real *, na_shape_t, int, na_shape_t *);
|
30
|
+
/* extern VALUE dcl_ccomplexary2obj(complex *, int, char *); */
|
31
|
+
extern VALUE dcl_clogicalary2obj(logical *, na_shape_t, int, na_shape_t *);
|
29
32
|
|
30
33
|
extern void dcl_freeccharary(char *);
|
31
34
|
extern void dcl_freecintegerary(integer *);
|
@@ -89,7 +92,7 @@ dcl_vrintr(obj, rx, n, jx)
|
|
89
92
|
io_rx = dcl_obj2crealary(rx);
|
90
93
|
|
91
94
|
|
92
|
-
|
95
|
+
vrintr__(io_rx, &i_n, &i_jx);
|
93
96
|
|
94
97
|
{int array_shape[1] = {i_jx*(i_n-1)+1};
|
95
98
|
rx = dcl_crealary2obj(io_rx, i_jx*(i_n-1)+1, 1, array_shape);
|
@@ -122,7 +125,7 @@ dcl_vcintr(obj, cx, n, jx)
|
|
122
125
|
/* initialization: not implemented for cx (ComplexInputOutputArrayVariable) */
|
123
126
|
|
124
127
|
|
125
|
-
|
128
|
+
vcintr__(io_cx, &i_n, &i_jx);
|
126
129
|
|
127
130
|
/* getresult: not implemented for cx (ComplexInputOutputArrayVariable) */
|
128
131
|
|
data/ext/numru/math2_rnmlib.c
CHANGED
@@ -1,10 +1,9 @@
|
|
1
1
|
/*
|
2
|
-
* $Id
|
2
|
+
* $Id$
|
3
3
|
*/
|
4
4
|
|
5
5
|
#include <stdio.h>
|
6
6
|
#include "ruby.h"
|
7
|
-
#include "libtinyf2c.h"
|
8
7
|
#include "narray.h"
|
9
8
|
#include "cdcl.h"
|
10
9
|
|
@@ -15,6 +14,10 @@
|
|
15
14
|
|
16
15
|
#define DFLT_SIZE 32
|
17
16
|
|
17
|
+
#ifndef NARRAY_BIGMEM
|
18
|
+
typedef int na_shape_t;
|
19
|
+
#endif
|
20
|
+
|
18
21
|
extern char *dcl_obj2ccharary(VALUE, int, int);
|
19
22
|
extern integer *dcl_obj2cintegerary(VALUE);
|
20
23
|
extern real *dcl_obj2crealary(VALUE);
|
@@ -22,10 +25,10 @@ extern complex *dcl_obj2ccomplexary(VALUE);
|
|
22
25
|
extern logical *dcl_obj2clogicalary(VALUE);
|
23
26
|
|
24
27
|
extern VALUE dcl_ccharary2obj(char *, int, int);
|
25
|
-
extern VALUE dcl_cintegerary2obj(integer *,
|
26
|
-
extern VALUE dcl_crealary2obj(real *,
|
27
|
-
extern VALUE dcl_ccomplexary2obj(complex *, int, char *);
|
28
|
-
extern VALUE dcl_clogicalary2obj(logical *,
|
28
|
+
extern VALUE dcl_cintegerary2obj(integer *, na_shape_t, int, na_shape_t *);
|
29
|
+
extern VALUE dcl_crealary2obj(real *, na_shape_t, int, na_shape_t *);
|
30
|
+
/* extern VALUE dcl_ccomplexary2obj(complex *, int, char *); */
|
31
|
+
extern VALUE dcl_clogicalary2obj(logical *, na_shape_t, int, na_shape_t *);
|
29
32
|
|
30
33
|
extern void dcl_freeccharary(char *);
|
31
34
|
extern void dcl_freecintegerary(integer *);
|
@@ -102,7 +105,7 @@ dcl_vrrnm(obj, rx, n, jx, jy, nb)
|
|
102
105
|
|
103
106
|
o_ry= ALLOCA_N(real, i_jy*(i_n-1)+1);
|
104
107
|
|
105
|
-
|
108
|
+
vrrnm__(i_rx, o_ry, &i_n, &i_jx, &i_jy, &i_nb);
|
106
109
|
|
107
110
|
{int array_shape[1] = {i_jy*(i_n-1)+1};
|
108
111
|
ry = dcl_crealary2obj(o_ry, i_jy*(i_n-1)+1, 1, array_shape);
|
@@ -154,7 +157,7 @@ dcl_vrrnm0(obj, rx, n, jx, jy, nb)
|
|
154
157
|
|
155
158
|
o_ry= ALLOCA_N(real, i_jy*(i_n-1)+1);
|
156
159
|
|
157
|
-
|
160
|
+
vrrnm0__(i_rx, o_ry, &i_n, &i_jx, &i_jy, &i_nb);
|
158
161
|
|
159
162
|
{int array_shape[1] = {i_jy*(i_n-1)+1};
|
160
163
|
ry = dcl_crealary2obj(o_ry, i_jy*(i_n-1)+1, 1, array_shape);
|
@@ -206,7 +209,7 @@ dcl_vrrnm1(obj, rx, n, jx, jy, nb)
|
|
206
209
|
|
207
210
|
o_ry= ALLOCA_N(real, i_jx*(i_n-1)+1);
|
208
211
|
|
209
|
-
|
212
|
+
vrrnm1__(i_rx, o_ry, &i_n, &i_jx, &i_jy, &i_nb);
|
210
213
|
|
211
214
|
{int array_shape[1] = {i_jx*(i_n-1)+1};
|
212
215
|
ry = dcl_crealary2obj(o_ry, i_jx*(i_n-1)+1, 1, array_shape);
|