ruby-dcl 1.8.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 +97 -14
- data/LICENSE.txt +1 -1
- data/demo/gokuraku/jump/jump2.rb +1 -1
- data/demo/grph1/sgpack/sgfont.rb +1 -1
- data/demo/grph1/sgpack/sgfonz.rb +1 -1
- data/demo/grph1/sgpack/sgpk07.rb +8 -6
- data/demo/grph1/slpack/slpk04.rb +1 -1
- data/demo/grph2/udegpk/u2df03.rb +2 -2
- data/demo/grph2/umpack/test04.rb +1 -1
- data/demo/grph2/umpack/test05r.rb +86 -0
- data/demo/grph2/uspack/uspk06.rb +1 -1
- data/demo/grph2/uspack/uspk08.rb +1 -1
- data/demo/grph2/ximage/ximg01.rb +1 -1
- 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/color2.rb +4 -3
- data/demo/rakuraku/kihon/kihon7.rb +9 -3
- data/demo/rakuraku/kihon/kihonb.rb +11 -9
- data/demo/rakuraku/uspack/uspac1.rb +1 -1
- data/demo/rakuraku/uspack/uspac3.rb +1 -1
- data/ext/numru/dcl_cary2obj.c +1 -1
- data/ext/numru/dcl_narrayed_funcs.c +21 -21
- data/ext/numru/dcl_obj2cary.c +1 -1
- data/ext/numru/dcl_rubydcloriginal.c +0 -1
- data/ext/numru/extconf.rb +28 -9
- data/ext/numru/grph1_csgi.c +29 -3
- data/ext/numru/grph1_scpack.c +40 -41
- data/ext/numru/grph1_sgpack.c +158 -159
- data/ext/numru/grph1_slpack.c +14 -15
- data/ext/numru/grph1_stpack.c +35 -36
- data/ext/numru/grph1_swpack.c +89 -90
- data/ext/numru/grph2_grpack.c +13 -14
- data/ext/numru/grph2_ucpack.c +46 -47
- data/ext/numru/grph2_udpack.c +52 -53
- data/ext/numru/grph2_uepack.c +51 -52
- data/ext/numru/grph2_ugpack.c +40 -41
- data/ext/numru/grph2_uhpack.c +16 -17
- data/ext/numru/grph2_uipack.c +48 -49
- data/ext/numru/grph2_ulpack.c +50 -51
- data/ext/numru/grph2_umpack.c +66 -67
- data/ext/numru/grph2_uspack.c +88 -89
- data/ext/numru/grph2_uupack.c +69 -70
- data/ext/numru/grph2_uvpack.c +16 -17
- data/ext/numru/grph2_uwpack.c +21 -22
- data/ext/numru/grph2_uxpack.c +14 -15
- data/ext/numru/grph2_uypack.c +14 -15
- data/ext/numru/grph2_uzpack.c +60 -61
- data/ext/numru/init.c.default +5 -2
- data/ext/numru/math1_blklib.c +4 -5
- data/ext/numru/math1_chrlib.c +7 -8
- data/ext/numru/math1_clsplib.c +4 -5
- data/ext/numru/math1_fnclib.c +7 -8
- data/ext/numru/math1_gnmlib.c +12 -13
- data/ext/numru/math1_gt2dlib.c +9 -10
- data/ext/numru/math1_ifalib.c +9 -10
- data/ext/numru/math1_indxlib.c +15 -16
- data/ext/numru/math1_intlib.c +4 -5
- data/ext/numru/math1_lrllib.c +24 -25
- data/ext/numru/math1_maplib.c +5 -6
- data/ext/numru/math1_oslib.c +2 -3
- data/ext/numru/math1_rfalib.c +30 -31
- data/ext/numru/math1_rfblib.c +3 -4
- data/ext/numru/math1_sublib.c +4 -5
- data/ext/numru/math1_syslib.c +73 -74
- data/ext/numru/math1_vialib.c +22 -23
- data/ext/numru/math1_viblib.c +15 -16
- data/ext/numru/math1_vralib.c +22 -23
- data/ext/numru/math1_vrblib.c +15 -16
- data/ext/numru/math1_xfclib.c +3 -4
- data/ext/numru/math2_fftlib.c +19 -20
- data/ext/numru/math2_intrlib.c +2 -3
- data/ext/numru/math2_rnmlib.c +3 -4
- data/ext/numru/math2_shtlib.c +25 -26
- data/ext/numru/math2_vstlib.c +6 -7
- data/ext/numru/misc1_chnlib.c +3 -4
- data/ext/numru/misc1_datelib.c +27 -28
- data/ext/numru/misc1_fmtlib.c +1 -2
- data/ext/numru/misc1_misclib.c +2 -3
- data/ext/numru/misc1_randlib.c +4 -5
- data/ext/numru/misc1_timelib.c +11 -12
- data/ext/numru/misc2_tmpack.c +1200 -0
- data/lib/numru/dcl/dcl.rb +73 -1
- data/lib/numru/dcl/version.rb +1 -1
- data/ruby-dcl.gemspec +2 -2
- metadata +12 -4
data/ext/numru/math1_xfclib.c
CHANGED
@@ -4,7 +4,6 @@
|
|
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
|
|
@@ -81,7 +80,7 @@ dcl_ifromc(obj, cx)
|
|
81
80
|
i_cx = StringValuePtr(cx);
|
82
81
|
|
83
82
|
|
84
|
-
o_rtn_val =
|
83
|
+
o_rtn_val = ifromc__(i_cx, (ftnlen)strlen(i_cx));
|
85
84
|
|
86
85
|
rtn_val = INT2NUM(o_rtn_val);
|
87
86
|
|
@@ -105,7 +104,7 @@ dcl_lfromc(obj, cx)
|
|
105
104
|
i_cx = StringValuePtr(cx);
|
106
105
|
|
107
106
|
|
108
|
-
o_rtn_val =
|
107
|
+
o_rtn_val = lfromc__(i_cx, (ftnlen)strlen(i_cx));
|
109
108
|
|
110
109
|
rtn_val = (o_rtn_val == FALSE_) ? Qfalse : Qtrue;
|
111
110
|
|
@@ -129,7 +128,7 @@ dcl_rfromc(obj, cx)
|
|
129
128
|
i_cx = StringValuePtr(cx);
|
130
129
|
|
131
130
|
|
132
|
-
o_rtn_val =
|
131
|
+
o_rtn_val = rfromc__(i_cx, (ftnlen)strlen(i_cx));
|
133
132
|
|
134
133
|
rtn_val = rb_float_new((double)o_rtn_val);
|
135
134
|
|
data/ext/numru/math2_fftlib.c
CHANGED
@@ -4,7 +4,6 @@
|
|
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
|
|
@@ -97,7 +96,7 @@ dcl_cfftb(obj, n, c, wsave)
|
|
97
96
|
i_wsave = dcl_obj2crealary(wsave);
|
98
97
|
|
99
98
|
|
100
|
-
|
99
|
+
cfftb__(&i_n, io_c, i_wsave);
|
101
100
|
|
102
101
|
{int array_shape[1] = {2*i_n};
|
103
102
|
c = dcl_crealary2obj(io_c, (2*i_n), 1, array_shape);
|
@@ -141,7 +140,7 @@ dcl_cfftf(obj, n, c, wsave)
|
|
141
140
|
i_wsave = dcl_obj2crealary(wsave);
|
142
141
|
|
143
142
|
|
144
|
-
|
143
|
+
cfftf__(&i_n, io_c, i_wsave);
|
145
144
|
|
146
145
|
{int array_shape[1] = {2*i_n};
|
147
146
|
c = dcl_crealary2obj(io_c, (2*i_n), 1, array_shape);
|
@@ -170,7 +169,7 @@ dcl_cffti(obj, n)
|
|
170
169
|
|
171
170
|
o_wsave= ALLOCA_N(real, (4*i_n+15));
|
172
171
|
|
173
|
-
|
172
|
+
cffti__(&i_n, o_wsave);
|
174
173
|
|
175
174
|
{int array_shape[1] = {4*i_n+15};
|
176
175
|
wsave = dcl_crealary2obj(o_wsave, (4*i_n+15), 1, array_shape);
|
@@ -212,7 +211,7 @@ dcl_cosqb(obj, n, x, wsave)
|
|
212
211
|
i_wsave = dcl_obj2crealary(wsave);
|
213
212
|
|
214
213
|
|
215
|
-
|
214
|
+
cosqb__(&i_n, io_x, i_wsave);
|
216
215
|
|
217
216
|
{int array_shape[1] = {i_n};
|
218
217
|
x = dcl_crealary2obj(io_x, (i_n), 1, array_shape);
|
@@ -256,7 +255,7 @@ dcl_cosqf(obj, n, x, wsave)
|
|
256
255
|
i_wsave = dcl_obj2crealary(wsave);
|
257
256
|
|
258
257
|
|
259
|
-
|
258
|
+
cosqf__(&i_n, io_x, i_wsave);
|
260
259
|
|
261
260
|
{int array_shape[1] = {i_n};
|
262
261
|
x = dcl_crealary2obj(io_x, (i_n), 1, array_shape);
|
@@ -285,7 +284,7 @@ dcl_cosqi(obj, n)
|
|
285
284
|
|
286
285
|
o_wsave= ALLOCA_N(real, (3*i_n+15));
|
287
286
|
|
288
|
-
|
287
|
+
cosqi__(&i_n, o_wsave);
|
289
288
|
|
290
289
|
{int array_shape[1] = {3*i_n+15};
|
291
290
|
wsave = dcl_crealary2obj(o_wsave, (3*i_n+15), 1, array_shape);
|
@@ -327,7 +326,7 @@ dcl_cost(obj, n, x, wsave)
|
|
327
326
|
i_wsave = dcl_obj2crealary(wsave);
|
328
327
|
|
329
328
|
|
330
|
-
|
329
|
+
cost__(&i_n, io_x, i_wsave);
|
331
330
|
|
332
331
|
{int array_shape[1] = {i_n};
|
333
332
|
x = dcl_crealary2obj(io_x, (i_n), 1, array_shape);
|
@@ -356,7 +355,7 @@ dcl_costi(obj, n)
|
|
356
355
|
|
357
356
|
o_wsave= ALLOCA_N(real, (3*i_n+15));
|
358
357
|
|
359
|
-
|
358
|
+
costi__(&i_n, o_wsave);
|
360
359
|
|
361
360
|
{int array_shape[1] = {3*i_n+15};
|
362
361
|
wsave = dcl_crealary2obj(o_wsave, (3*i_n+15), 1, array_shape);
|
@@ -415,7 +414,7 @@ dcl_ezfftb(obj, n, azero, a, b, wsave)
|
|
415
414
|
|
416
415
|
o_r= ALLOCA_N(real, (i_n));
|
417
416
|
|
418
|
-
|
417
|
+
ezfftb__(&i_n, o_r, &i_azero, i_a, i_b, i_wsave);
|
419
418
|
|
420
419
|
{int array_shape[1] = {i_n};
|
421
420
|
r = dcl_crealary2obj(o_r, (i_n), 1, array_shape);
|
@@ -468,7 +467,7 @@ dcl_ezfftf(obj, n, r, wsave)
|
|
468
467
|
o_a= ALLOCA_N(real, (i_n/2));
|
469
468
|
o_b= ALLOCA_N(real, (i_n/2));
|
470
469
|
|
471
|
-
|
470
|
+
ezfftf__(&i_n, i_r, &o_azero, o_a, o_b, i_wsave);
|
472
471
|
|
473
472
|
azero = rb_float_new((double)o_azero);
|
474
473
|
{int array_shape[1] = {i_n/2};
|
@@ -501,7 +500,7 @@ dcl_ezffti(obj, n)
|
|
501
500
|
|
502
501
|
o_wsave= ALLOCA_N(real, (3*i_n+15));
|
503
502
|
|
504
|
-
|
503
|
+
ezffti__(&i_n, o_wsave);
|
505
504
|
|
506
505
|
{int array_shape[1] = {3*i_n+15};
|
507
506
|
wsave = dcl_crealary2obj(o_wsave, (3*i_n+15), 1, array_shape);
|
@@ -543,7 +542,7 @@ dcl_rfftb(obj, n, r, wsave)
|
|
543
542
|
i_wsave = dcl_obj2crealary(wsave);
|
544
543
|
|
545
544
|
|
546
|
-
|
545
|
+
rfftb__(&i_n, io_r, i_wsave);
|
547
546
|
|
548
547
|
{int array_shape[1] = {i_n};
|
549
548
|
r = dcl_crealary2obj(io_r, (i_n), 1, array_shape);
|
@@ -587,7 +586,7 @@ dcl_rfftf(obj, n, r, wsave)
|
|
587
586
|
i_wsave = dcl_obj2crealary(wsave);
|
588
587
|
|
589
588
|
|
590
|
-
|
589
|
+
rfftf__(&i_n, io_r, i_wsave);
|
591
590
|
|
592
591
|
{int array_shape[1] = {i_n};
|
593
592
|
r = dcl_crealary2obj(io_r, (i_n), 1, array_shape);
|
@@ -616,7 +615,7 @@ dcl_rffti(obj, n)
|
|
616
615
|
|
617
616
|
o_wsave= ALLOCA_N(real, (2*i_n+15));
|
618
617
|
|
619
|
-
|
618
|
+
rffti__(&i_n, o_wsave);
|
620
619
|
|
621
620
|
{int array_shape[1] = {2*i_n+15};
|
622
621
|
wsave = dcl_crealary2obj(o_wsave, (2*i_n+15), 1, array_shape);
|
@@ -658,7 +657,7 @@ dcl_sinqb(obj, n, x, wsave)
|
|
658
657
|
i_wsave = dcl_obj2crealary(wsave);
|
659
658
|
|
660
659
|
|
661
|
-
|
660
|
+
sinqb__(&i_n, io_x, i_wsave);
|
662
661
|
|
663
662
|
{int array_shape[1] = {i_n};
|
664
663
|
x = dcl_crealary2obj(io_x, (i_n), 1, array_shape);
|
@@ -702,7 +701,7 @@ dcl_sinqf(obj, n, x, wsave)
|
|
702
701
|
i_wsave = dcl_obj2crealary(wsave);
|
703
702
|
|
704
703
|
|
705
|
-
|
704
|
+
sinqf__(&i_n, io_x, i_wsave);
|
706
705
|
|
707
706
|
{int array_shape[1] = {i_n};
|
708
707
|
x = dcl_crealary2obj(io_x, (i_n), 1, array_shape);
|
@@ -731,7 +730,7 @@ dcl_sinqi(obj, n)
|
|
731
730
|
|
732
731
|
o_wsave= ALLOCA_N(real, (3*i_n+15));
|
733
732
|
|
734
|
-
|
733
|
+
sinqi__(&i_n, o_wsave);
|
735
734
|
|
736
735
|
{int array_shape[1] = {3*i_n+15};
|
737
736
|
wsave = dcl_crealary2obj(o_wsave, (3*i_n+15), 1, array_shape);
|
@@ -773,7 +772,7 @@ dcl_sint(obj, n, x, wsave)
|
|
773
772
|
i_wsave = dcl_obj2crealary(wsave);
|
774
773
|
|
775
774
|
|
776
|
-
|
775
|
+
sint__(&i_n, io_x, i_wsave);
|
777
776
|
|
778
777
|
{int array_shape[1] = {i_n};
|
779
778
|
x = dcl_crealary2obj(io_x, (i_n), 1, array_shape);
|
@@ -802,7 +801,7 @@ dcl_sinti(obj, n)
|
|
802
801
|
|
803
802
|
o_wsave= ALLOCA_N(real, (2*i_n+i_n/2+15));
|
804
803
|
|
805
|
-
|
804
|
+
sinti__(&i_n, o_wsave);
|
806
805
|
|
807
806
|
{int array_shape[1] = {2*i_n+i_n/2+15};
|
808
807
|
wsave = dcl_crealary2obj(o_wsave, (2*i_n+i_n/2+15), 1, array_shape);
|
data/ext/numru/math2_intrlib.c
CHANGED
@@ -4,7 +4,6 @@
|
|
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
|
|
@@ -93,7 +92,7 @@ dcl_vrintr(obj, rx, n, jx)
|
|
93
92
|
io_rx = dcl_obj2crealary(rx);
|
94
93
|
|
95
94
|
|
96
|
-
|
95
|
+
vrintr__(io_rx, &i_n, &i_jx);
|
97
96
|
|
98
97
|
{int array_shape[1] = {i_jx*(i_n-1)+1};
|
99
98
|
rx = dcl_crealary2obj(io_rx, i_jx*(i_n-1)+1, 1, array_shape);
|
@@ -126,7 +125,7 @@ dcl_vcintr(obj, cx, n, jx)
|
|
126
125
|
/* initialization: not implemented for cx (ComplexInputOutputArrayVariable) */
|
127
126
|
|
128
127
|
|
129
|
-
|
128
|
+
vcintr__(io_cx, &i_n, &i_jx);
|
130
129
|
|
131
130
|
/* getresult: not implemented for cx (ComplexInputOutputArrayVariable) */
|
132
131
|
|
data/ext/numru/math2_rnmlib.c
CHANGED
@@ -4,7 +4,6 @@
|
|
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
|
|
@@ -106,7 +105,7 @@ dcl_vrrnm(obj, rx, n, jx, jy, nb)
|
|
106
105
|
|
107
106
|
o_ry= ALLOCA_N(real, i_jy*(i_n-1)+1);
|
108
107
|
|
109
|
-
|
108
|
+
vrrnm__(i_rx, o_ry, &i_n, &i_jx, &i_jy, &i_nb);
|
110
109
|
|
111
110
|
{int array_shape[1] = {i_jy*(i_n-1)+1};
|
112
111
|
ry = dcl_crealary2obj(o_ry, i_jy*(i_n-1)+1, 1, array_shape);
|
@@ -158,7 +157,7 @@ dcl_vrrnm0(obj, rx, n, jx, jy, nb)
|
|
158
157
|
|
159
158
|
o_ry= ALLOCA_N(real, i_jy*(i_n-1)+1);
|
160
159
|
|
161
|
-
|
160
|
+
vrrnm0__(i_rx, o_ry, &i_n, &i_jx, &i_jy, &i_nb);
|
162
161
|
|
163
162
|
{int array_shape[1] = {i_jy*(i_n-1)+1};
|
164
163
|
ry = dcl_crealary2obj(o_ry, i_jy*(i_n-1)+1, 1, array_shape);
|
@@ -210,7 +209,7 @@ dcl_vrrnm1(obj, rx, n, jx, jy, nb)
|
|
210
209
|
|
211
210
|
o_ry= ALLOCA_N(real, i_jx*(i_n-1)+1);
|
212
211
|
|
213
|
-
|
212
|
+
vrrnm1__(i_rx, o_ry, &i_n, &i_jx, &i_jy, &i_nb);
|
214
213
|
|
215
214
|
{int array_shape[1] = {i_jx*(i_n-1)+1};
|
216
215
|
ry = dcl_crealary2obj(o_ry, i_jx*(i_n-1)+1, 1, array_shape);
|
data/ext/numru/math2_shtlib.c
CHANGED
@@ -4,7 +4,6 @@
|
|
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
|
|
@@ -70,7 +69,7 @@ static VALUE
|
|
70
69
|
dcl_shtlib(obj)
|
71
70
|
VALUE obj;
|
72
71
|
{
|
73
|
-
|
72
|
+
shtlib__();
|
74
73
|
|
75
74
|
return Qnil;
|
76
75
|
|
@@ -102,7 +101,7 @@ dcl_shtint(obj, mm, jm, im)
|
|
102
101
|
|
103
102
|
o_work= ALLOCA_N(real, (i_jm+1)*(4*i_jm+5*i_mm+14)+(i_mm+1)*(i_mm+1)+i_mm+2+6*i_im+15);
|
104
103
|
|
105
|
-
|
104
|
+
shtint__(&i_mm, &i_jm, &i_im, o_work);
|
106
105
|
|
107
106
|
{int array_shape[1] = {(i_jm+1)*(4*i_jm+5*i_mm+14)+(i_mm+1)*(i_mm+1)+i_mm+2+6*i_im+15};
|
108
107
|
work = dcl_crealary2obj(o_work, (i_jm+1)*(4*i_jm+5*i_mm+14)+(i_mm+1)*(i_mm+1)+i_mm+2+6*i_im+15, 1, array_shape);
|
@@ -143,7 +142,7 @@ dcl_shtlap(obj, mm, ind, a)
|
|
143
142
|
|
144
143
|
o_b= ALLOCA_N(real, (i_mm+1)*(i_mm+1));
|
145
144
|
|
146
|
-
|
145
|
+
shtlap__(&i_mm, &i_ind, i_a, o_b);
|
147
146
|
|
148
147
|
{int array_shape[1] = {(i_mm+1)*(i_mm+1)};
|
149
148
|
b = dcl_crealary2obj(o_b, (i_mm+1)*(i_mm+1), 1, array_shape);
|
@@ -182,7 +181,7 @@ dcl_shtnml(obj, mm, n, m)
|
|
182
181
|
i_m = NUM2INT(m);
|
183
182
|
|
184
183
|
|
185
|
-
|
184
|
+
shtnml__(&i_mm, &i_n, &i_m, &o_lr, &o_li);
|
186
185
|
|
187
186
|
lr = INT2NUM(o_lr);
|
188
187
|
li = INT2NUM(o_li);
|
@@ -227,7 +226,7 @@ dcl_shtfun(obj, mm, jm, m, work)
|
|
227
226
|
|
228
227
|
o_fun= ALLOCA_N(real, ((2*i_jm+1)*(i_mm-i_m+1)));
|
229
228
|
|
230
|
-
|
229
|
+
shtfun__(&i_mm, &i_jm, &i_m, o_fun, i_work);
|
231
230
|
|
232
231
|
{int array_shape[2] = {(2*i_jm+1), (i_mm-i_m+1)};
|
233
232
|
fun = dcl_crealary2obj(o_fun, ((2*i_jm+1)*(i_mm-i_m+1)), 2, array_shape);
|
@@ -288,7 +287,7 @@ dcl_shtlfw(obj, mm, jm, m, isw, wm, work)
|
|
288
287
|
|
289
288
|
o_sm= ALLOCA_N(real, (i_mm-i_m+1));
|
290
289
|
|
291
|
-
|
290
|
+
shtlfw__(&i_mm, &i_jm, &i_m, &i_isw, i_wm, o_sm, i_work);
|
292
291
|
|
293
292
|
{int array_shape[1] = {i_mm-i_m+1};
|
294
293
|
sm = dcl_crealary2obj(o_sm, (i_mm-i_m+1), 1, array_shape);
|
@@ -350,7 +349,7 @@ dcl_shtlbw(obj, mm, jm, m, isw, sm, work)
|
|
350
349
|
|
351
350
|
o_wm= ALLOCA_N(real, (2*i_jm+1));
|
352
351
|
|
353
|
-
|
352
|
+
shtlbw__(&i_mm, &i_jm, &i_m, &i_isw, i_sm, o_wm, i_work);
|
354
353
|
|
355
354
|
{int array_shape[1] = {2*i_jm+1};
|
356
355
|
wm = dcl_crealary2obj(o_wm, (2*i_jm+1), 1, array_shape);
|
@@ -407,7 +406,7 @@ dcl_shts2w(obj, mm, jm, isw, s, work)
|
|
407
406
|
|
408
407
|
o_w= ALLOCA_N(real, ((2*i_jm+1)*(2*i_mm+1)));
|
409
408
|
|
410
|
-
|
409
|
+
shts2w__(&i_mm, &i_jm, &i_isw, i_s, o_w, i_work);
|
411
410
|
|
412
411
|
{int array_shape[2] = {(2*i_jm+1), (2*i_mm+1)};
|
413
412
|
w = dcl_crealary2obj(o_w, ((2*i_jm+1)*(2*i_mm+1)), 2, array_shape);
|
@@ -474,7 +473,7 @@ dcl_shtswa(obj, mm, jm, isw, m1, m2, s, work)
|
|
474
473
|
|
475
474
|
o_w= ALLOCA_N(real, ((2*i_jm+1)*(2*i_mm+1)));
|
476
475
|
|
477
|
-
|
476
|
+
shtswa__(&i_mm, &i_jm, &i_isw, &i_m1, &i_m2, i_s, o_w, i_work);
|
478
477
|
|
479
478
|
{int array_shape[2] = {(2*i_jm+1), (2*i_mm+1)};
|
480
479
|
w = dcl_crealary2obj(o_w, ((2*i_jm+1)*(2*i_mm+1)), 2, array_shape);
|
@@ -531,7 +530,7 @@ dcl_shtswz(obj, mm, jm, isw, s, work)
|
|
531
530
|
|
532
531
|
o_wz= ALLOCA_N(real, (2*i_jm+1));
|
533
532
|
|
534
|
-
|
533
|
+
shtswz__(&i_mm, &i_jm, &i_isw, i_s, o_wz, i_work);
|
535
534
|
|
536
535
|
{int array_shape[1] = {2*i_jm+1};
|
537
536
|
wz = dcl_crealary2obj(o_wz, (2*i_jm+1), 1, array_shape);
|
@@ -596,7 +595,7 @@ dcl_shtswm(obj, mm, jm, m, isw, s, work)
|
|
596
595
|
o_wr= ALLOCA_N(real, (2*i_jm+1));
|
597
596
|
o_wi= ALLOCA_N(real, (2*i_jm+1));
|
598
597
|
|
599
|
-
|
598
|
+
shtswm__(&i_mm, &i_jm, &i_m, &i_isw, i_s, o_wr, o_wi, i_work);
|
600
599
|
|
601
600
|
{int array_shape[1] = {2*i_jm+1};
|
602
601
|
wr = dcl_crealary2obj(o_wr, (2*i_jm+1), 1, array_shape);
|
@@ -671,7 +670,7 @@ dcl_shtswj(obj, mm, jm, isw, j, m1, m2, s, work)
|
|
671
670
|
|
672
671
|
o_wj= ALLOCA_N(real, (2*i_mm+1));
|
673
672
|
|
674
|
-
|
673
|
+
shtswj__(&i_mm, &i_jm, &i_isw, &i_j, &i_m1, &i_m2, i_s, o_wj, i_work);
|
675
674
|
|
676
675
|
{int array_shape[1] = {2*i_mm+1};
|
677
676
|
wj = dcl_crealary2obj(o_wj, (2*i_mm+1), 1, array_shape);
|
@@ -728,7 +727,7 @@ dcl_shtw2s(obj, mm, jm, isw, s, work)
|
|
728
727
|
|
729
728
|
o_w= ALLOCA_N(real, ((i_mm+1)*(i_mm+1)));
|
730
729
|
|
731
|
-
|
730
|
+
shtw2s__(&i_mm, &i_jm, &i_isw, i_s, o_w, i_work);
|
732
731
|
|
733
732
|
{int array_shape[2] = {(i_mm+1), (i_mm+1)};
|
734
733
|
w = dcl_crealary2obj(o_w, ((i_mm+1)*(i_mm+1)), 2, array_shape);
|
@@ -785,7 +784,7 @@ dcl_shtw2g(obj, mm, jm, im, w, work)
|
|
785
784
|
|
786
785
|
o_g= ALLOCA_N(real, ((2*i_im+1)*(2*i_jm+1)));
|
787
786
|
|
788
|
-
|
787
|
+
shtw2g__(&i_mm, &i_jm, &i_im, i_w, o_g, i_work);
|
789
788
|
|
790
789
|
{int array_shape[2] = {(2*i_im+1), (2*i_jm+1)};
|
791
790
|
g = dcl_crealary2obj(o_g, ((2*i_im+1)*(2*i_jm+1)), 2, array_shape);
|
@@ -852,7 +851,7 @@ dcl_shtwga(obj, mm, jm, im, m1, m2, w, work)
|
|
852
851
|
|
853
852
|
o_g= ALLOCA_N(real, ((2*i_im+1)*(2*i_jm+1)));
|
854
853
|
|
855
|
-
|
854
|
+
shtwga__(&i_mm, &i_jm, &i_im, &i_m1, &i_m2, i_w, o_g, i_work);
|
856
855
|
|
857
856
|
{int array_shape[2] = {(2*i_im+1), (2*i_jm+1)};
|
858
857
|
g = dcl_crealary2obj(o_g, ((2*i_im+1)*(2*i_jm+1)), 2, array_shape);
|
@@ -923,7 +922,7 @@ dcl_shtwgm(obj, mm, jm, im, m, wr, wi, work)
|
|
923
922
|
|
924
923
|
o_g= ALLOCA_N(real, ((2*i_im+1)*(2*i_jm+1)));
|
925
924
|
|
926
|
-
|
925
|
+
shtwgm__(&i_mm, &i_jm, &i_im, &i_m, i_wr, i_wi, o_g, i_work);
|
927
926
|
|
928
927
|
{int array_shape[2] = {(2*i_im+1), (2*i_jm+1)};
|
929
928
|
g = dcl_crealary2obj(o_g, ((2*i_im+1)*(2*i_jm+1)), 2, array_shape);
|
@@ -967,7 +966,7 @@ dcl_shtwgz(obj, jm, im, wz)
|
|
967
966
|
|
968
967
|
o_g= ALLOCA_N(real, ((2*i_im+1)*(2*i_jm+1)));
|
969
968
|
|
970
|
-
|
969
|
+
shtwgz__(&i_jm, &i_im, i_wz, o_g);
|
971
970
|
|
972
971
|
{int array_shape[2] = {(2*i_im+1), (2*i_jm+1)};
|
973
972
|
g = dcl_crealary2obj(o_g, ((2*i_im+1)*(2*i_jm+1)), 2, array_shape);
|
@@ -1028,7 +1027,7 @@ dcl_shtwgj(obj, mm, im, m1, m2, wj, work)
|
|
1028
1027
|
|
1029
1028
|
o_gj= ALLOCA_N(real, (2*i_im+1));
|
1030
1029
|
|
1031
|
-
|
1030
|
+
shtwgj__(&i_mm, &i_im, &i_m1, &i_m2, i_wj, o_gj, i_work);
|
1032
1031
|
|
1033
1032
|
{int array_shape[1] = {2*i_im+1};
|
1034
1033
|
gj = dcl_crealary2obj(o_gj, (2*i_im+1), 1, array_shape);
|
@@ -1085,7 +1084,7 @@ dcl_shtg2w(obj, mm, jm, im, g, work)
|
|
1085
1084
|
|
1086
1085
|
o_w= ALLOCA_N(real, ((2*i_jm+1)*(2*i_mm+1)));
|
1087
1086
|
|
1088
|
-
|
1087
|
+
shtg2w__(&i_mm, &i_jm, &i_im, i_g, o_w, i_work);
|
1089
1088
|
|
1090
1089
|
{int array_shape[2] = {(2*i_jm+1), (2*i_mm+1)};
|
1091
1090
|
w = dcl_crealary2obj(o_w, ((2*i_jm+1)*(2*i_mm+1)), 2, array_shape);
|
@@ -1150,7 +1149,7 @@ dcl_shts2g(obj, mm, jm, im, isw, s, work)
|
|
1150
1149
|
o_w= ALLOCA_N(real, ((2*i_jm+1)*(2*i_mm+1)));
|
1151
1150
|
o_g= ALLOCA_N(real, ((2*i_im+1)*(2*i_jm+1)));
|
1152
1151
|
|
1153
|
-
|
1152
|
+
shts2g__(&i_mm, &i_jm, &i_im, &i_isw, i_s, o_w, o_g, i_work);
|
1154
1153
|
|
1155
1154
|
{int array_shape[2] = {(2*i_jm+1), (2*i_mm+1)};
|
1156
1155
|
w = dcl_crealary2obj(o_w, ((2*i_jm+1)*(2*i_mm+1)), 2, array_shape);
|
@@ -1228,7 +1227,7 @@ dcl_shtsga(obj, mm, jm, im, isw, m1, m2, s, work)
|
|
1228
1227
|
o_w= ALLOCA_N(real, ((2*i_jm+1)*(2*i_mm+1)));
|
1229
1228
|
o_g= ALLOCA_N(real, ((2*i_im+1)*(2*i_jm+1)));
|
1230
1229
|
|
1231
|
-
|
1230
|
+
shtsga__(&i_mm, &i_jm, &i_im, &i_isw, &i_m1, &i_m2, i_s, o_w, o_g, i_work);
|
1232
1231
|
|
1233
1232
|
{int array_shape[2] = {(2*i_jm+1), (2*i_mm+1)};
|
1234
1233
|
w = dcl_crealary2obj(o_w, ((2*i_jm+1)*(2*i_mm+1)), 2, array_shape);
|
@@ -1296,7 +1295,7 @@ dcl_shtsgz(obj, mm, jm, im, isw, s, work)
|
|
1296
1295
|
o_wz= ALLOCA_N(real, (2*i_jm+1));
|
1297
1296
|
o_g= ALLOCA_N(real, ((2*i_im+1)*(2*i_jm+1)));
|
1298
1297
|
|
1299
|
-
|
1298
|
+
shtsgz__(&i_mm, &i_jm, &i_im, &i_isw, i_s, o_wz, o_g, i_work);
|
1300
1299
|
|
1301
1300
|
{int array_shape[1] = {2*i_jm+1};
|
1302
1301
|
wz = dcl_crealary2obj(o_wz, (2*i_jm+1), 1, array_shape);
|
@@ -1372,7 +1371,7 @@ dcl_shtsgm(obj, mm, jm, im, m, isw, s, work)
|
|
1372
1371
|
o_wi= ALLOCA_N(real, (2*i_jm+1));
|
1373
1372
|
o_g= ALLOCA_N(real, ((2*i_im+1)*(2*i_jm+1)));
|
1374
1373
|
|
1375
|
-
|
1374
|
+
shtsgm__(&i_mm, &i_jm, &i_im, &i_m, &i_isw, i_s, o_wr, o_wi, o_g, i_work);
|
1376
1375
|
|
1377
1376
|
{int array_shape[1] = {2*i_jm+1};
|
1378
1377
|
wr = dcl_crealary2obj(o_wr, (2*i_jm+1), 1, array_shape);
|
@@ -1458,7 +1457,7 @@ dcl_shtsgj(obj, mm, jm, im, isw, j, m1, m2, s, work)
|
|
1458
1457
|
o_wj= ALLOCA_N(real, (2*i_mm+1));
|
1459
1458
|
o_gj= ALLOCA_N(real, (2*i_im+1));
|
1460
1459
|
|
1461
|
-
|
1460
|
+
shtsgj__(&i_mm, &i_jm, &i_im, &i_isw, &i_j, &i_m1, &i_m2, i_s, o_wj, o_gj, i_work);
|
1462
1461
|
|
1463
1462
|
{int array_shape[1] = {2*i_mm+1};
|
1464
1463
|
wj = dcl_crealary2obj(o_wj, (2*i_mm+1), 1, array_shape);
|
@@ -1526,7 +1525,7 @@ dcl_shtg2s(obj, mm, jm, im, isw, g, work)
|
|
1526
1525
|
o_w= ALLOCA_N(real, ((2*i_jm+1)*(2*i_mm+1)));
|
1527
1526
|
o_s= ALLOCA_N(real, (i_mm+1)*(i_mm+1));
|
1528
1527
|
|
1529
|
-
|
1528
|
+
shtg2s__(&i_mm, &i_jm, &i_im, &i_isw, i_g, o_w, o_s, i_work);
|
1530
1529
|
|
1531
1530
|
{int array_shape[2] = {(2*i_jm+1), (2*i_mm+1)};
|
1532
1531
|
w = dcl_crealary2obj(o_w, ((2*i_jm+1)*(2*i_mm+1)), 2, array_shape);
|
data/ext/numru/math2_vstlib.c
CHANGED
@@ -4,7 +4,6 @@
|
|
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
|
|
@@ -85,7 +84,7 @@ dcl_vs1int(obj, ix)
|
|
85
84
|
o_wz= ALLOCA_N(real, (i_ix*2));
|
86
85
|
o_nw= ALLOCA_N(integer, (i_ix));
|
87
86
|
|
88
|
-
|
87
|
+
vs1int__(o_wz, o_nw, &i_ix);
|
89
88
|
|
90
89
|
{int array_shape[2] = {i_ix, 2};
|
91
90
|
wz = dcl_crealary2obj(o_wz, (i_ix*2), 2, array_shape);
|
@@ -139,7 +138,7 @@ dcl_vs1din(obj, wz, nw, ix, x)
|
|
139
138
|
i_x = dcl_obj2crealary(x);
|
140
139
|
|
141
140
|
|
142
|
-
|
141
|
+
vs1din__(io_wz, io_nw, &i_ix, i_x);
|
143
142
|
|
144
143
|
{int array_shape[2] = {i_ix, 2};
|
145
144
|
wz = dcl_crealary2obj(io_wz, (i_ix*2), 2, array_shape);
|
@@ -187,7 +186,7 @@ dcl_vs1out(obj, wz, nw, ix)
|
|
187
186
|
i_nw = dcl_obj2cintegerary(nw);
|
188
187
|
|
189
188
|
|
190
|
-
|
189
|
+
vs1out__(io_wz, i_nw, &i_ix);
|
191
190
|
|
192
191
|
{int array_shape[2] = {i_ix, 2};
|
193
192
|
wz = dcl_crealary2obj(io_wz, (i_ix*2), 2, array_shape);
|
@@ -224,7 +223,7 @@ dcl_vs2int(obj, ix, iy)
|
|
224
223
|
o_wz= ALLOCA_N(real, (i_ix*i_iy*5));
|
225
224
|
o_nw= ALLOCA_N(integer, (i_ix*i_iy));
|
226
225
|
|
227
|
-
|
226
|
+
vs2int__(o_wz, o_nw, &i_ix, &i_iy);
|
228
227
|
|
229
228
|
{int array_shape[3] = {i_ix, i_iy, 5};
|
230
229
|
wz = dcl_crealary2obj(o_wz, (i_ix*i_iy*5), 3, array_shape);
|
@@ -292,7 +291,7 @@ dcl_vs2din(obj, wz, nw, ix, iy, x, y)
|
|
292
291
|
i_y = dcl_obj2crealary(y);
|
293
292
|
|
294
293
|
|
295
|
-
|
294
|
+
vs2din__(io_wz, io_nw, &i_ix, &i_iy, i_x, i_y);
|
296
295
|
|
297
296
|
{int array_shape[3] = {i_ix, i_iy, 5};
|
298
297
|
wz = dcl_crealary2obj(io_wz, (i_ix*i_iy*5), 3, array_shape);
|
@@ -346,7 +345,7 @@ dcl_vs2out(obj, wz, nw, ix, iy)
|
|
346
345
|
i_nw = dcl_obj2cintegerary(nw);
|
347
346
|
|
348
347
|
|
349
|
-
|
348
|
+
vs2out__(io_wz, i_nw, &i_ix, &i_iy);
|
350
349
|
|
351
350
|
{int array_shape[3] = {i_ix, i_iy, 5};
|
352
351
|
wz = dcl_crealary2obj(io_wz, (i_ix*i_iy*5), 3, array_shape);
|
data/ext/numru/misc1_chnlib.c
CHANGED
@@ -4,7 +4,6 @@
|
|
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
|
|
@@ -90,7 +89,7 @@ dcl_chngc(obj, ch, ca, cb)
|
|
90
89
|
i_cb = StringValuePtr(cb);
|
91
90
|
|
92
91
|
|
93
|
-
|
92
|
+
chngc__(io_ch, i_ca, i_cb, (ftnlen)strlen(io_ch), (ftnlen)strlen(i_ca), (ftnlen)strlen(i_cb));
|
94
93
|
|
95
94
|
ch = rb_str_new2(io_ch);
|
96
95
|
|
@@ -128,7 +127,7 @@ dcl_chngi(obj, ch, ca, ii, cfmt)
|
|
128
127
|
i_cfmt = StringValuePtr(cfmt);
|
129
128
|
|
130
129
|
|
131
|
-
|
130
|
+
chngi__(io_ch, i_ca, &i_ii, i_cfmt, (ftnlen)strlen(io_ch), (ftnlen)strlen(i_ca), (ftnlen)strlen(i_cfmt));
|
132
131
|
|
133
132
|
ch = rb_str_new2(io_ch);
|
134
133
|
|
@@ -166,7 +165,7 @@ dcl_chngr(obj, ch, ca, rr, cfmt)
|
|
166
165
|
i_cfmt = StringValuePtr(cfmt);
|
167
166
|
|
168
167
|
|
169
|
-
|
168
|
+
chngr__(io_ch, i_ca, &i_rr, i_cfmt, (ftnlen)strlen(io_ch), (ftnlen)strlen(i_ca), (ftnlen)strlen(i_cfmt));
|
170
169
|
|
171
170
|
ch = rb_str_new2(io_ch);
|
172
171
|
|