Class TetrahedralElement
source code
  
   
An arbitrary-order tetrahedral finite element.
  Coordinate systems used:
    unit coordinates (r,s,t):
          ^ s
          |
          C
         /|\
        / | \
       /  |  \
      /   |   \
     /   O|    \
    /   __A-----B---> r
   /_--^ ___--^^
  ,D--^^^
    t L
    (squint, and it might start making sense...)
    Points in unit coordinates:
   O=( 0, 0, 0)
   A=(-1,-1,-1)
   B=(+1,-1,-1)
   C=(-1,+1,-1)
   D=(-1,-1,+1)
    Points in equilateral coordinates (x,y,z):
   O = (0,0)
   A = (-1,-1/sqrt(3),-1/sqrt(6))
   B = ( 1,-1/sqrt(3),-1/sqrt(6))
   C = ( 0, 2/sqrt(3),-1/sqrt(6))
   D = ( 0,         0, 3/sqrt(6))
    When global vertices are passed in, they are mapped to the reference
    vertices A, B, C, D in order.
    Faces are always ordered ABC, ABD, ACD, BCD.
    |  | 
        
          | __init__(self,
        order) x.__init__(...) initializes x; see x.__class__.__doc__ for signature
 | source code |  | 
    |  |  | 
    |  | 
        
          | faces_for_node_tuple(self,
        node_tuple) Return the list of face indices of faces on which the node 
      represented by
 node_tuplelies. | source code |  | 
    |  | 
        
          | equilateral_nodes(self) Generate warped nodes in equilateral coordinates (x,y).
 | source code |  | 
    |  |  | 
    |  |  | 
    |  |  | 
    |  |  | 
    |  | 
        
          | get_face_index_shuffle_to_match(self,
        face_1_vertices,
        face_2_vertices) | source code |  | 
    |  |  | 
  
    | Inherited from SimplicialElement:dt_non_geometric_factor,equidistant_barycentric_nodes,equidistant_equilateral_nodes,equidistant_unit_nodes,face_count,face_indices,face_node_count,generate_mode_identifiers,node_count,unit_nodes,vertex_indices Inherited from Element:differentiation_matrices,find_diff_mat_permutation,grad_vandermonde,inverse_mass_matrix,lifting_matrix,mass_matrix,multi_face_mass_matrix,vandermonde Inherited from object:__delattr__,__getattribute__,__hash__,__new__,__reduce__,__reduce_ex__,__repr__,__setattr__,__str__ | 
    |  | 
        
          | barycentric_to_equilateral((lambda1, lambda2, lambda3, lambda4)) Return the equilateral (x,y) coordinate corresponding to the 
      barycentric coordinates (lambda1..lambdaN).
 | source code |  | 
    |  | dimensions = 3 | 
    |  | has_local_jacobians = False | 
    |  | equilateral_to_unit = AffineMap(numpy.array([[1,-1/ sqrt(3),-1... | 
| x.__init__(...) initializes x; see x.__class__.__doc__ for 
  signature 
    Overrides:
        object.__init__
        (inherited documentation) | 
 
| Generate tuples enumerating the node indices present in this element. 
  Each tuple has a length equal to the dimension of the element. The tuples
  constituents are non-negative integers whose sum is less than or equal to
  the order of the element. The order in which these nodes are generated dictates the local node 
  numbering. 
    Decorators: | 
 
| Return a list of tuples of indices into the node list that generate a 
  tesselation of the reference element. 
    Decorators: | 
 
| Get a sequence of functions that form a basis of the approximation 
  space. The approximation space is spanned by the polynomials: 
 r**i * s**j * t**k  for  i+j+k <= order
 
    Decorators:Overrides:
        Element.basis_functions
     | 
 
| equilateral_to_unit
   
    Value:| 
AffineMap(numpy.array([[1,-1/ sqrt(3),-1/ sqrt(6)], [0, 2/ sqrt(3),-1/ sqrt(6)], [0, 0, sqrt(6)/ 2]]), numpy.array([-1/ 2,-1/ 2,-1/ 2])) | 
 |