Sha256: 563076a85fe5205102c7859603bdfc512b8406e3f5bb6fa6b3902b92f35e0b70

Contents?: true

Size: 702 Bytes

Versions: 22

Compression:

Stored size: 702 Bytes

Contents

#!/usr/bin/env ruby
require("gsl")
include GSL
include Math

printf("QAGI (integrate [-infty:+infty])\n\n")

w = Integration::Workspace.alloc(1000)

f = Function.alloc{ |x, a|
  cos(x)/(x*x + a*a)
}

a = 1.0
f.set_params(a)
printf("Case 1: f(x; a) = cos(x)/(x^2 + a^2), I(a) = pi/a e^(-a)\n")
printf("        Expected: I(1) = %10.9f\n", M_PI*exp(-a))
printf("        QAGI Result:     %10.9f\n", f.qagi([0, 1e-4], w)[0])

f = Function.alloc{ |x, a|
  exp(a*x)/(1 + exp(x))
}

a = 0.3
f.set_params(a)
printf("Case 2: f(x; a) = e^{ax}/(1 + e^x), I(a) = pi/sin(a pi)\n")
printf("        Expected: I(0.3) = %10.9f\n", M_PI/sin(a*M_PI))
printf("        QAGI Result:       %10.9f\n", f.qagi([0, 1e-2], w)[0])

Version data entries

22 entries across 22 versions & 4 rubygems

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