gsl 2.1.0.1 → 2.1.0.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/.travis.yml +3 -1
- data/ChangeLog +8 -0
- data/ext/gsl_native/complex.c +11 -1
- data/ext/gsl_native/error.c +2 -2
- data/ext/gsl_native/gsl.c +4 -0
- data/ext/gsl_native/include/rb_gsl.h +6 -0
- data/ext/gsl_native/include/rb_gsl_interp2d.h +40 -0
- data/ext/gsl_native/interp2d.c +266 -0
- data/ext/gsl_native/spline2d.c +211 -0
- data/lib/gsl.rb +3 -2
- data/lib/gsl/interp2d_fix.rb +64 -0
- data/lib/gsl/version.rb +1 -1
- data/rdoc/interp2d.rdoc +0 -0
- data/test/gsl/complex_test.rb +12 -1
- data/test/gsl/interp2d_test.rb +108 -0
- data/test/gsl/spline2d_test.rb +81 -0
- metadata +168 -158
data/lib/gsl.rb
CHANGED
@@ -1,13 +1,14 @@
|
|
1
1
|
begin
|
2
|
-
require 'narray'
|
2
|
+
require 'narray' if ENV['NARRAY']
|
3
3
|
rescue LoadError
|
4
4
|
end
|
5
5
|
|
6
6
|
begin
|
7
|
-
require 'nmatrix/nmatrix'
|
7
|
+
require 'nmatrix/nmatrix' if ENV['NMATRIX']
|
8
8
|
rescue LoadError
|
9
9
|
end
|
10
10
|
|
11
11
|
require 'gsl_native'
|
12
12
|
require 'gsl/version'
|
13
13
|
require 'gsl/oper'
|
14
|
+
require 'gsl/interp2d_fix' if GSL::GSL_VERSION >= '2.0'
|
@@ -0,0 +1,64 @@
|
|
1
|
+
# Reasons for existence of this code:
|
2
|
+
#
|
3
|
+
# It so happens that GSL's 2D interpolation methods are somehow swapping X and
|
4
|
+
# Y co-ordinates and returning a wrong result. This is a bug in GSL, and in order
|
5
|
+
# to make up for that, we swap the x and y points before passing them to GSL.
|
6
|
+
# The detect_gsl_interp2d_swapping_bug method tests the inter2d eval function
|
7
|
+
# to see if the bug exists so that in case a future GSL update fixes the bug,
|
8
|
+
# this Ruby wrapper will remain unaffected.
|
9
|
+
#
|
10
|
+
# For testing whether the bug exists, the eval method is run and tested against
|
11
|
+
# what is known to be corrent output (ans_expected), and the @@swapped class
|
12
|
+
# variable is set to true if the result is not consistent with the expected
|
13
|
+
# output. If @swapped is true, the x and y values are internally swapped by
|
14
|
+
# the Ruby wrapper before passing them to GSL for processing.
|
15
|
+
module GSL
|
16
|
+
class Interp2d
|
17
|
+
module BugDetectHelper
|
18
|
+
class << self
|
19
|
+
def asymmetric_function(x, y)
|
20
|
+
x - 2*y
|
21
|
+
end
|
22
|
+
end
|
23
|
+
end
|
24
|
+
|
25
|
+
def self.detect_gsl_interp2d_swapping_bug
|
26
|
+
@@swapped = nil
|
27
|
+
x = GSL::Vector.alloc((-4..4).to_a)
|
28
|
+
y = GSL::Vector.alloc((-4..4).to_a)
|
29
|
+
|
30
|
+
z = []
|
31
|
+
x.each do |xi|
|
32
|
+
y.each do |yi|
|
33
|
+
z << BugDetectHelper.asymmetric_function(xi, yi)
|
34
|
+
end
|
35
|
+
end
|
36
|
+
z = GSL::Vector.alloc(z)
|
37
|
+
i2d = GSL::Interp2d.alloc(GSL::Interp2d::BICUBIC, x, y, z)
|
38
|
+
|
39
|
+
test_x = x[1]
|
40
|
+
test_y = y[1]
|
41
|
+
|
42
|
+
ans_normal = i2d.eval(x,y,z,test_x, test_y)
|
43
|
+
ans_swapped = i2d.eval(x,y,z,test_y, test_x)
|
44
|
+
ans_expected = BugDetectHelper.asymmetric_function(test_x, test_y)
|
45
|
+
@@swapped = ans_expected == ans_normal
|
46
|
+
|
47
|
+
@@swapped
|
48
|
+
end
|
49
|
+
|
50
|
+
def self.swapped
|
51
|
+
@@swapped
|
52
|
+
end
|
53
|
+
end
|
54
|
+
|
55
|
+
class Spline2d
|
56
|
+
@@swapped = GSL::Interp2d.detect_gsl_interp2d_swapping_bug
|
57
|
+
|
58
|
+
def self.swapped
|
59
|
+
@@swapped
|
60
|
+
end
|
61
|
+
end
|
62
|
+
end
|
63
|
+
|
64
|
+
GSL::Interp2d.detect_gsl_interp2d_swapping_bug
|
data/lib/gsl/version.rb
CHANGED
data/rdoc/interp2d.rdoc
ADDED
File without changes
|
data/test/gsl/complex_test.rb
CHANGED
@@ -16,5 +16,16 @@ class ComplexTest < GSL::TestCase
|
|
16
16
|
'gsl_complex_polar imag part at (r=%g,t=%g)' % [r, t]
|
17
17
|
}
|
18
18
|
end
|
19
|
-
|
19
|
+
|
20
|
+
# Test if it is possible to create a GSL::Complex from ::Complex
|
21
|
+
def test_rb_complex_creation
|
22
|
+
rb_comp = Complex(rand, rand)
|
23
|
+
|
24
|
+
z = GSL::Complex.alloc(rb_comp)
|
25
|
+
|
26
|
+
assert_rel z.real, rb_comp.real, GSL::DBL_EPSILON,
|
27
|
+
"gsl_complex real part. Re(#{rb_comp}) = #{z.real}"
|
28
|
+
assert_rel z.imag, rb_comp.imag, GSL::DBL_EPSILON,
|
29
|
+
"gsl_complex imag part. Im(#{rb_comp}) = #{z.imag}"
|
30
|
+
end
|
20
31
|
end
|
@@ -0,0 +1,108 @@
|
|
1
|
+
require 'test_helper'
|
2
|
+
|
3
|
+
class Interp2dTest < GSL::TestCase
|
4
|
+
|
5
|
+
def setup
|
6
|
+
x_samples =(-20..20).map(&:to_f).to_a
|
7
|
+
y_samples = (-20..20).map(&:to_f).to_a
|
8
|
+
z_samples = []
|
9
|
+
x_samples.each do |x|
|
10
|
+
y_samples.each do |y|
|
11
|
+
z_samples << saddle(x,y)
|
12
|
+
end
|
13
|
+
end
|
14
|
+
|
15
|
+
@x_array = GSL::Vector.alloc(x_samples)
|
16
|
+
@y_array = GSL::Vector.alloc(y_samples)
|
17
|
+
@z_array = GSL::Vector.alloc(z_samples)
|
18
|
+
|
19
|
+
tolerance = 0.05 # 5% inaccuracy is tolerated in tests below
|
20
|
+
|
21
|
+
|
22
|
+
@i2d_bicubic = GSL::Interp2d.alloc(GSL::Interp2d::BICUBIC,
|
23
|
+
@x_array, @y_array, @z_array)
|
24
|
+
|
25
|
+
@i2d_bilinear = GSL::Interp2d.alloc(GSL::Interp2d::BILINEAR,
|
26
|
+
@x_array, @y_array, @z_array)
|
27
|
+
end
|
28
|
+
|
29
|
+
def saddle(x,y)
|
30
|
+
x*x - y*y
|
31
|
+
end
|
32
|
+
|
33
|
+
def test_constants
|
34
|
+
assert_equal 0, GSL::Interp2d::BICUBIC
|
35
|
+
assert_equal 1, GSL::Interp2d::BILINEAR
|
36
|
+
end
|
37
|
+
|
38
|
+
def test_alloc_alternate_arg_construct
|
39
|
+
i2d = GSL::Interp2d.alloc(GSL::Interp2d::BICUBIC, 10, 10)
|
40
|
+
|
41
|
+
assert_equal GSL::Interp2d, i2d.class
|
42
|
+
end
|
43
|
+
|
44
|
+
def test_alloc
|
45
|
+
assert_equal GSL::Interp2d, @i2d_bicubic.class
|
46
|
+
assert_equal GSL::Interp2d, @i2d_bilinear.class
|
47
|
+
end
|
48
|
+
|
49
|
+
def test_alloc_init
|
50
|
+
i2d = GSL::Interp2d.alloc(GSL::Interp2d::BICUBIC, @x_array.size, @y_array.size)
|
51
|
+
i2d.init(@x_array, @y_array, @z_array)
|
52
|
+
|
53
|
+
assert_equal GSL::Interp2d, i2d.class
|
54
|
+
end
|
55
|
+
|
56
|
+
def test_info
|
57
|
+
str = <<-EOF
|
58
|
+
Class: GSL::Interp2d
|
59
|
+
SuperClass: GSL::Object
|
60
|
+
Type: bilinear
|
61
|
+
xmin: -20.000000
|
62
|
+
xmax: 20.000000
|
63
|
+
ymin: -20.000000
|
64
|
+
ymax: 20.000000
|
65
|
+
xsize: 41
|
66
|
+
ysize: 41
|
67
|
+
EOF
|
68
|
+
assert_equal str, @i2d_bilinear.info
|
69
|
+
end
|
70
|
+
|
71
|
+
def test_use_case_saddle_interpolation
|
72
|
+
tolerance = 0.05 # 5% inaccuracy is tolerated in tests below
|
73
|
+
interpolator_type = GSL::Interp2d::BICUBIC
|
74
|
+
|
75
|
+
i2d = GSL::Interp2d.alloc(interpolator_type, @x_array, @y_array, @z_array)
|
76
|
+
|
77
|
+
# confirm that the fit passes very close to the sampled data points
|
78
|
+
@x_array.each do |x|
|
79
|
+
@y_array.each do |y|
|
80
|
+
expected_z = saddle(x,y)
|
81
|
+
z = i2d.eval(@x_array, @y_array, @z_array, x, y)
|
82
|
+
error = (z - expected_z).abs
|
83
|
+
max_error = (expected_z.abs)*tolerance
|
84
|
+
if max_error == 0
|
85
|
+
max_error = tolerance
|
86
|
+
end
|
87
|
+
refute error > max_error, "error @ sample #{x},#{y} z: #{z} expected_z: #{expected_z}"
|
88
|
+
end
|
89
|
+
end
|
90
|
+
|
91
|
+
interstitial_x_values = @x_array.to_a.first(@x_array.size-1).map {|v| v+ 0.5}
|
92
|
+
interstitial_y_values = @y_array.to_a.first(@y_array.size-1).map {|v| v+ 0.3}
|
93
|
+
|
94
|
+
# confirm that interstitial values are interpolated accurately
|
95
|
+
interstitial_x_values.each do |x|
|
96
|
+
interstitial_y_values.each do |y|
|
97
|
+
expected_z = saddle(x,y)
|
98
|
+
z = i2d.eval(@x_array, @y_array, @z_array, x,y)
|
99
|
+
error = (z - expected_z).abs
|
100
|
+
max_error = (expected_z.abs)*tolerance
|
101
|
+
if max_error == 0
|
102
|
+
max_error = tolerance
|
103
|
+
end
|
104
|
+
refute error > max_error, "error @ interstitial #{x},#{y}"
|
105
|
+
end
|
106
|
+
end
|
107
|
+
end
|
108
|
+
end if GSL::GSL_VERSION >= '2.0'
|
@@ -0,0 +1,81 @@
|
|
1
|
+
require 'test_helper'
|
2
|
+
|
3
|
+
class Spline2dTest < GSL::TestCase
|
4
|
+
def saddle(x,y)
|
5
|
+
x*x - y*y
|
6
|
+
end
|
7
|
+
|
8
|
+
def setup
|
9
|
+
x_samples =(-20..20).map(&:to_f).to_a
|
10
|
+
y_samples = (-20..20).map(&:to_f).to_a
|
11
|
+
z_samples = []
|
12
|
+
x_samples.each do |x|
|
13
|
+
y_samples.each do |y|
|
14
|
+
z_samples << saddle(x,y)
|
15
|
+
end
|
16
|
+
end
|
17
|
+
|
18
|
+
@x_array = GSL::Vector.alloc(x_samples)
|
19
|
+
@y_array = GSL::Vector.alloc(y_samples)
|
20
|
+
@z_array = GSL::Vector.alloc(z_samples)
|
21
|
+
|
22
|
+
@i2d_bicubic = GSL::Spline2d.alloc(GSL::Interp2d::BICUBIC,
|
23
|
+
@x_array, @y_array, @z_array)
|
24
|
+
|
25
|
+
@i2d_bilinear = GSL::Spline2d.alloc(GSL::Interp2d::BILINEAR,
|
26
|
+
@x_array, @y_array, @z_array)
|
27
|
+
end
|
28
|
+
|
29
|
+
def test_info
|
30
|
+
str = <<-EOF
|
31
|
+
Class: GSL::Spline2d
|
32
|
+
SuperClass: GSL::Object
|
33
|
+
Type: bilinear
|
34
|
+
xmin: -20.000000
|
35
|
+
xmax: 20.000000
|
36
|
+
ymin: -20.000000
|
37
|
+
ymax: 20.000000
|
38
|
+
xSize: 41
|
39
|
+
ySize: 41
|
40
|
+
EOF
|
41
|
+
assert_equal str, @i2d_bilinear.info
|
42
|
+
end
|
43
|
+
|
44
|
+
def test_use_case_saddle_interpolation
|
45
|
+
tolerance = 0.05 # 5% inaccuracy is tolerated in tests below
|
46
|
+
interpolator_type = GSL::Interp2d::BICUBIC
|
47
|
+
|
48
|
+
i2d = GSL::Spline2d.alloc(interpolator_type, @x_array, @y_array, @z_array)
|
49
|
+
|
50
|
+
# confirm that the fit passes very close to the sampled data points
|
51
|
+
@x_array.each do |x|
|
52
|
+
@y_array.each do |y|
|
53
|
+
expected_z = saddle(x,y)
|
54
|
+
z = i2d.eval(x, y)
|
55
|
+
error = (z - expected_z).abs
|
56
|
+
max_error = (expected_z.abs)*tolerance
|
57
|
+
if max_error == 0
|
58
|
+
max_error = tolerance
|
59
|
+
end
|
60
|
+
refute error > max_error, "error @ sample #{x},#{y} z: #{z} expected_z: #{expected_z}"
|
61
|
+
end
|
62
|
+
end
|
63
|
+
|
64
|
+
interstitial_x_values = @x_array.to_a.first(@x_array.size-1).map {|v| v+ 0.5}
|
65
|
+
interstitial_y_values = @y_array.to_a.first(@y_array.size-1).map {|v| v+ 0.3}
|
66
|
+
|
67
|
+
# confirm that interstitial values are interpolated accurately
|
68
|
+
interstitial_x_values.each do |x|
|
69
|
+
interstitial_y_values.each do |y|
|
70
|
+
expected_z = saddle(x,y)
|
71
|
+
z = i2d.eval(x,y)
|
72
|
+
error = (z - expected_z).abs
|
73
|
+
max_error = (expected_z.abs)*tolerance
|
74
|
+
if max_error == 0
|
75
|
+
max_error = tolerance
|
76
|
+
end
|
77
|
+
refute error > max_error, "error @ interstitial #{x},#{y}"
|
78
|
+
end
|
79
|
+
end
|
80
|
+
end
|
81
|
+
end if GSL::GSL_VERSION >= '2.0'
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: gsl
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 2.1.0.
|
4
|
+
version: 2.1.0.2
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Yoshiki Tsunesada
|
@@ -11,7 +11,7 @@ authors:
|
|
11
11
|
autorequire:
|
12
12
|
bindir: bin
|
13
13
|
cert_chain: []
|
14
|
-
date:
|
14
|
+
date: 2017-01-30 00:00:00.000000000 Z
|
15
15
|
dependencies:
|
16
16
|
- !ruby/object:Gem::Dependency
|
17
17
|
name: rake-compiler
|
@@ -76,118 +76,120 @@ executables: []
|
|
76
76
|
extensions:
|
77
77
|
- ext/gsl_native/extconf.rb
|
78
78
|
extra_rdoc_files:
|
79
|
-
- rdoc/
|
80
|
-
- rdoc/
|
79
|
+
- rdoc/interp2d.rdoc
|
80
|
+
- rdoc/ehandling.rdoc
|
81
|
+
- rdoc/integration.rdoc
|
82
|
+
- rdoc/sort.rdoc
|
81
83
|
- rdoc/multiroot.rdoc
|
82
|
-
- rdoc/function.rdoc
|
83
|
-
- rdoc/ref.rdoc
|
84
84
|
- rdoc/stats.rdoc
|
85
|
-
- rdoc/hist3d.rdoc
|
86
|
-
- rdoc/sf.rdoc
|
87
|
-
- rdoc/monte.rdoc
|
88
|
-
- rdoc/tut.rdoc
|
89
85
|
- rdoc/bspline.rdoc
|
90
|
-
- rdoc/
|
86
|
+
- rdoc/hist.rdoc
|
87
|
+
- rdoc/wavelet.rdoc
|
88
|
+
- rdoc/function.rdoc
|
89
|
+
- rdoc/use.rdoc
|
90
|
+
- rdoc/const.rdoc
|
91
|
+
- rdoc/interp.rdoc
|
92
|
+
- rdoc/hist2d.rdoc
|
93
|
+
- rdoc/vector.rdoc
|
94
|
+
- rdoc/tensor.rdoc
|
95
|
+
- rdoc/poly.rdoc
|
96
|
+
- rdoc/linalg_complex.rdoc
|
97
|
+
- rdoc/sum.rdoc
|
98
|
+
- rdoc/siman.rdoc
|
91
99
|
- rdoc/multimin.rdoc
|
92
|
-
- rdoc/
|
93
|
-
- rdoc/combi.rdoc
|
100
|
+
- rdoc/ntuple.rdoc
|
94
101
|
- rdoc/changes.rdoc
|
95
|
-
- rdoc/
|
96
|
-
- rdoc/
|
97
|
-
- rdoc/
|
102
|
+
- rdoc/odeiv.rdoc
|
103
|
+
- rdoc/nonlinearfit.rdoc
|
104
|
+
- rdoc/ref.rdoc
|
98
105
|
- rdoc/roots.rdoc
|
99
|
-
- rdoc/
|
100
|
-
- rdoc/
|
101
|
-
- rdoc/
|
102
|
-
- rdoc/alf.rdoc
|
103
|
-
- rdoc/graph.rdoc
|
104
|
-
- rdoc/poly.rdoc
|
105
|
-
- rdoc/hist.rdoc
|
106
|
-
- rdoc/cholesky_complex.rdoc
|
106
|
+
- rdoc/ndlinear.rdoc
|
107
|
+
- rdoc/randist.rdoc
|
108
|
+
- rdoc/complex.rdoc
|
107
109
|
- rdoc/fft.rdoc
|
110
|
+
- rdoc/graph.rdoc
|
111
|
+
- rdoc/vector_complex.rdoc
|
112
|
+
- rdoc/nmatrix.rdoc
|
113
|
+
- rdoc/narray.rdoc
|
114
|
+
- rdoc/monte.rdoc
|
108
115
|
- rdoc/rng.rdoc
|
109
|
-
- rdoc/
|
110
|
-
- rdoc/
|
116
|
+
- rdoc/diff.rdoc
|
117
|
+
- rdoc/eigen.rdoc
|
118
|
+
- rdoc/sf.rdoc
|
111
119
|
- rdoc/qrng.rdoc
|
112
|
-
- rdoc/
|
113
|
-
- rdoc/
|
114
|
-
- rdoc/tensor.rdoc
|
115
|
-
- rdoc/matrix.rdoc
|
116
|
-
- rdoc/fit.rdoc
|
117
|
-
- rdoc/start.rdoc
|
120
|
+
- rdoc/alf.rdoc
|
121
|
+
- rdoc/combi.rdoc
|
118
122
|
- rdoc/dht.rdoc
|
119
|
-
- rdoc/
|
123
|
+
- rdoc/matrix.rdoc
|
124
|
+
- rdoc/cholesky_complex.rdoc
|
120
125
|
- rdoc/cheb.rdoc
|
126
|
+
- rdoc/tut.rdoc
|
127
|
+
- rdoc/fit.rdoc
|
128
|
+
- rdoc/math.rdoc
|
121
129
|
- rdoc/intro.rdoc
|
130
|
+
- rdoc/linalg.rdoc
|
131
|
+
- rdoc/blas.rdoc
|
132
|
+
- rdoc/start.rdoc
|
133
|
+
- rdoc/hist3d.rdoc
|
122
134
|
- rdoc/perm.rdoc
|
123
|
-
- rdoc/wavelet.rdoc
|
124
|
-
- rdoc/odeiv.rdoc
|
125
|
-
- rdoc/vector.rdoc
|
126
135
|
- rdoc/min.rdoc
|
127
|
-
- rdoc/
|
128
|
-
- rdoc/ehandling.rdoc
|
129
|
-
- rdoc/
|
130
|
-
- rdoc/
|
131
|
-
- rdoc/
|
132
|
-
- rdoc/
|
133
|
-
- rdoc/
|
134
|
-
- rdoc/
|
135
|
-
- tmp/
|
136
|
-
- tmp/
|
137
|
-
- tmp/
|
138
|
-
- tmp/
|
139
|
-
- tmp/
|
140
|
-
- tmp/
|
141
|
-
- tmp/
|
142
|
-
- tmp/
|
143
|
-
- tmp/
|
144
|
-
- tmp/
|
145
|
-
- tmp/
|
146
|
-
- tmp/
|
147
|
-
- tmp/
|
148
|
-
- tmp/
|
149
|
-
- tmp/
|
150
|
-
- tmp/
|
151
|
-
- tmp/
|
152
|
-
- tmp/
|
153
|
-
- tmp/
|
154
|
-
- tmp/
|
155
|
-
- tmp/
|
156
|
-
- tmp/
|
157
|
-
- tmp/
|
158
|
-
- tmp/
|
159
|
-
- tmp/
|
160
|
-
- tmp/
|
161
|
-
- tmp/
|
162
|
-
- tmp/
|
163
|
-
- tmp/
|
164
|
-
- tmp/
|
165
|
-
- tmp/
|
166
|
-
- tmp/
|
167
|
-
- tmp/
|
168
|
-
- tmp/
|
169
|
-
- tmp/
|
170
|
-
- tmp/
|
171
|
-
- tmp/
|
172
|
-
- tmp/
|
173
|
-
- tmp/
|
174
|
-
- tmp/
|
175
|
-
- tmp/
|
176
|
-
- tmp/
|
177
|
-
- tmp/
|
178
|
-
- tmp/
|
179
|
-
- tmp/
|
180
|
-
- tmp/
|
181
|
-
- tmp/
|
182
|
-
- tmp/
|
183
|
-
- tmp/
|
184
|
-
- tmp/i686-linux/stage/rdoc/ehandling.rdoc
|
185
|
-
- tmp/i686-linux/stage/rdoc/ntuple.rdoc
|
186
|
-
- tmp/i686-linux/stage/rdoc/hist2d.rdoc
|
187
|
-
- tmp/i686-linux/stage/rdoc/blas.rdoc
|
188
|
-
- tmp/i686-linux/stage/rdoc/diff.rdoc
|
189
|
-
- tmp/i686-linux/stage/rdoc/sum.rdoc
|
190
|
-
- tmp/i686-linux/stage/rdoc/use.rdoc
|
136
|
+
- tmp/x86_64-linux/stage/rdoc/interp2d.rdoc
|
137
|
+
- tmp/x86_64-linux/stage/rdoc/ehandling.rdoc
|
138
|
+
- tmp/x86_64-linux/stage/rdoc/integration.rdoc
|
139
|
+
- tmp/x86_64-linux/stage/rdoc/sort.rdoc
|
140
|
+
- tmp/x86_64-linux/stage/rdoc/multiroot.rdoc
|
141
|
+
- tmp/x86_64-linux/stage/rdoc/stats.rdoc
|
142
|
+
- tmp/x86_64-linux/stage/rdoc/bspline.rdoc
|
143
|
+
- tmp/x86_64-linux/stage/rdoc/hist.rdoc
|
144
|
+
- tmp/x86_64-linux/stage/rdoc/wavelet.rdoc
|
145
|
+
- tmp/x86_64-linux/stage/rdoc/function.rdoc
|
146
|
+
- tmp/x86_64-linux/stage/rdoc/use.rdoc
|
147
|
+
- tmp/x86_64-linux/stage/rdoc/const.rdoc
|
148
|
+
- tmp/x86_64-linux/stage/rdoc/interp.rdoc
|
149
|
+
- tmp/x86_64-linux/stage/rdoc/hist2d.rdoc
|
150
|
+
- tmp/x86_64-linux/stage/rdoc/vector.rdoc
|
151
|
+
- tmp/x86_64-linux/stage/rdoc/tensor.rdoc
|
152
|
+
- tmp/x86_64-linux/stage/rdoc/poly.rdoc
|
153
|
+
- tmp/x86_64-linux/stage/rdoc/linalg_complex.rdoc
|
154
|
+
- tmp/x86_64-linux/stage/rdoc/sum.rdoc
|
155
|
+
- tmp/x86_64-linux/stage/rdoc/siman.rdoc
|
156
|
+
- tmp/x86_64-linux/stage/rdoc/multimin.rdoc
|
157
|
+
- tmp/x86_64-linux/stage/rdoc/ntuple.rdoc
|
158
|
+
- tmp/x86_64-linux/stage/rdoc/changes.rdoc
|
159
|
+
- tmp/x86_64-linux/stage/rdoc/odeiv.rdoc
|
160
|
+
- tmp/x86_64-linux/stage/rdoc/nonlinearfit.rdoc
|
161
|
+
- tmp/x86_64-linux/stage/rdoc/ref.rdoc
|
162
|
+
- tmp/x86_64-linux/stage/rdoc/roots.rdoc
|
163
|
+
- tmp/x86_64-linux/stage/rdoc/ndlinear.rdoc
|
164
|
+
- tmp/x86_64-linux/stage/rdoc/randist.rdoc
|
165
|
+
- tmp/x86_64-linux/stage/rdoc/complex.rdoc
|
166
|
+
- tmp/x86_64-linux/stage/rdoc/fft.rdoc
|
167
|
+
- tmp/x86_64-linux/stage/rdoc/graph.rdoc
|
168
|
+
- tmp/x86_64-linux/stage/rdoc/vector_complex.rdoc
|
169
|
+
- tmp/x86_64-linux/stage/rdoc/nmatrix.rdoc
|
170
|
+
- tmp/x86_64-linux/stage/rdoc/narray.rdoc
|
171
|
+
- tmp/x86_64-linux/stage/rdoc/monte.rdoc
|
172
|
+
- tmp/x86_64-linux/stage/rdoc/rng.rdoc
|
173
|
+
- tmp/x86_64-linux/stage/rdoc/diff.rdoc
|
174
|
+
- tmp/x86_64-linux/stage/rdoc/eigen.rdoc
|
175
|
+
- tmp/x86_64-linux/stage/rdoc/sf.rdoc
|
176
|
+
- tmp/x86_64-linux/stage/rdoc/qrng.rdoc
|
177
|
+
- tmp/x86_64-linux/stage/rdoc/alf.rdoc
|
178
|
+
- tmp/x86_64-linux/stage/rdoc/combi.rdoc
|
179
|
+
- tmp/x86_64-linux/stage/rdoc/dht.rdoc
|
180
|
+
- tmp/x86_64-linux/stage/rdoc/matrix.rdoc
|
181
|
+
- tmp/x86_64-linux/stage/rdoc/cholesky_complex.rdoc
|
182
|
+
- tmp/x86_64-linux/stage/rdoc/cheb.rdoc
|
183
|
+
- tmp/x86_64-linux/stage/rdoc/tut.rdoc
|
184
|
+
- tmp/x86_64-linux/stage/rdoc/fit.rdoc
|
185
|
+
- tmp/x86_64-linux/stage/rdoc/math.rdoc
|
186
|
+
- tmp/x86_64-linux/stage/rdoc/intro.rdoc
|
187
|
+
- tmp/x86_64-linux/stage/rdoc/linalg.rdoc
|
188
|
+
- tmp/x86_64-linux/stage/rdoc/blas.rdoc
|
189
|
+
- tmp/x86_64-linux/stage/rdoc/start.rdoc
|
190
|
+
- tmp/x86_64-linux/stage/rdoc/hist3d.rdoc
|
191
|
+
- tmp/x86_64-linux/stage/rdoc/perm.rdoc
|
192
|
+
- tmp/x86_64-linux/stage/rdoc/min.rdoc
|
191
193
|
files:
|
192
194
|
- ".gitignore"
|
193
195
|
- ".travis.yml"
|
@@ -603,6 +605,7 @@ files:
|
|
603
605
|
- ext/gsl_native/include/rb_gsl_histogram3d.h
|
604
606
|
- ext/gsl_native/include/rb_gsl_integration.h
|
605
607
|
- ext/gsl_native/include/rb_gsl_interp.h
|
608
|
+
- ext/gsl_native/include/rb_gsl_interp2d.h
|
606
609
|
- ext/gsl_native/include/rb_gsl_linalg.h
|
607
610
|
- ext/gsl_native/include/rb_gsl_math.h
|
608
611
|
- ext/gsl_native/include/rb_gsl_odeiv.h
|
@@ -619,6 +622,7 @@ files:
|
|
619
622
|
- ext/gsl_native/include/templates_on.h
|
620
623
|
- ext/gsl_native/integration.c
|
621
624
|
- ext/gsl_native/interp.c
|
625
|
+
- ext/gsl_native/interp2d.c
|
622
626
|
- ext/gsl_native/jacobi.c
|
623
627
|
- ext/gsl_native/linalg.c
|
624
628
|
- ext/gsl_native/linalg_complex.c
|
@@ -684,6 +688,7 @@ files:
|
|
684
688
|
- ext/gsl_native/siman.c
|
685
689
|
- ext/gsl_native/sort.c
|
686
690
|
- ext/gsl_native/spline.c
|
691
|
+
- ext/gsl_native/spline2d.c
|
687
692
|
- ext/gsl_native/stats.c
|
688
693
|
- ext/gsl_native/sum.c
|
689
694
|
- ext/gsl_native/tamu_anova.c
|
@@ -698,6 +703,7 @@ files:
|
|
698
703
|
- gsl.gemspec
|
699
704
|
- lib/gsl.rb
|
700
705
|
- lib/gsl/gnuplot.rb
|
706
|
+
- lib/gsl/interp2d_fix.rb
|
701
707
|
- lib/gsl/oper.rb
|
702
708
|
- lib/gsl/version.rb
|
703
709
|
- lib/ool.rb
|
@@ -725,6 +731,7 @@ files:
|
|
725
731
|
- rdoc/hist3d.rdoc
|
726
732
|
- rdoc/integration.rdoc
|
727
733
|
- rdoc/interp.rdoc
|
734
|
+
- rdoc/interp2d.rdoc
|
728
735
|
- rdoc/intro.rdoc
|
729
736
|
- rdoc/linalg.rdoc
|
730
737
|
- rdoc/linalg_complex.rdoc
|
@@ -776,6 +783,7 @@ files:
|
|
776
783
|
- test/gsl/histo_test.rb
|
777
784
|
- test/gsl/index_test.rb
|
778
785
|
- test/gsl/integration_test.rb
|
786
|
+
- test/gsl/interp2d_test.rb
|
779
787
|
- test/gsl/interp_test.rb
|
780
788
|
- test/gsl/linalg_test.rb
|
781
789
|
- test/gsl/matrix_nmf_test.rb
|
@@ -802,6 +810,7 @@ files:
|
|
802
810
|
- test/gsl/rng_test.rb
|
803
811
|
- test/gsl/roots_test.rb
|
804
812
|
- test/gsl/sf_test.rb
|
813
|
+
- test/gsl/spline2d_test.rb
|
805
814
|
- test/gsl/stats_test.rb
|
806
815
|
- test/gsl/sum_test.rb
|
807
816
|
- test/gsl/tensor_test.rb
|
@@ -809,62 +818,63 @@ files:
|
|
809
818
|
- test/gsl/wavelet_test.rb
|
810
819
|
- test/gsl_test.rb
|
811
820
|
- test/test_helper.rb
|
812
|
-
- tmp/
|
813
|
-
- tmp/
|
814
|
-
- tmp/
|
815
|
-
- tmp/
|
816
|
-
- tmp/
|
817
|
-
- tmp/
|
818
|
-
- tmp/
|
819
|
-
- tmp/
|
820
|
-
- tmp/
|
821
|
-
- tmp/
|
822
|
-
- tmp/
|
823
|
-
- tmp/
|
824
|
-
- tmp/
|
825
|
-
- tmp/
|
826
|
-
- tmp/
|
827
|
-
- tmp/
|
828
|
-
- tmp/
|
829
|
-
- tmp/
|
830
|
-
- tmp/
|
831
|
-
- tmp/
|
832
|
-
- tmp/
|
833
|
-
- tmp/
|
834
|
-
- tmp/
|
835
|
-
- tmp/
|
836
|
-
- tmp/
|
837
|
-
- tmp/
|
838
|
-
- tmp/
|
839
|
-
- tmp/
|
840
|
-
- tmp/
|
841
|
-
- tmp/
|
842
|
-
- tmp/
|
843
|
-
- tmp/
|
844
|
-
- tmp/
|
845
|
-
- tmp/
|
846
|
-
- tmp/
|
847
|
-
- tmp/
|
848
|
-
- tmp/
|
849
|
-
- tmp/
|
850
|
-
- tmp/
|
851
|
-
- tmp/
|
852
|
-
- tmp/
|
853
|
-
- tmp/
|
854
|
-
- tmp/
|
855
|
-
- tmp/
|
856
|
-
- tmp/
|
857
|
-
- tmp/
|
858
|
-
- tmp/
|
859
|
-
- tmp/
|
860
|
-
- tmp/
|
861
|
-
- tmp/
|
862
|
-
- tmp/
|
863
|
-
- tmp/
|
864
|
-
- tmp/
|
865
|
-
- tmp/
|
866
|
-
- tmp/
|
867
|
-
- tmp/
|
821
|
+
- tmp/x86_64-linux/stage/rdoc/alf.rdoc
|
822
|
+
- tmp/x86_64-linux/stage/rdoc/blas.rdoc
|
823
|
+
- tmp/x86_64-linux/stage/rdoc/bspline.rdoc
|
824
|
+
- tmp/x86_64-linux/stage/rdoc/changes.rdoc
|
825
|
+
- tmp/x86_64-linux/stage/rdoc/cheb.rdoc
|
826
|
+
- tmp/x86_64-linux/stage/rdoc/cholesky_complex.rdoc
|
827
|
+
- tmp/x86_64-linux/stage/rdoc/combi.rdoc
|
828
|
+
- tmp/x86_64-linux/stage/rdoc/complex.rdoc
|
829
|
+
- tmp/x86_64-linux/stage/rdoc/const.rdoc
|
830
|
+
- tmp/x86_64-linux/stage/rdoc/dht.rdoc
|
831
|
+
- tmp/x86_64-linux/stage/rdoc/diff.rdoc
|
832
|
+
- tmp/x86_64-linux/stage/rdoc/ehandling.rdoc
|
833
|
+
- tmp/x86_64-linux/stage/rdoc/eigen.rdoc
|
834
|
+
- tmp/x86_64-linux/stage/rdoc/fft.rdoc
|
835
|
+
- tmp/x86_64-linux/stage/rdoc/fit.rdoc
|
836
|
+
- tmp/x86_64-linux/stage/rdoc/function.rdoc
|
837
|
+
- tmp/x86_64-linux/stage/rdoc/graph.rdoc
|
838
|
+
- tmp/x86_64-linux/stage/rdoc/hist.rdoc
|
839
|
+
- tmp/x86_64-linux/stage/rdoc/hist2d.rdoc
|
840
|
+
- tmp/x86_64-linux/stage/rdoc/hist3d.rdoc
|
841
|
+
- tmp/x86_64-linux/stage/rdoc/integration.rdoc
|
842
|
+
- tmp/x86_64-linux/stage/rdoc/interp.rdoc
|
843
|
+
- tmp/x86_64-linux/stage/rdoc/interp2d.rdoc
|
844
|
+
- tmp/x86_64-linux/stage/rdoc/intro.rdoc
|
845
|
+
- tmp/x86_64-linux/stage/rdoc/linalg.rdoc
|
846
|
+
- tmp/x86_64-linux/stage/rdoc/linalg_complex.rdoc
|
847
|
+
- tmp/x86_64-linux/stage/rdoc/math.rdoc
|
848
|
+
- tmp/x86_64-linux/stage/rdoc/matrix.rdoc
|
849
|
+
- tmp/x86_64-linux/stage/rdoc/min.rdoc
|
850
|
+
- tmp/x86_64-linux/stage/rdoc/monte.rdoc
|
851
|
+
- tmp/x86_64-linux/stage/rdoc/multimin.rdoc
|
852
|
+
- tmp/x86_64-linux/stage/rdoc/multiroot.rdoc
|
853
|
+
- tmp/x86_64-linux/stage/rdoc/narray.rdoc
|
854
|
+
- tmp/x86_64-linux/stage/rdoc/ndlinear.rdoc
|
855
|
+
- tmp/x86_64-linux/stage/rdoc/nmatrix.rdoc
|
856
|
+
- tmp/x86_64-linux/stage/rdoc/nonlinearfit.rdoc
|
857
|
+
- tmp/x86_64-linux/stage/rdoc/ntuple.rdoc
|
858
|
+
- tmp/x86_64-linux/stage/rdoc/odeiv.rdoc
|
859
|
+
- tmp/x86_64-linux/stage/rdoc/perm.rdoc
|
860
|
+
- tmp/x86_64-linux/stage/rdoc/poly.rdoc
|
861
|
+
- tmp/x86_64-linux/stage/rdoc/qrng.rdoc
|
862
|
+
- tmp/x86_64-linux/stage/rdoc/randist.rdoc
|
863
|
+
- tmp/x86_64-linux/stage/rdoc/ref.rdoc
|
864
|
+
- tmp/x86_64-linux/stage/rdoc/rng.rdoc
|
865
|
+
- tmp/x86_64-linux/stage/rdoc/roots.rdoc
|
866
|
+
- tmp/x86_64-linux/stage/rdoc/sf.rdoc
|
867
|
+
- tmp/x86_64-linux/stage/rdoc/siman.rdoc
|
868
|
+
- tmp/x86_64-linux/stage/rdoc/sort.rdoc
|
869
|
+
- tmp/x86_64-linux/stage/rdoc/start.rdoc
|
870
|
+
- tmp/x86_64-linux/stage/rdoc/stats.rdoc
|
871
|
+
- tmp/x86_64-linux/stage/rdoc/sum.rdoc
|
872
|
+
- tmp/x86_64-linux/stage/rdoc/tensor.rdoc
|
873
|
+
- tmp/x86_64-linux/stage/rdoc/tut.rdoc
|
874
|
+
- tmp/x86_64-linux/stage/rdoc/use.rdoc
|
875
|
+
- tmp/x86_64-linux/stage/rdoc/vector.rdoc
|
876
|
+
- tmp/x86_64-linux/stage/rdoc/vector_complex.rdoc
|
877
|
+
- tmp/x86_64-linux/stage/rdoc/wavelet.rdoc
|
868
878
|
- uncrustify.cfg
|
869
879
|
homepage: http://github.com/SciRuby/rb-gsl
|
870
880
|
licenses:
|
@@ -876,7 +886,7 @@ post_install_message: "\n gsl can be installed with or without narray support
|
|
876
886
|
gsl.\n "
|
877
887
|
rdoc_options:
|
878
888
|
- "--title"
|
879
|
-
- Ruby/GSL (2.1.0.
|
889
|
+
- Ruby/GSL (2.1.0.2)
|
880
890
|
- "--charset"
|
881
891
|
- UTF-8
|
882
892
|
- "--line-numbers"
|
@@ -900,7 +910,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
900
910
|
requirements:
|
901
911
|
- GSL (http://www.gnu.org/software/gsl/)
|
902
912
|
rubyforge_project:
|
903
|
-
rubygems_version: 2.5.
|
913
|
+
rubygems_version: 2.5.2
|
904
914
|
signing_key:
|
905
915
|
specification_version: 4
|
906
916
|
summary: Ruby interface to the GNU Scientific Library
|