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