Quadratura de Clenshaw-Curtis

De Viquipèdia
Dreceres ràpides: navegació, cerca

La quadratura de Clenshaw–Curtis i les quadratures de Fejer són mètodes d'integració numèrica basats en l'expansió de l'integrant en termes dels polinomis de Txebixev. Un resum breu de l'algoritme és el següent: la funció f(x) que s'ha d'integrar és avaluada als extrems o arrels dels polinomis de Txebixev i aquests valors es fan servir per construir una aproximació polinòmica de la funció; aquesta és integrada exactament per donar una aproximació de la integral exacta que busquem. El càlcul dels pesos d'integració es pot fer mitjançant una DCT, que a través de la FFT es poden obtenir amb  O(n \log n) operacions.

Introducció general[modifica | modifica el codi]

Article principal: Integració numèrica

El mètode consisteix en avaluar la funció en n+1 nodes determinats, que anomenarem x_j, amb j=0,\ldots,n. Llavors, el mètode es pot resumir en la següent equació:

 \int_{-1}^1 f(x) \mathrm dx \approx I_N[f] = \sum_{i=0}^n w_i f(x_i)

on els coeficients w_i cal determinar-los en funció de la distribució dels nodes  x_i .

Fórmules explícites[modifica | modifica el codi]

Es poden obtenir fórmules explícites de la quadrature de Clenshaw-Curtis i de Fejer I i II. Tot i que són poc útils a nivell computacional, ja que fan falta O(n^2) operacions per calcular-los, tenen la seva importància teòrica i a nivell didàctic.

Quadratura de Clenshaw-Curtis[modifica | modifica el codi]

Pel cas de la quadratura de Clenshaw-Curtis, els nodes on s'avaluarà la funció són:

x_k = \cos \theta_k \equiv \cos \left(\frac{k\pi}{n}\right), \quad k = 0, \ldots, n

Per altra banda, els pesos d'integració són:

w_k = \frac{c_k}{n}\left(1-\sum_{j=1}^{\lfloor n/2 \rfloor}\frac{b_j}{4j^2-1}\cos(2j\theta_k)\right), \quad k = 0,\ldots, n

On els coeficients b_j i c_j tenen la següent expressió:

 b_j = \left\{\begin{array}{l l} 1, & j = n/2 \\ 2, & j < n/2 \end{array} \right. \qquad c_k = \left\{\begin{array}{l l} 1, & k = 0, n \\ 2, & \mathrm{altrament} \end{array} \right.

Referències[modifica | modifica el codi]