BSpline

class LRSplines.BSpline(degree_u: int, degree_v: int, knots_u: List[float], knots_v: List[float], weight: float = 1, end_u=False, end_v=False, north=False, south=False, east=False, west=False)[source]

Represents a single weighted tensor product B-spline with associated methods and fields.

add_to_support_if_intersects(element: Element) → bool[source]

Returns true if the given element intersects the support of this BSpline, and adds element to the list of elements of support.

Parameters:element – element in consideration
Returns:true or false
intersects(element: Element) → bool[source]

Returns true if the support of b_spline intersects the element with positive area.

Parameters:
  • b_spline – b_spline whose support is to be checked
  • element – element whose domain is to be checked
Returns:

true or false

knot_average

Returns the knot average for this BSpline (the Greville point).

Returns:the knot average (u, v).
overloaded

True if all its supporting elements are overloaded. :return: True or false

remove_from_support(element: Element) → bool[source]

Removes given element from the list of elements with support. Returns true if element is found and removed, false otherwise.

Parameters:element – element to remove
Returns:true or false
update_weights(other: LRSplines.b_spline.BSpline) → None[source]

Updates the weights during splitting.