basis module#
Created on Thu Aug 31 13:56:13 2023
@author: Pavan Pranjivan Mehta
- class basis.polynomials#
- Bases: - object- Returns orthogonal polynomials of a degree “n”. - legendre(degree)#
- Legendre Polynomials - Parameters#- xfloat array
- Spatial points in [-1,1] 
- degreeint
- degree of the polynomial 
 - Returns#- Legendre polynomials within the interval [-1,1] 
 - jacobi(alpha, beta, degree)#
- Jacobi Polynomials, P_n^{alpha, beta}; alpha, beta > -1 - Parameters#- xfloat, array
- Spatial points in [-1,1] 
- alphafloat
- Paramter for Jacobu polynomial, alpha > -1 
- betafloat
- Paramter for Jacobu polynomial, beta > -1 
- degreeint
- degree of the polynomial 
 - Returns#- Jacobi polynomials within the interval [-1,1] 
 - Q_ploy_legendre(degree)#
- Q Ploynomials based on Legendre Polynomials - Q_n (x) := P_n (1 - 2x) is orthogonal wrt to convolution product - Parameters#- xfloat
- Spatial points in [0,1] 
- degreeint
- degree of the polynomial 
 - Returns#- Q Legendre polynomials within the interval [0,1] 
 - Q_ploy(alpha, beta, degree)#
- Q Ploynomials based on Jacobi Polynomials - Q_n (x) := P_n (1 - 2x) is orthogonal wrt to convolution product - Parameters#- xfloat
- Spatial points in [0,1] 
- alphafloat
- Paramter for Jacobu polynomial, alpha > -1 
- betafloat
- Paramter for Jacobu polynomial, beta > -1 
- degreeint
- degree of the polynomial 
 - Returns#- Q Jacobi polynomials within the interval [0,1] 
 - chebyshev_first_kind(degree)#
- Chebyshev Polynomials of first kind - Parameters#- xfloat
- Spatial points in [-1,1] 
- degreeint
- degree of the polynomial 
 - Returns#- Chebyshev polynomials of first kind within the interval [-1,1] 
 - chebyshev_second_kind(degree)#
- Chebyshev Polynomials of second kind - Parameters#- xfloat
- Spatial points in [-1,1] 
- degreeint
- degree of the polynomial 
 - Returns#- Chebyshev polynomials of second kind within the interval [-1,1] 
 - shift_legendre(degree)#
- Shifted Legendre Polynomials - Parameters#- xfloat
- Spatial points in [0,1] 
- degreeint
- degree of the polynomial 
 - Returns#- Shifted Legendre polynomials within the interval [0,1] 
 - shift_jacobi(alpha, beta, degree)#
- Shifted Jacobi Polynomials, P_n^{lpha, eta} on interval [0,1], where lpha, eta > -1 - Parameters#- xfloat
- Spatial points in [0,1] 
- alphafloat
- Paramter for Jacobi polynomial, lpha > -1 
- betafloat
- Paramter for Jacobi polynomial, eta > -1 
- degreeint
- degree of the polynomial 
 - Returns#- Shifted Jacobi polynomials within the interval [0,1] 
 - Q_poly(alpha, beta, degree)#
- Q Polynomials, Q_n^{lpha, eta} on interval [0,1], where lpha, eta > -1 - Q_n^{lpha, eta} (x) := P_n^{lpha, eta} ( 1 - 2x) - Parameters#- xfloat
- Spatial points in [0,1] 
- alphafloat
- Paramter for Q polynomial, lpha > -1 
- betafloat
- Paramter for Q polynomial, eta > -1 
- degreeint
- degree of the polynomial 
 - Returns#- Shifted Jacobi polynomials within the interval [0,1] 
 - shift_arbitary_jacobi(a, b, alpha, beta, degree)#
- Shifted (arbitary) Jacobi Polynomials, P_n^{lpha, eta} on interval [a,b], where lpha, eta > -1 - Parameters#- xfloat
- Spatial points in [a,b] 
- afloat
- min of interval [a, b] 
- bfloat
- max of interval [a, b] 
- alphafloat
- Paramter for Jacobu polynomial, lpha > -1 
- betafloat
- Paramter for Jacobu polynomial, eta > -1 
- degreeint
- degree of the polynomial 
 - Returns#- Shifted (arbitary) Jacobi polynomials within the interval [a, b] 
 
- class basis.homogeneous_basis#
- Bases: - object- Construct basis functions (phi_i), such that phi_i = 0 at the boundaries - legendre(degree)#
- Construct homogenous basis functions using Legendre Polynomials - phi_i = l_{k+2} - l_{k}, where l is legendre polynomial in [-1,1] of degree k - Parameters#- xfloat
- Spatial points in [-1,1] 
- degreeint
- degree of the polynomial atleast of order 2 
 - Returns#- Homogenous Basis function using shifted legendre polynomials within the interval [0,1] 
 - shift_legendre(degree)#
