Quick Navigator

 Search Site Miscellaneous Server Agreement Year 2038 Credits

# Manual Reference Pages  -  MATH::GSL::CHEBYSHEV (3)

.ds Aq ’

### NAME

Math::GSL::Chebyshev - Univariate Chebyshev Series Approximation

### SYNOPSIS

```

use Math::GSL::Chebyshev qw/:all/;

my \$cheb             = gsl_cheb_alloc(40);
my \$function         = sub { sin(cos(\$_[0])) };

gsl_cheb_init(\$cheb, \$function, 0, 10);

my \$x                = gsl_cheb_eval(\$cheb, 5.5 );
my (\$status,\$y,\$err) = gsl_cheb_eval_err(\$cheb, 7.5 );
gsl_cheb_free(\$cheb);

```

### DESCRIPTION

 o gsl_cheb_alloc(\$size) ``` my \$cheb = gsl_cheb_alloc(50); ``` Allocates a new Chebyshev object with \$size sample points. o gsl_cheb_free(\$cheb) Deallocates memory associated to \$cheb. Returns void. o gsl_cheb_init(\$cheb,\$function, \$lower, \$upper) ``` gsl_cheb_init(\$cheb, sub { sin(cos(\$_[0])) }, 0, 10 ); ``` Initiate a Chebyshev object with a function and upper and lower bounds. Returns void. o gsl_cheb_eval(\$function, \$value) ``` my \$evaluated = gsl_cheb_eval(\$cheb, 5 ); ``` Returns a Perl scalar of the Chebyshev object \$cheb evaluated at \$value. o gsl_cheb_eval_err(\$cheb, \$value) ``` my (\$status,\$evaluated,\$err) = gsl_cheb_eval(\$cheb, 5 ); ``` Returns a list consisting of a GSL status code, the evaluate value and the estimated error of the evaluation. o gsl_cheb_eval_n o gsl_cheb_eval_n_err o gsl_cheb_eval_mode o gsl_cheb_eval_mode_e o gsl_cheb_calc_deriv(\$deriv,\$cheb) ``` my \$status = gsl_cheb_calc_deriv( \$deriv, \$cheb ); ``` This will calculate the derivative of \$cheb and stores it in \$deriv, which must be pre-allocated. Returns a GSL status code. o gsl_cheb_calc_integ(\$integ,\$cheb) ``` my \$status = gsl_cheb_calc_integ( \$deriv, \$cheb ); ``` This will calculate the derivative of \$cheb and stores it in \$deriv, which must be pre-allocated. Returns a GSL status code.
For more informations on the functions, we refer you to the GSL offcial documentation: <http://www.gnu.org/software/gsl/manual/html_node/>

### AUTHORS

Jonathan Duke Leto <jonathan@leto.net> and Thierry Moisan <thierry.moisan@gmail.com>