uf3.representation.angles.evaluate_triplet_derivatives

evaluate_triplet_derivatives(r_l: numpy.ndarray, r_m: numpy.ndarray, r_n: numpy.ndarray, basis_functions: List[List], knot_sequences: List[numpy.ndarray], trailing_trim: int = 0) Tuple[numpy.ndarray, numpy.ndarray][source]

Identify non-zero basis functions for each point and call functions.

TODO: refactor to break up into smaller, reusable functions

Parameters
  • r_l (np.ndarray) – vector of i-j distances.

  • r_m (np.ndarray) – vector of i-k distances.

  • r_n (np.ndarray) – vector of j-k distances.

  • basis_functions (list) – list of lists of of callable basis functions.

  • knot_sequences (list of np.ndarray) –

  • trailing_trim (int) – number of basis functions at trailing edge to suppress. Useful for ensuring smooth cutoffs.

Returns

tuples of spline derivative values

per dimension per triangle.

idx_lmn (np.ndarray): corresponding indices of relevant basis functions

to increment with derivative values.

Return type

tuples_3b (np.ndarray)