Sha256: a89facd311360ad90972e1c4e8b1102a84ae94262088fe498830a188ed753d0d

Contents?: true

Size: 976 Bytes

Versions: 22

Compression:

Stored size: 976 Bytes

Contents

#!/usr/bin/env ruby
require 'gsl'
include GSL
include Math

f = Function.alloc{ |x|
  exp(-x*x)
}

exact = sqrt(PI)

result, = f.qagi
puts("QAGI")
puts("exp(-x*x), x = -infty --- +infty")
printf("exact  = %.18f\n", exact)
printf("result = %.18f\n\n", result)

p Integration.qagi(f)

w = Integration::Workspace.alloc(1000)
xmin = 0.0

puts("QAGIU")
result, = f.integration_qagiu(xmin, [0, 1e-6], w)
puts("exp(-x*x), x = 0 --- +infty")
printf("exact  = %.18f\n", exact/2)
printf("result = %.18f\n", result)
p w.to_a

p Integration.qagiu(f, xmin)

puts("QAGIL")
result, = f.integration_qagil(0.0, 0.0, 1e-7, 1000, w)
puts("exp(-x*x), x = -infty --- 0")
printf("exact  = %.18f\n", exact/2)
printf("result = %.18f\n\n", result)

f455 = Function.alloc { |x|
  log(x)/(1.0 + 100.0*x*x)
}

exp_result = -3.616892186127022568E-01
exp_abserr = 3.016716913328831851E-06

result = f455.qagiu(0.0, [0.0, 1e-3])
p result
puts("exp_result: #{exp_result}")
puts("exp_abserr: #{exp_abserr}")

Version data entries

22 entries across 22 versions & 4 rubygems

Version Path
gsl-2.1.0.3 examples/integration/qagi2.rb
gsl-2.1.0.2 examples/integration/qagi2.rb
gsl-2.1.0.1 examples/integration/qagi2.rb
gsl-2.1.0 examples/integration/qagi2.rb
gsl-1.16.0.6 examples/integration/qagi2.rb
rb-gsl-1.16.0.5 examples/integration/qagi2.rb
rb-gsl-1.16.0.4 examples/integration/qagi2.rb
rb-gsl-1.16.0.3 examples/integration/qagi2.rb
rb-gsl-1.16.0.3.rc1 examples/integration/qagi2.rb
gsl-nmatrix-1.15.3.2 examples/integration/qagi2.rb
gsl-nmatrix-1.15.3.1 examples/integration/qagi2.rb
rb-gsl-1.16.0.2 examples/integration/qagi2.rb
rb-gsl-1.16.0.1 examples/integration/qagi2.rb
rb-gsl-1.16.0 examples/integration/qagi2.rb
rb-gsl-1.15.3.2 examples/integration/qagi2.rb
rb-gsl-1.15.3.1 examples/integration/qagi2.rb
blackwinter-gsl-1.15.3.2 examples/integration/qagi2.rb
gsl-nmatrix-1.15.3.0 examples/integration/qagi2.rb
gsl-1.15.3 examples/integration/qagi2.rb
gsl-1.14.7 examples/integration/qagi2.rb