LORENE
int1d_chebp.C
1/*
2 * Copyright (c) 1999-2001 Eric Gourgoulhon
3 *
4 * This file is part of LORENE.
5 *
6 * LORENE is free software; you can redistribute it and/or modify
7 * it under the terms of the GNU General Public License as published by
8 * the Free Software Foundation; either version 2 of the License, or
9 * (at your option) any later version.
10 *
11 * LORENE is distributed in the hope that it will be useful,
12 * but WITHOUT ANY WARRANTY; without even the implied warranty of
13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 * GNU General Public License for more details.
15 *
16 * You should have received a copy of the GNU General Public License
17 * along with LORENE; if not, write to the Free Software
18 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
19 *
20 */
21
22
23char int1d_chebp_C[] = "$Header: /cvsroot/Lorene/C++/Source/Non_class_members/Operators/int1d_chebp.C,v 1.2 2014/10/13 08:53:23 j_novak Exp $" ;
24
25/*
26 * Calcul de l'integrale
27 *
28 * int_0^1 f(x) dx (1)
29 *
30 * pour une fonction f(x) paire donnee par ses coefficients de Tchebyshev
31 *
32 * f(x) = som_{i=0}^{nr-1} c_i T_{2i}(x) (2)
33 *
34 * Entree:
35 * ------
36 * int nr : Nombre de coefficients de Tchebyshev dans le
37 * developpement (2)
38 * const double* cf : Tableau des nr coefficients c_i de la fonction
39 * definis par (2). Le stokage doit etre le suivant
40 * cf[i] = c_i 0 <= i <= nr - 1
41 * L'espace memoire correspondant au pointeur cf doit
42 * etre de taille au moins nr et doit avoir ete
43 * alloue avant l'appel a la routine
44 *
45 * Sortie (valeur de retour) :
46 * ------
47 * double int1d_chebp : Valeur de l'integrale (1)
48 *
49 */
50
51/*
52 * $Id: int1d_chebp.C,v 1.2 2014/10/13 08:53:23 j_novak Exp $
53 * $Log: int1d_chebp.C,v $
54 * Revision 1.2 2014/10/13 08:53:23 j_novak
55 * Lorene classes and functions now belong to the namespace Lorene.
56 *
57 * Revision 1.1.1.1 2001/11/20 15:19:29 e_gourgoulhon
58 * LORENE
59 *
60 * Revision 2.0 1999/02/22 15:37:46 hyc
61 * *** empty log message ***
62 *
63 *
64 * $Header: /cvsroot/Lorene/C++/Source/Non_class_members/Operators/int1d_chebp.C,v 1.2 2014/10/13 08:53:23 j_novak Exp $
65 *
66 */
67
68namespace Lorene {
69
70//*****************************************************************************
71
72double int1d_chebp(int nr, const double* cf){
73
74 double som = - cf[0] ;
75 const double* cc = cf + 1 ;
76
77 for (int i=1; i<nr ; i++) {
78 som += *cc / (4*i*i - 1) ;
79 cc++ ;
80 }
81
82 return -som ;
83
84}
85}
Lorene prototypes.
Definition app_hor.h:64