Finite Element Utilities

feastruct.fea.utils.gauss_points(el_type, n)[source]

Returns the Gaussian weights and locations for n point Gaussian integration of a finite element. Refer to xxx for a list of the element types.

Parameters:
  • el_type (string) – String describing the element type
  • n (int) – Number of Gauss points
Returns:

The integration weights (n x 1) and an (n x i) matrix consisting of the values of the i shape functions for n Gauss points

Return type:

tuple(list[float], numpy.ndarray)

feastruct.fea.utils.shape_function(el_type, coords, gp)[source]

Computes shape functions, shape function derivatives and the determinant of the Jacobian matrix for a number of different finite elements at a given Gauss point. Refer to xxx for a list of the element types.

Parameters:
  • el_type (string) – String describing the element type
  • coords (numpy.ndarray) – Global coordinates of the element nodes (n x 3), where n is the number of nodes
  • gp (numpy.ndarray) – Isoparametric location of the Gauss point
Returns:

The value of the shape functions N(i) at the given Gauss point (1 x n), the derivative of the shape functions in the j-th global direction B(i,j) (3 x n) and the determinant of the Jacobian matrix j

Return type:

tuple(numpy.ndarray, numpy.ndarray, float)