11 #define PZINTEGRAL_MAXITERATIONS_ALLOWED 100000 57 TPZGaussRule(
int order,
int type = 0,
long double alpha = 0.0L,
long double beta = 0.0L);
76 long double Loc(
int i)
const;
78 long double W(
int i)
const;
96 fAlpha = alpha; fBeta = beta;
105 void SetType(
int &type,
int order);
108 void Print(std::ostream & out = std::cout);
172 long double JacobiPolinomial(
long double x,
int order,
long double alpha,
long double beta,
183 long double JacobiPolinomial(
long double x,
int alpha,
int beta,
unsigned int n);
208 long double gamma(
unsigned int n);
216 long double gamma(
long double x);
long double JacobiPolinomial(long double x, int order, long double alpha, long double beta, TPZVec< long double > &b, TPZVec< long double > &c, long double *dp2, long double *p1)
Evaluates the Jacobi polinomial for real x.
long double Beta()
Returns BETA: it is the exponent of (1-X) in the quadrature rule: .
void SetType(int &type, int order)
Sets a gaussian quadrature: 0 - Gauss Legendre, 1 - Gauss Lobatto, 2 - Gauss Jacobi with alpha = beta...
long double W(int i) const
Returns weight for the ith point.
TPZVec< long double > fWeight
Weight of the integration point.
Templated vector implementation.
int ComputingGaussLobattoQuadrature(int order)
Computes the points and weights for Gauss Lobatto Quadrature over the parametric 1D element It is to...
Integration rule for pyramid. Numerical Integration.
int fOrder
order of the integration rule
int ComputingGaussJacobiQuadrature(int order, long double alpha, long double beta)
Computes the points and weights for Gauss Lobatto Quadrature over the parametric 1D element It is to...
int ComputingGaussChebyshevQuadrature(int order)
Computes the points and weights for Gauss Chebyshev Quadrature over the parametric 1D element [-1...
TPZGaussRule & operator=(const TPZGaussRule ©)
Creates instances of all integration rules for rapid selection. Numerical Integration.
int fNumInt
Number of integration points for this object.
void SetParametersJacobi(long double alpha, long double beta)
Sets alpha and beta, the parameters of the Jacobi polynomials.
int NInt() const
Returns number of integration points.
long double fBeta
BETA is the exponent of (1+X) in the quadrature rule: weight = (1-X)^ALPHA * (1+X)^BETA.
int Type()
Returns the gaussian quadrature type (Legendre, Lobatto, Jacobi)
TPZGaussRule(int order, int type=0, long double alpha=0.0L, long double beta=0.0L)
Constructor of quadrature rule.
long double gamma(unsigned int n)
Evaluate the factorial of a integer.
void Print(std::ostream &out=std::cout)
Prints the number of integration points, all points and weights (as one dimension) ...
~TPZGaussRule()
Default destructor.
long double fAlpha
ALPHA is the exponent of (1-X) in the quadrature rule: weight = (1-X)^ALPHA * (1+X)^BETA.
TPZVec< long double > fLocation
Location of the integration point.
long double machinePrecision()
long double Alpha()
Returns ALPHA: it is the exponent of (1-X) in the quadrature rule: .
int fType
fType = 1 (Gauss Lobatto quadrature), fType = 2 (Gauss Jacobi quadrature) for any alpha and beta the ...
int Order()
return the order of the integration rule
long double Loc(int i) const
Returns location of the ith point.
Implements the Gaussian quadrature. Numerical Integration Abstract class.
int ComputingGaussLegendreQuadrature(int order)
Computes the points and weights for Gauss Legendre Quadrature over the parametric 1D element [-1...