- Construct homogenous basis functions using Shifted Legendre Polynomials - phi_i = l_{k+2} - l_{k}, where l is shifted legendre polynomial in [0,1] of degree k - Parameters#- xfloat
- Spatial points in [0,1] 
- degreeint
- degree of the polynomial atleast of order 2 
 - Returns#- Homogenous Basis function using shifted legendre polynomials within the interval [0,1] 
 
- class basis.first_derivatives#
- Bases: - object- compututes deriavties of Polynomials and Basis functions - legendre(degree)#
- First derivative of Legendre Polynomials computed via analytical formula, - frac{d}{dx} P_n^{alpha, beta} = frac{1}{2} (n + alpha + beta + 1) P_{n-1}^{alpha+1, beta+1}; n > 1 (integer) - where, alpha, beta = 0 for legendre ploynomials. - Since, $n = 0$ is a constant function, the function returns an array of zero’s. - Parameters#- xfloat
- Spatial points in [-1,1] 
- degreeint
- degree of the polynomial 
 - Returns#- First derivative of Legendre polynomials within the interval [-1,1] 
 - shift_legendre(degree)#
- First derivative of Shifted Legendre Polynomials computed computed via analytical formula, - rac{d}{dx} P_n^{lpha, eta} = rac{1}{2} (n + lpha + eta + 1) P_{n-1}^{lpha+1, eta+1}; n > 1 (integer) - where, lpha, eta = 0 for legendre ploynomials. - Since, $n = 0$ is a constant function, the function returns an array of zero’s. - xfloat
- Spatial points in [0,1] 
- degreeint
- degree of the polynomial 
 - First derivative of Shifted Legendre polynomials within the interval [0,1] 
 - homogenous_legendre_basis(degree)#
- First derivative of Homognoous basis using Legendre Polynomials - Homogenous basis functions using Legendre Polynomials comstrcted as, - phi_n = l_{n+2} - l_{n}, where l is legendre polynomial in [-1,1] of degree n - Parameters#- xfloat
- Spatial points in [-1,1] 
- degreeint
- degree of the polynomial 
 - Returns#- First derivative of Homognoous basis using Legendre polynomials within the interval [-1,1] - Reference#- computed using the function call, first_derivatives.legendre(x, degree+2) 
 - homogenous_shift_legendre_basis(degree)#
- First derivative of Homognoous basis using Shifted Legendre Polynomials computed using finite diff (order 1) - Homogenous basis functions using Shifted Legendre Polynomials comstrcted as, - phi_n = l_{n+2} - l_{n}, where l is legendre polynomial in [0,1] of degree n - Parameters#- xfloat
- Spatial points in [0,1] 
- degreeint
- degree of the polynomial 
 - Returns#- First derivative of Shifted Homognoous basis using Legendre polynomials within the interval [0,1] - Reference#- computed using the function call, first_derivatives.shift_legendre(x, degree) 
 - jacobi(alpha, beta, degree)#
- First derivative of Jacobi Polynomials computed via analytical formula, - frac{d}{dx} P_n^{alpha, beta} = frac{1}{2} (n + alpha + beta + 1) P_{n-1}^{alpha+1, beta+1}; n > 1 (integer) - where, alpha, beta > -1 for Jacobi ploynomials. - Since, $n = 0$ is a constant function, the function returns an array of zero’s. - Parameters#- xfloat
- Spatial points in [-1,1] 
- degreeint
- degree of the polynomial 
 - Returns#- First derivative of Jacobi polynomials within the interval [-1,1] 
 - shift_jacobi(alpha, beta, degree)#
- First derivative of shifted Jacobi Polynomials on [0,1] computed via analytical formula, - frac{d}{dx} P_n^{alpha, beta} = frac{1}{2} (n + alpha + beta + 1) P_{n-1}^{alpha+1, beta+1}; n > 1 (integer) - where, alpha, beta > -1 for Jacobi ploynomials. - Since, $n = 0$ is a constant function, the function returns an array of zero’s. - Parameters#- xfloat
- Spatial points in [0,1] 
- degreeint
- degree of the polynomial 
 - Returns#- First derivative of shifted Jacobi polynomials within the interval [0,1] 
 - Q_ploy(alpha, beta, degree)#
- First derivative of Q Polynomials on [0,1] computed via analytical formula, - Q_n^{alpha, beta} (x) : = P_n^{alpha, beta} (1 - 2x), and - frac{d}{dx} P_n^{alpha, beta} = frac{1}{2} (n + alpha + beta + 1) P_{n-1}^{alpha+1, beta+1}; n > 1 (integer) - where, alpha, beta > -1 for Jacobi ploynomials. - Since, $n = 0$ is a constant function, the function returns an array of zero’s. - Parameters#- xfloat
- Spatial points in [0,1] 
- degreeint
- degree of the polynomial 
 - Returns#- First derivative of Q polynomials within the interval [0,1] 
 
- class basis.second_derivatives#
- Bases: - object- compututes second deriavties of Polynomials and Basis functions - legendre(degree)#
- Second derivative of Legendre Polynomials computed via analytical formula - applied twice - frac{d}{dx} P_n^{alpha, beta} = frac{1}{2} (n + alpha + beta + 1) P_{n-1}^{alpha+1, beta+1}; n > 1 (integer) - where, alpha, beta = 0 for legendre ploynomials. - Since, $n = 0$ is a constant function, the function returns an array of zero’s. - Parameters#- xfloat
- Spatial points in [-1,1] 
- degreeint
- degree of the polynomial 
 - Returns#- Second derivative of Legendre polynomials within the interval [-1,1] 
 - chebyshev_first_kind(degree)#
