-
Notifications
You must be signed in to change notification settings - Fork 20
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
1 parent
3ebe499
commit 1837184
Showing
3 changed files
with
37 additions
and
8 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,5 +1,34 @@ | ||
# Finite element | ||
|
||
The finite element is the basic entity in FinEtools. | ||
The finite element set is one of the basic entities in FinEtools. | ||
|
||
The finite element set is a collection of finite elements defined by the connectivity (array of node numbers, listing the nodes connected by the element in a specific order). The finite element set provides specialized methods to compute values of basis functions and the values of the gradients of the basis functions with respect to the parametric coordinates. | ||
|
||
The finite element sets are instances of concrete types. Each particular shape and order of element has its own type. There are types for linear and quadratic quadrilaterals, for instance, `FESetQ4` and `FESetQ8`. Each element set provides access to the number of nodes connected by the element (`nodesperelem`), the connectivity as the two dimensional array `conn`, and the integer label vector `label`. | ||
|
||
The concrete finite element set types are subtypes of the abstract type for elements of different manifold dimension (3, 2, 1, and 0), for instance for the quadrilaterals that would be `FESet2Manifold`. These types are in turn subtypes of the abstract finite element set type `FESet`. | ||
|
||
The concrete finite element set type provides specialized methods to compute the values of the basis functions, `bfun`, and methods to compute the gradients of the basis functions with respect to the parametric coordinates, `bfundpar`. | ||
|
||
## Finite element set functions | ||
|
||
- `manifdim`: Return the manifold dimension.. | ||
- `nodesperelem`: Get the number of nodes connected by the finite element. | ||
- `count`: Get the number of individual connectivities in the FE set. | ||
- `getconn!`: Get the connectivity of the jth element in the set. | ||
- `boundaryconn`: Get boundary connectivity. | ||
- `boundaryfe`: Return the constructor of the type of the boundary finite element. | ||
- `setlabel!`: Set the label of the entire finite elements set. | ||
- `subset`: Extract a subset of the finite elements from the given finite element set. | ||
- `cat`: Concatenate the connectivities of two FE sets. | ||
- `updateconn!`: Update the connectivity after the IDs of nodes changed. | ||
- `bfun`: Compute the values of the basis functions at a given parametric coordinate. | ||
- `bfundpar`: Compute the values of the basis function gradients at a given parametric coordinate. | ||
- `Jacobian`: Evaluate the Jacobian. | ||
- `gradN!`: Compute the gradient of the basis functions with the respect to the "reduced" spatial coordinates. | ||
- `inparametric`: Are given parametric coordinates inside the element parametric domain? | ||
- `map2parametric`: Map a spatial location to parametric coordinates. | ||
- `centroidparametric`: Return the parametric coordinates of the centroid of the element. | ||
|
||
|
||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters