Muscat.FE.IntegrationRules module¶
- class ElementaryQuadrature(elementType: ElementType, points: ArrayLike, weights: ArrayLike)[source]¶
Bases:
object
- CopyFor(elementType: ElementType) ElementaryQuadrature [source]¶
- elementType: ElementType¶
- points: ndarray¶
- weights: ndarray¶
- GetIntegrationRule(ruleName: str | None = None, rule: MeshQuadrature | None = None) MeshQuadrature [source]¶
Return the integration rule for the mesh using the name or an integration rule. In the case where both are None then LagrangeIsoParamQuadrature is returned
- Parameters:
ruleName (str, optional) – name of the integration rule, by default None
rule (MeshQuadrature, optional) – integration rule in the case ruleName is None, by default None
- Returns:
the integration rule
- Return type:
- GetIntegrationRuleByName(ruleName: str) MeshQuadrature [source]¶
- class MeshQuadrature(name: str)[source]¶
Bases:
object
- AddElementaryQuadrature(elementaryQuadrature: ElementaryQuadrature)[source]¶
- elementQuadrature: Dict[ElementType, ElementaryQuadrature]¶
- items() Generator[ED.ElementType, ElementaryQuadrature] [source]¶
- keys() ElementType [source]¶
- name: str¶
- values() Generator[ElementaryQuadrature] [source]¶
- RegisterIntegrationRule(ir: MeshQuadrature)[source]¶
- TensorProd(p1: ArrayLike, w1: ArrayLike, p2: ArrayLike, w2: ArrayLike, p3: ArrayLike | None = None, w3: ArrayLike | None = None)[source]¶
- TensorProductGauss(dim: int, nbPoints: int = 2) Tuple[np.ndarray, np.ndarray] [source]¶
Tensor product of gauss point in dimension (dim) using nbPoints (number of points) per dimension
- Parameters:
dim (int) – the dimensionality of the tensor product
nbPoints (int, optional) – Number of points per dimension , by default 2
- Returns:
Integration Rule (points and weights)
- Return type:
IntegrationRuleType