- Second derivative of chebyshev_first_kind Polynomials computed via analytical formula - applied twice - Since, $n = 0$ is a constant function, the function returns an array of zero’s. - Parameters#- xfloat
- Spatial points in [-1,1] 
- degreeint
- degree of the polynomial 
 - Returns#- Second derivative of chebyshev_first_kind polynomials within the interval [-1,1] 
 - shift_legendre(degree)#
- Second derivative of Shifted Legendre Polynomials computed computed via analytical formula - applied twice - rac{d}{dx} P_n^{lpha, eta} = rac{1}{2} (n + lpha + eta + 1) P_{n-1}^{lpha+1, eta+1}; n > 1 (integer) - where, lpha, eta = 0 for legendre ploynomials. - Since, $n = 0$ is a constant function, the function returns an array of zero’s. - xfloat
- Spatial points in [0,1] 
- degreeint
- degree of the polynomial 
 - Second derivative of Shifted Legendre polynomials within the interval [0,1] 
 - homogenous_legendre_basis(degree)#
- Second derivative of Homognoous basis using Legendre Polynomials - Homogenous basis functions using Legendre Polynomials comstrcted as, - phi_n = l_{n+2} - l_{n}, where l is legendre polynomial in [-1,1] of degree n - Parameters#- xfloat
- Spatial points in [-1,1] 
- degreeint
- degree of the polynomial 
 - Returns#- Second derivative of Homognoous basis using Legendre polynomials within the interval [-1,1] - Reference#- computed using the function call, Second_derivatives.legendre(x, degree+2) 
 - homogenous_shift_legendre_basis(degree)#
- Second derivative of Homognoous basis using Shifted Legendre Polynomials computed using finite diff (order 1) - Homogenous basis functions using Shifted Legendre Polynomials comstrcted as, - phi_n = l_{n+2} - l_{n}, where l is legendre polynomial in [0,1] of degree n - Parameters#- xfloat
- Spatial points in [0,1] 
- degreeint
- degree of the polynomial 
 - Returns#- Second derivative of Shifted Homognoous basis using Legendre polynomials within the interval [0,1] - Reference#- computed using the function call, second_derivatives.shift_legendre(x, degree) 
 - jacobi(alpha, beta, degree)#
- Second derivative of Jacobi Polynomials computed via analytical formula - applied twice - frac{d}{dx} P_n^{alpha, beta} = frac{1}{2} (n + alpha + beta + 1) P_{n-1}^{alpha+1, beta+1}; n > 1 (integer) - where, alpha, beta > -1 for Jacobi ploynomials. - Since, $n = 0$ is a constant function, the function returns an array of zero’s. - Parameters#- xfloat
- Spatial points in [-1,1] 
- degreeint
- degree of the polynomial 
 - Returns#- Second derivative of Jacobi polynomials within the interval [-1,1] 
 - shift_jacobi(alpha, beta, degree)#
- Second derivative of shifted Jacobi Polynomials on [0,1] computed via analytical formula - applied twice - frac{d}{dx} P_n^{alpha, beta} = frac{1}{2} (n + alpha + beta + 1) P_{n-1}^{alpha+1, beta+1}; n > 1 (integer) - where, alpha, beta > -1 for Jacobi ploynomials. - Since, $n = 0$ is a constant function, the function returns an array of zero’s. - Parameters#- xfloat
- Spatial points in [0,1] 
- degreeint
- degree of the polynomial 
 - Returns#- Second derivative of shifted Jacobi polynomials within the interval [0,1] 
 - Q_ploy(alpha, beta, degree)#
- Second derivative of Q Polynomials on [0,1] computed via analytical formula - applied twice - Q_n^{alpha, beta} (x) : = P_n^{alpha, beta} (1 - 2x), and - frac{d}{dx} P_n^{alpha, beta} = frac{1}{2} (n + alpha + beta + 1) P_{n-1}^{alpha+1, beta+1}; n > 1 (integer) - where, alpha, beta > -1 for Jacobi ploynomials. - Since, $n = 0$ is a constant function, the function returns an array of zero’s. - Parameters#- xfloat
- Spatial points in [0,1] 
- degreeint
- degree of the polynomial 
 - Returns#- Second derivative of Q polynomials within the interval [0,1] 
 
- class basis.test#
- Bases: - object- legendre()#
 - shifted_legendre()#
 - shifted_jacobi(beta, N)#
 - chebyshev_first_kind()#
 - chebyshev_second_kind()#
 - legendre_homogenous_basis()#
 - shift_legendre_homogenous_basis()#
 - second_der_legendre()#
 - second_der_chebyshev_first_kind()#
 - second_der_shift_legendre()#
 - second_der_jacobi(beta, N)#
 - second_der_shift_jacobi(beta, N)#