Sha256: b0a412e341eda56b7b20c75b4c6bfd83f41a521cc2b51768a2267a167c1bba25

Contents?: true

Size: 908 Bytes

Versions: 22

Compression:

Stored size: 908 Bytes

Contents

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

N = 100

y0 = 0.5
m = 1.0
x0 = 1
rr = 0.2

r = GSL::Rng.alloc()
x = GSL::Vector.linspace(0, 2, N)
y =  y0 + m/(1.0 + GSL::Sf::exp((x0-x)/rr)) + 0.02*r.gaussian(1, N)

coef, err, chi2, dof = GSL::MultiFit::FdfSolver.fit(x, y, "sigmoid")
y0 = coef[0]
m = coef[1]
x0 = coef[2]
rr = coef[3]
p coef
p err
GSL::graph(x, y, y0+m/(1+GSL::Sf::exp((x0-x)/rr)))

=begin
Result:
GSL::Vector
[ 4.954e-01 1.004e+00 9.916e-01 1.991e-01 ]
GSL::Vector
[ 5.653e-03 9.100e-03 5.033e-03 4.856e-03 ]

GNUPLOT result:
Final set of parameters            Asymptotic Standard Error
=======================            ==========================

y0              = 0.495446         +/- 0.005656     (1.142%)
m               = 1.00422          +/- 0.009105     (0.9067%)
x0              = 0.991588         +/- 0.005033     (0.5076%)
r               = 0.199059         +/- 0.00486      (2.442%)

=end

Version data entries

22 entries across 22 versions & 4 rubygems

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