symfem.polynomials
¶
Polynomials.
Submodules¶
Package Contents¶
Functions¶
|
Compute the L2 dual of a set of polynomials. |
|
Create a basis of orthogonal polynomials. |
|
Create a basis of orthonormal polynomials. |
|
Get Lobatto polynomials. |
|
Get L2 dual of Lobatto polynomials. |
|
Hcurl conforming polynomial set. |
|
Hcurl conforming quolynomial set. |
|
Hcurl conforming serendipity set. |
|
Hdiv conforming polynomial set. |
|
Hdiv conforming quolynomial set. |
|
Hdiv conforming serendipity set. |
|
One dimensional polynomial set. |
Polynomial set. |
|
One dimensional polynomial set. |
|
Polynomial set for a prism. |
|
One dimensional polynomial set. |
|
Polynomial set for a pyramid. |
|
|
One dimensional quolynomial set. |
Quolynomial set. |
|
|
Get the set indices for a serendipity polynomial set. |
|
One dimensional serendipity set. |
Serendipity set. |
- symfem.polynomials.l2_dual(cell: str, poly: List[symfem.functions.ScalarFunction]) List[symfem.functions.ScalarFunction] ¶
Compute the L2 dual of a set of polynomials.
- Parameters:
cell – The cell type
poly – The set of polynomial
- Returns:
The L2 dual polynomials
- symfem.polynomials.orthogonal_basis(cell: str, order: int, derivs: int, variables: symfem.symbols.AxisVariablesNotSingle | None = None) List[List[symfem.functions.ScalarFunction]] ¶
Create a basis of orthogonal polynomials.
- Parameters:
cell – The cell type
order – The maximum polynomial degree
derivs – The number of derivatives to include
variables – The variables to use
- Returns:
A set of orthogonal polynomials
- symfem.polynomials.orthonormal_basis(cell: str, order: int, derivs: int, variables: symfem.symbols.AxisVariablesNotSingle | None = None) List[List[symfem.functions.ScalarFunction]] ¶
Create a basis of orthonormal polynomials.
- Parameters:
cell – The cell type
order – The maximum polynomial degree
derivs – The number of derivatives to include
variables – The variables to use
- Returns:
A set of orthonormal polynomials
- symfem.polynomials.lobatto_basis(cell: str, order: int, include_endpoints: bool = True) List[symfem.functions.ScalarFunction] ¶
Get Lobatto polynomials.
- Parameters:
cell – The cell type
order – The maximum polynomial degree
include_endpoint – should polynomials that are non-zero on the boundary be included?
- Returns:
Lobatto polynomials
- symfem.polynomials.lobatto_dual_basis(cell: str, order: int, include_endpoints: bool = True) List[symfem.functions.ScalarFunction] ¶
Get L2 dual of Lobatto polynomials.
- Parameters:
cell – The cell type
order – The maximum polynomial degree
include_endpoint – should polynomials that are non-zero on the boundary be included?
- Returns:
Lobatto polynomials
- symfem.polynomials.Hcurl_polynomials(domain_dim: int, range_dim: int, order: int, variables: symfem.symbols.AxisVariablesNotSingle = x) List[symfem.functions.VectorFunction] ¶
Hcurl conforming polynomial set.
- Parameters:
domain_dim – The number of variables
range_dim – The dimension of the output vector
order – The maximum polynomial degree
variables – The variables to use
- Returns:
A set of polynomials
- symfem.polynomials.Hcurl_quolynomials(domain_dim: int, range_dim: int, order: int, variables: symfem.symbols.AxisVariablesNotSingle = x) List[symfem.functions.VectorFunction] ¶
Hcurl conforming quolynomial set.
- Parameters:
domain_dim – The number of variables
range_dim – The dimension of the output vector
order – The maximum polynomial degree
variables – The variables to use
- Returns:
A set of polynomials
- symfem.polynomials.Hcurl_serendipity(domain_dim: int, range_dim: int, order: int, variables: symfem.symbols.AxisVariablesNotSingle = x) List[symfem.functions.VectorFunction] ¶
Hcurl conforming serendipity set.
- Parameters:
domain_dim – The number of variables
range_dim – The dimension of the output vector
order – The maximum polynomial degree
variables – The variables to use
- Returns:
A set of polynomials
- symfem.polynomials.Hdiv_polynomials(domain_dim: int, range_dim: int, order: int, variables: symfem.symbols.AxisVariablesNotSingle = x) List[symfem.functions.VectorFunction] ¶
Hdiv conforming polynomial set.
- Parameters:
domain_dim – The number of variables
range_dim – The dimension of the output vector
order – The maximum polynomial degree
variables – The variables to use
- Returns:
A set of polynomials
- symfem.polynomials.Hdiv_quolynomials(domain_dim: int, range_dim: int, order: int, variables: symfem.symbols.AxisVariablesNotSingle = x) List[symfem.functions.VectorFunction] ¶
Hdiv conforming quolynomial set.
- Parameters:
domain_dim – The number of variables
range_dim – The dimension of the output vector
order – The maximum polynomial degree
variables – The variables to use
- Returns:
A set of polynomials
- symfem.polynomials.Hdiv_serendipity(domain_dim: int, range_dim: int, order: int, variables: symfem.symbols.AxisVariablesNotSingle = x) List[symfem.functions.VectorFunction] ¶
Hdiv conforming serendipity set.
- Parameters:
domain_dim – The number of variables
range_dim – The dimension of the output vector
order – The maximum polynomial degree
variables – The variables to use
- Returns:
A set of polynomials
- symfem.polynomials.polynomial_set_1d(dim: int, order: int, variables: symfem.symbols.AxisVariablesNotSingle = x) List[symfem.functions.ScalarFunction] ¶
One dimensional polynomial set.
- Parameters:
dim – The number of variables
order – The maximum polynomial degree
variables – The variables to use
- Returns:
A set of polynomials
- symfem.polynomials.polynomial_set_vector(domain_dim: int, range_dim: int, order: int, variables: symfem.symbols.AxisVariablesNotSingle = x) List[symfem.functions.VectorFunction] ¶
Polynomial set.
- Parameters:
domain_dim – The number of variables
range_dim – The dimension of the output vector
order – The maximum polynomial degree
variables – The variables to use
- Returns:
A set of polynomials
- symfem.polynomials.prism_polynomial_set_1d(dim: int, order: int, variables: symfem.symbols.AxisVariablesNotSingle = x) List[symfem.functions.ScalarFunction] ¶
One dimensional polynomial set.
- Parameters:
dim – The number of variables
order – The maximum polynomial degree
variables – The variables to use
- Returns:
A set of polynomials
- symfem.polynomials.prism_polynomial_set_vector(domain_dim: int, range_dim: int, order: int, variables: symfem.symbols.AxisVariablesNotSingle = x) List[symfem.functions.VectorFunction] ¶
Polynomial set for a prism.
- Parameters:
domain_dim – The number of variables
range_dim – The dimension of the output vector
order – The maximum polynomial degree
variables – The variables to use
- Returns:
A set of polynomials
- symfem.polynomials.pyramid_polynomial_set_1d(dim: int, order: int, variables: symfem.symbols.AxisVariablesNotSingle = x) List[symfem.functions.ScalarFunction] ¶
One dimensional polynomial set.
- Parameters:
dim – The number of variables
order – The maximum polynomial degree
variables – The variables to use
- Returns:
A set of polynomials
- symfem.polynomials.pyramid_polynomial_set_vector(domain_dim: int, range_dim: int, order: int, variables: symfem.symbols.AxisVariablesNotSingle = x) List[symfem.functions.VectorFunction] ¶
Polynomial set for a pyramid.
- Parameters:
domain_dim – The number of variables
range_dim – The dimension of the output vector
order – The maximum polynomial degree
variables – The variables to use
- Returns:
A set of polynomials
- symfem.polynomials.quolynomial_set_1d(dim: int, order: int, variables: symfem.symbols.AxisVariablesNotSingle = x) List[symfem.functions.ScalarFunction] ¶
One dimensional quolynomial set.
- Parameters:
dim – The number of variables
order – The maximum polynomial degree
variables – The variables to use
- Returns:
A set of polynomials
- symfem.polynomials.quolynomial_set_vector(domain_dim: int, range_dim: int, order: int, variables: symfem.symbols.AxisVariablesNotSingle = x) List[symfem.functions.VectorFunction] ¶
Quolynomial set.
- Parameters:
domain_dim – The number of variables
range_dim – The dimension of the output vector
order – The maximum polynomial degree
variables – The variables to use
- Returns:
A set of polynomials
- symfem.polynomials.serendipity_indices(total: int, linear: int, dim: int, done: List[int] | None = None) List[List[int]] ¶
Get the set indices for a serendipity polynomial set.
- Parameters:
dim – The number of variables
order – The maximum polynomial degree
variables – The variables to use
- Returns:
A set of polynomials
- symfem.polynomials.serendipity_set_1d(dim: int, order: int, variables: symfem.symbols.AxisVariablesNotSingle = x) List[symfem.functions.ScalarFunction] ¶
One dimensional serendipity set.
- Parameters:
dim – The number of variables
order – The maximum polynomial degree
variables – The variables to use
- Returns:
A set of polynomials
- symfem.polynomials.serendipity_set_vector(domain_dim: int, range_dim: int, order: int, variables: symfem.symbols.AxisVariablesNotSingle = x) List[symfem.functions.VectorFunction] ¶
Serendipity set.
- Parameters:
domain_dim – The number of variables
range_dim – The dimension of the output vector
order – The maximum polynomial degree
variables – The variables to use
- Returns:
A set of polynomials