Next Article in Journal
The Optimal Robust Investment Problem in the Foreign Stock Market of an Ambiguity-Averse Insurer
Previous Article in Journal
Entropy and Heat Transfer in Casson-MHD Flow Through Inclined Permeable Channels via Fibonacci Wavelets
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

Isogeometric Transfinite Elements: A Unified B-Spline Framework for Arbitrary Node Layouts

by
Christopher G. Provatidis
School of Mechanical Engineering, National Technical University of Athens, 9 Iroon Polytechniou Str., 15780 Athens, Greece
Axioms 2026, 15(1), 28; https://doi.org/10.3390/axioms15010028
Submission received: 25 November 2025 / Revised: 21 December 2025 / Accepted: 25 December 2025 / Published: 29 December 2025

Abstract

This paper presents a unified framework for constructing partially unstructured B-spline transfinite finite elements with arbitrary nodal distributions. Three novel, distinct classes of elements are investigated and compared with older single Coons-patch elements. The first consists of classical transfinite elements reformulated using B-spline basis functions. The second includes elements defined by arbitrary control point networks arranged in parallel layers along one direction. The third features arbitrarily placed boundary nodes combined with a tensor-product structure in the interior. For all three classes, novel macro-element formulations are introduced, enabling flexible and customizable nodal configurations while preserving the partition of unity property. The key innovation lies in reinterpreting the generalized coefficients as discrete samples of an underlying continuous univariate function, which is independently approximated at each station in the transfinite element. This perspective generalizes the classical transfinite interpolation by allowing both the blending functions and the univariate trial functions to be defined using non-cardinal bases such as Bernstein polynomials or B-splines, offering enhanced adaptability for complex geometries and nonuniform node layouts.

1. Introduction

Computational methods have undergone several stages of development and continue to evolve. The progression began with global approximation techniques, such as those introduced by Rayleigh [1], Ritz [2], and the Bubnov–Galerkin method (1913–1915), eventually giving way to more localized approaches like the finite element method [3,4]. Among these developments, transfinite interpolation occupies a particularly important role [5,6]. Initially developed to interpolate the geometry of solid objects and surfaces [7], it soon became apparent that the method could also be used to interpolate scalar and even vector fields within three-dimensional domains. Notably, transfinite interpolation allows the construction of finite elements with differing numbers of nodes along opposing edges or surfaces–without requiring transitional elements. This flexibility extends to the merging of dissimilar domains in two or three dimensions.
An effort to integrate ideas from computer-aided geometric design (CAGD) into analysis methods—such as the finite element, boundary element, and collocation methods—was initiated at the National Technical University of Athens (NTUA) in the summer of 1984, within the research group to which the present author belonged; the first publication appeared later in 1989 [8]. A comprehensive monograph, compiled from approximately 60 journal and conference papers produced by this group, along with an extensive literature review until 2018 (here omitted, for the sake of brevity), is presented in reference [9]. In that monograph, the term macroelement is used to describe an entire patch, whether a surface or a volumetric block. In this framework, although B-splines required domain decomposition at individual breakpoint spans [8,9], they were initially regarded more as integration cells than as B-spline elements in the modern sense [10]. The decisive step toward the systematic use of nonuniform rational B-splines (NURBS) as analysis-suitable basis functions, together with their large-scale dissemination and application to complex real-world problems, was later achieved through the work of Hughes and co-workers within the framework of Isogeometric Analysis [11]. Concurrently with the early development of transfinite interpolation techniques, similar macroelement-based ideas were also explored independently by other research groups, as documented in [12,13,14,15,16].
Classical literature on transfinite interpolation (see Refs. [5,6] and references therein) primarily employs linear blending functions, typically in the form of Lagrange polynomials. The univariate trial functions defined along the mesh lines (often referred to as stations) are commonly selected as piecewise linear, piecewise Hermite, or cubic splines. Note that, since spline theory had not yet been standardized at the time, the term cubic splines was used to denote a globally smooth cubic curve composed of several cubic Hermite segments, rather than a spline space defined in the modern B-spline sense.
While transfinite interpolation works perfectly well in conjunction with Lagrange polynomials, there is not much experience when it is combined with Bernstein polynomials and B-splines. This is because the former are cardinal polynomials of [ 0 , 1 ] -type, in the sense that they are interpolatory (take the value of unity) along the stations, whereas the latter are not (take a value less than unity). Nevertheless, both sets hold the partition of unity property. This fact has recently sustained the conjecture that transfinite interpolation can be extended in such a way that blending functions can be Bernstein polynomials or B-splines and at the same time they can also be trial functions which interpolate the primary variable U along the stations of the curvilinear patch [17].
Figure 1 presents a collection of multiple classes of transfinite finite elements, starting from the older Coons element (studied in detail in [8,9]) and ending with a multi-layer element.
Recent studies have shown that a direct substitution of Lagrange polynomials with Bernstein polynomials in the final expressions of the shape functions for all types of transfinite elements is feasible, and sometimes yields equivalent results for both polynomial sets. To date, this direct replacement—accompanied by a pointwise agreement between the two polynomial families—has been verified for the following four classes of transfinite elements [18]:
  • Coons elements (Figure 1a).
  • Tensor product elements (Figure 1b).
  • Classical transfinite elements of structured pattern (Figure 1c).
  • Deformed tensor-product elements (similar to Figure 1b, but with boundary nodes arbitrarily positioned relative to the orthogonal projection of the internal nodes).
While the primary variable U is a straightforward physical quantity to interpret, the associated discrete generalized coefficients a often cause confusion, particularly among engineers rather than applied mathematicians. In general, however, the coefficients a i form a set of dual quantities corresponding to the nodal values U i , and the two sets are interconnected through a linear relationship.
First of all, we must report that the expression of tensor-product Bernstein polynomials is not an axiom but a direct sequence of the pre-existing tensor-product of Lagrange polynomials. Clearly, the existing linear relationship between univariate Lagrange and Bernstein polynomials—which share the same monomials—is adequate to offer a mathematical proof for the equivalence between tensor-product Lagrange and tensor-product (non-rational) Bernstein polynomials [9].
Moreover, having established the above explanation for the tensor product of Bernstein polynomials, the interpretation of the tensor-product B-spline follows as a straightforward extension. However, while the rationale behind the tensor-product B-spline is relatively easy to grasp, the same cannot be said for transfinite interpolation, which—even to this day—remains a powerful and versatile tool for constructing novel, large-scale finite elements, as will be demonstrated in the following sections.
The difficulty and delay in advancing the transfinite interpolation method stem from the following issue. Although replacing Lagrange polynomials with Bernstein polynomials is generally straightforward, the challenge lies in substituting the univariate functions U ( ξ ¯ , η ) along each section (station) orthogonal to the ξ -axis at point ξ ¯ . This is due to the fact that all the generalized coefficients a i associated with the two opposite sides (i.e., A B and D C ) of the quadrilateral patch A B C D (Figure 2b), which are perpendicular to the station under consideration (thus containing its ends), contribute to the determination of function U ( ξ ¯ , η ) . Therefore, the classical cardinal blending functions of Lagrange type cannot be directly combined with standard Cox–de Boor B-splines along the stations, simply because the latter are of global character, that is, it is not possible to interpolate the function U ( ξ ¯ , η ) through a self-contained expression (trial functions) along a ξ ¯ -station. For instance, at the intersection point of a ξ -isoline with an η -isoline, the associated coefficient α is not uniquely defined. Addressing this incompatibility is the central objective of the present study.
Aiming to address the above issue, a recent preliminary study on transfinite elements has indicated that the classical blending functions—which usually are cardinal functions of [1,0]-type—can be substituted by non-cardinal functions such as Bernstein polynomials and B-splines [17]. The beginning of this inspiration is the 2D analogue of the 1D interpolation using Lagrange polynomials from one side and any other IgA-based functions, such as Bernstein polynomials, B-splines, and NURBS. The lowest level of this concept is to think about the quadratic interpolation, which can be implemented either using Lagrange polynomials: U ( ξ ) = L 1 , 2 ( ξ ) U 1 + L 2 , 2 ( ξ ) U 2 + L 3 , 2 ( ξ ) U 3 or using Bernstein polynomials: U ( ξ ) = B 1 , 2 ( ξ ) a 1 + B 2 , 2 ( ξ ) a 2 + B 3 , 2 ( ξ ) a 2 . The issue is as follows: It is quite reasonable that the aforementioned three Lagrange polynomials may serve the role of blending (interpolation) functions in the ξ -direction since they fulfill the delta-Kronecker property ( L i ( ξ j ) = δ i j ) and hold the partition of unity property. Therefore, they can accurately represent a constant, a linear, and a quadratic univariate function. Similarly, if the generalized coefficients ( a 1 , a 2 , a 3 ) are properly chosen each time, the Bernstein polynomials may again accurately represent the same functions (constant, linear, and quadratic).
Clearly, when the blending functions E i ( ξ ) are Bernstein polynomials (or B-splines), the variation in the η -direction should be performed in terms of a (supposed existing) univariate function a ( η ) , which for η = 0 (i.e., on edge A B ) coincides with the usual generalized coefficients ( a 1 , a 2 , a 3 ) at points ( ξ 1 , ξ 2 , ξ 3 ), respectively. The same holds for a triplet ( ξ 1 , ξ 2 , ξ 3 ) on the opposite edge D C at η = 1 .
The critical point is how to describe the abovementioned function a ( ξ ¯ i , η ) , which is perpendicularly oriented at point ξ ¯ i . Within the IgA framework, the easiest way is to employ a set of B-spline functions extended in the interval η [ 0 , 1 ] . To this purpose, a safe way is to use clamped splines (for degree p = 3 : Ξ = [ 0 , 0 , 0 , 0 , , 1 , 1 , 1 , 1 ] ), whose end values will be the boundary variable a (and not U). In this way, the previously mentioned difficulty in handling a ( η ) is removed.
The paper focuses on the construction and performance of simplified elements, both classical and newly introduced, including those composed of layers oriented in a single direction. This study is to validate the approach of treating the discrete coefficients as a bivariate function a ( ξ , η ) .
The present paper is structured as follows. Section 2 introduces the general formulation of transfinite interpolation, employing either Lagrange or Bernstein polynomials, as well as B-splines, for the representation of blending and trial functions. Section 3 presents the classical transfinite element formulation, rewritten in a B-spline framework. Section 4 describes the development of transfinite elements with nodes arranged in parallel layers. Section 5 focuses on elements that combine tensor-product interior nodes with nonuniform boundary node placement. Section 6 discusses software-related aspects. Section 7 provides numerical results for all models. Section 8 briefly refers to a possible implementation of the collocation method as an alternative. Section 9 offers a detailed discussion, and Section 10 presents the conclusions. The paper is supplemented by four appendices.

2. Transfinite Interpolation Using B-Splines

2.1. Terminology

In classical computer-aided geometric design (CAGD) [19], the term blending function typically refers to univariate interpolation functions used in a specific parametric direction. For instance, consider a Coons patch defined over the quadrilateral A B C D , with the origin at vertex A and the ξ -axis oriented along edge A B (Figure 2b) [7]. The blending functions E 1 ( ξ ) and E 2 ( ξ ) interpolate between the boundary functions U A D ( η ) and U B C ( η ) in the ξ -direction.
A second key concept in classical transfinite interpolation theory—as well as in finite element methodology, as emphasized in Zienkiewicz’s seminal work—is that of trial functions ([3], p. 21). In the present study, this term refers to univariate functions defined along boundary edges, or more generally, along horizontal and vertical mesh lines (stations) within the domain.
For instance, considering the 21-node classical transfinite element (Figure 1c), the distinction between blending functions and trial functions is illustrated in Figure 3. Specifically, perpendicular to the ξ -direction, there are three stations with ending nodes: 1–17, 3–19, and 5–21, respectively; hence, the corresponding blending functions E 1 ( ξ ) , E 2 ( ξ ) , and  E 3 ( ξ ) are Lagrange polynomials of degree 2. Similarly, perpendicular to the η -direction, there are three stations with ending nodes: 1–5, 9–13, and 17–21, respectively; thus, the associated blending functions E 1 ( η ) , E 2 ( η ) , and  E 3 ( η ) are also Lagrange polynomials of degree 2. Furthermore, considering a typical station, such as the middle horizontal one—comprising nodes 9–10–11–12–13—the function U ( ξ , 1 2 ) across these five nodes can be interpolated using a set of five Lagrange polynomials in ξ of degree 4. These five functions constitute the aforementioned trial functions B ˜ i ( ξ ) , i = 1 , , 5 . In general, each station, whether horizontal or vertical, is interpolated by a distinct set of trial functions.
A third issue concerns the use of the terms transfinite element and macroelement. In this paper, these terms are used synonymously to refer to the parametric patch defined over the domain 0 ξ ,   η 1 . Regardless of the choice of blending or trial functions, the resulting basis functions share the same closed-form expression. The main difference lies in the interpolation approach: Lagrange and Bernstein polynomials perform global interpolation over the entire patch, whereas B-splines use piecewise polynomial interpolation between breakpoints, which define the integration cells. Naturally, in the B-spline formulation, not all degrees of freedom (DOFs) are active within every integration cell. However, to maintain a uniform treatment across all three cases (Lagrange, Bernstein, and B-splines), we do not emphasize this distinction.

2.2. State of the Art

The general expression of transfinite interpolation for 2D patches is given in [5]:
U ( ξ , η ) = P ξ P η = P ξ { U } + P η { U } P ξ η { U } ,
where P ξ { U } and P η { U } are projectors of the quantity U along the parametric axes ξ and η , respectively, and  P ξ η { U } is the corrective projector, defined as the tensor product of nodal values at the intersections of stations.
It is well known that, for vertical stations passing through ξ = ξ 1 = 0 , , ξ m + 1 = 1 , and for horizontal stations located at η = η 1 = 0 , , η n + 1 = 1 , we construct univariate blending functions E i ( ξ ) and E j ( η ) of degrees m and n, respectively (assuming Lagrange polynomials are used). Based on the univariate functions U ( ξ i , η ) and U ( ξ , η j ) defined along the vertical and horizontal stations, respectively, we obtain the following:
P ξ { U } = i = 1 m + 1 E i ( ξ ) U ( ξ i , η ) ,
P η { U } = j = 1 n + 1 E j ( η ) U ( ξ , η j ) ,
P ξ η { U } = j = 1 n + 1 i = 1 m + 1 E i ( ξ ) E j ( η ) U ( ξ i , η j ) .
On the other hand, along each station, the variable U ( ξ , η ) is interpolated using trial functions B ˜ i ( s ) , where the variable s denotes either of the parametric directions ξ or η , as follows:
Horizontal station : U ( ξ , η ¯ ) = i = 1 m ˜ + 1 B ˜ i ( ξ ) U ( ξ i , η ¯ ) ,
Vertical station : U ( ξ ¯ , η ) = j = 1 n ˜ + 1 B ˜ j ( η ) U ( ξ ¯ , η j ) .
Here, the overbar denotes a prescribed value of a given parameter ( ξ or η ) along the corresponding station—vertical for ξ ¯ or horizontal for η ¯ . In general, the number of nodes ( m ˜ + 1 or n ˜ + 1 ) along a station may differ—either smaller or greater—from the number of stations in the same direction. The case of equality (e.g., in a tensor-product configuration) is also included.
Henceforth, for brevity, the notation { U } following each projector is suppressed, for example, P ξ { U } is written simply as P ξ , and similarly for the others.

2.3. Extension of the Projectors Using Bernstein Polynomials

The classical interpretation of the well-known projectors ( P ξ , P η , and  P ξ η ) is founded on their application to the primary variable U ( ξ , η ) , in accordance with the use of Lagrange polynomials as blending functions E i ( ξ ) and E j ( η ) , as presented in Ref. [5]. It is well established that Coons interpolation represents a direct extension of one-dimensional linear interpolation to two-dimensional domains [9]. Similarly, classical transfinite (Gordon) interpolation generalizes one-dimensional polynomial interpolation to bivariate patches. Since one-dimensional polynomial interpolation can be formulated using either Lagrange or Bernstein polynomials [20], it follows that the classical projectors may likewise be expressed in terms of Bernstein polynomials.
The above claim will be demonstrated—in full detail for the first time—for one projector, namely P ξ ; the same holds for the remaining ones. Let us consider three points P 1 ( ξ 1 ) , P 2 ( ξ 2 ) , and  P 3 ( ξ 3 ) on a parametric curve C ( ξ ) and the associated values U 1 , U 2 , U 3 of a univariate function U ( ξ ) (Figure 2a). These can be interpolated in terms of the nodal values ( U 1 , U 2 , U 3 ), using the quadratic Lagrange polynomials E 1 ( ξ ) = L 1 , 2 ( ξ ) , E 2 ( ξ ) = L 2 , 2 ( ξ ) , E 3 ( ξ ) = L 3 , 2 ( ξ ) :
U ( ξ ) = E 1 ( ξ ) U 1 + E 2 ( ξ ) U 2 + E 3 ( ξ ) U 3 .
Alternatively, the same points can be interpolated in terms of the generalized coefficients ( a 1 , a 2 , a 3 ) using the quadratic Bernstein polynomials E ˜ 1 ( ξ ) = B 1 , 2 ( ξ ) , E ˜ 2 ( ξ ) = B 2 , 2 ( ξ ) , and  E ˜ 3 ( ξ ) = B 3 , 2 ( ξ ) :
U ( ξ ) = E ˜ 1 ( ξ ) a 1 + E ˜ 2 ( ξ ) a 2 + E ˜ 3 ( ξ ) a 3 .
The above equations can be extended from one to two dimensions, beginning with the projector P ξ , in which the nodal values ( U 1 , U 2 , U 3 ) are replaced by univariate functions ( U 1 ( η ) , U 2 ( η ) , U 3 ( η ) ), as illustrated in Figure 2b:
P ξ { U } = E 1 ( ξ ) U 1 ( η ) + E 2 ( ξ ) U 2 ( η ) + E 3 ( ξ ) U 3 ( η ) .
Similarly, in terms of Bernstein polynomials, the same projector is expressed in the form of a separation of variables, as follows:
P ξ { a } = E ˜ 1 ( ξ ) a 1 ( η ) + E ˜ 2 ( ξ ) a 2 ( η ) + E ˜ 3 ( ξ ) a 3 ( η ) .
Of course, a significant distinction exists between the two formulations presented above. The Lagrange interpolation (Equation (9)) is a local scheme applied to univariate functions that directly represent the primary variable U ( η ) at discrete stations located at ξ = 0 , 1 2 , 1 . In contrast, the Bernstein interpolation (Equation (10)) is a global approach, involving univariate functions a ( η ) constructed from generalized coefficients.
This implies that while the interpolation of the primary variable U is straightforward and intuitive, the corresponding interpolation of the coefficient a is less direct. Nevertheless, the coefficient a embodies a definitive quantity that, in essence, is not fundamentally different from the variable U. For instance, in the case of quadratic interpolation, we observe the following:
a 1 = U 1 , a 2 = 1 2 U 1 + 2 U 2 + 1 2 U 3 , a 3 = U 3 .
Therefore, if—for instance—the extreme values are equal (i.e., U 1 = U 3 ), the coefficient a 2 corresponds to 2 U 2 . This implies that a duplication of the associated basis function can be employed to ensure that a 2 effectively represents the actual variable U 2 .
Numerical investigations have confirmed that this concept—promoting the use of Bernstein polynomials, and more generally B-splines, as blending functions—yields robust performance, provided that the remaining two projectors ( P ξ , P η ) are incorporated in a consistent manner [9,17].

2.4. B-Splines Projectors

A comprehensive investigation into the use of B-splines as blending functions was recently presented in Ref. [17], although the treatment therein was primarily speculative. In contrast, the methodology introduced in this paper adopts a more rigorous framework and may be interpreted in analogy with a function of separated variables, namely U ( ξ , η ) = X ( ξ ) Y ( η ) , where the role of Y ( η ) is assumed by the function a ( η ) , which is intrinsically linked to the generalized coordinates.
In general, the number of mesh lines (stations) along each parametric direction determines the length of the corresponding knot vector used for the blending functions. Likewise, the number of control points defined at each station governs the length of the associated knot vector for the trial functions. Further clarification and illustrative examples will be provided in the subsequent sections.

3. Construction of Classical B-Spline Transfinite Elements

A representative transfinite element A B C D , comprising 113 control points, is depicted in Figure 4d. It can be observed that the element is structured with four horizontal and five vertical stations (including the boundary edges), upon which the control points are distributed. The horizontal set of stations is oriented perpendicular to the η -axis and positioned at η = 0 , 1 3 , 2 3 , 1 , while the vertical set is oriented perpendicular to the ξ -axis and located at ξ = 0 , 1 4 , 2 4 , 3 4 , 1 .
Based on the aforementioned station configuration, the blending functions in the ξ -direction may be chosen as Lagrange or Bernstein polynomials of degree 4, corresponding to five vertical station values. Similarly, in the η -direction, the blending functions may be Lagrange or Bernstein polynomials of degree 3, associated with four horizontal station values.
Alternatively, when employing cubic B-splines, the  ξ -direction can be represented using the global knot vector
Ξ blend = [ 0 , 0 , 0 , 0 , 1 2 , 1 , 1 , 1 , 1 ] ,
which corresponds to five distinct station values and ensures C 2 continuity. In the η -direction, the blending functions may be defined by the global knot vector
H blend = [ 0 , 0 , 0 , 0 , 1 , 1 , 1 , 1 ] ,
which corresponds to four station values and yields Bernstein polynomials of degree 3.
In all cases, the construction of the knot vectors for the blending functions must guarantee that the number of control points aligns with the number of stations, thereby ensuring proper interpolation and continuity across the transfinite element.
Under these conditions, the three projectors defined by Equation (2) through Equation (4) are now reformulated in terms of B-spline-based blending and trial functions, where the trial functions are associated with the generalized coefficients a i .
Upon further elaboration, it is found that the Boolean sum in Equation (1) yields a total of 113 basis functions. These functions can be categorized into two distinct groups, as follows:
  • Nodes at section intersections (including corner nodes A, B, C, and D), for example:
    ψ 69 ( ξ , η ) = E 2 ( ξ ) N 9 , 3 ( η ) + E 3 ( η ) N 5 , 3 ( ξ ) E 2 ( ξ ) E 3 ( η ) .
    In this expression, E 2 ( ξ ) denotes the second blending function in the ξ -direction, corresponding to the second vertical station where node 69 is located. Likewise, N 9 , 3 ( η ) refers to the ninth B-spline basis function in the η -direction, as node 69 is the ninth node from the bottom. The same logic applies to the remaining terms.
  • Intermediate nodes on single stations, for example:
    ψ 71 ( ξ , η ) = E 3 ( η ) N 7 , 3 ( ξ ) .
    Here, E 3 ( η ) is the third blending function in the η -direction, indicating that node 71 lies on the third horizontal station. Similarly, N 7 , 3 ( ξ ) represents the seventh B-spline basis function in the ξ -direction, as node 71 is the seventh node from the left boundary.
By classifying the 113 degrees of freedom into the two aforementioned categories, the complete set of basis functions can be systematically constructed. Specifically, 20 of these functions—corresponding to the black-filled circles in Figure 4d—are composed of three terms, as exemplified by Equation (12), and reflect contributions from all three projectors. The remaining 93 functions—associated with the white-filled circles—are expressed as simple tensor products, as illustrated in Equation (13).
Figure 4. A collection of classical transfinite elements: (a) 21-node element; (b) 27-node element; (c) 33-node element; (d) 113-node element.
Figure 4. A collection of classical transfinite elements: (a) 21-node element; (b) 27-node element; (c) 33-node element; (d) 113-node element.
Axioms 15 00028 g004
With respect to the blending and trial functions, the formulations presented above are of general applicability. In the following sections, several alternative modeling approaches will be examined and compared.

3.1. Model-1: Lagrange Polynomials

As a representative example, we consider the following configuration (Figure 4d):
  • Lagrange polynomials of degree p ξ = 4 and p η = 3 are employed as blending functions in the ξ - and η -directions, respectively.
  • Lagrange polynomials of degree p ξ = 16 and p η = 12 are used as trial functions in the ξ - and η -directions, respectively.
For this Model-1 setup, the resulting bivariate global shape functions ϕ ( ξ , η ) are depicted in Figure 5a. Notably, elevated function values are observed along the vertical edges, indicating localized influence. Furthermore, the constructed basis satisfies the partition of unity property:
i = 1 113 ϕ i ( ξ , η ) = 1 .

3.2. Model-2: Mixed Scheme

In this model, the blending functions are retained from Model 1, namely Lagrange polynomials of degree p ξ = 4 and p η = 3 in the ξ - and η -directions, respectively. For the trial functions, however, we adopt the classical natural cubic cardinal B-splines, which are directly associated with the nodal values U (i.e., they are of [ 0 , 1 ] -type). This choice effectively reproduces the behavior of the Lagrange polynomials used in Model 1 and thus eliminates the need for the generalized coefficients a i .
This formulation is particularly well-suited to uniform nodal distributions with single knots and facilitates direct comparison with Model-1. It is worth noting that this type of spline interpolation—natural cubic B-splines—was widely used during the mid-1980s (see [21], among others).
In brief, the knot vector for the trial functions in the ξ -direction consists of 23 entries:
Ξ = [ 0 , 0 , 0 , 0 , 1 16 , , 15 16 , 1 , 1 , 1 , 1 ] ,
which generates 19 control points. From these, 17 univariate cardinal trial functions are constructed, corresponding to the 17 nodal points along the horizontal stations.
Based on the formulations in Equations (12) and (13), the graphical representation of the resulting 113 basis functions is shown in Figure 5b. These basis functions have been verified to satisfy the partition of unity property:
i = 1 113 ψ i ( ξ , η ) = 1 ,
exhibit unity as their upper bound, and satisfy the Kronecker-delta property ( ψ i ( ξ j , η j ) = δ i j ).
Further details regarding the construction of the cardinal univariate set of natural cubic B-splines can be found in Ref. [9] (pp. 103–109), and the relevant implementation code is provided in Appendix A.

3.3. Model-3: Cubic B-Splines

This model closely aligns with the current state-of-the-art practices in Isogeometric Analysis (IgA), where classical B-splines (de Boor formulation) or NURBS are commonly employed. In this framework, B-splines are utilized for constructing both the blending and trial function sets. Classical clamped splines are adopted, reflecting the fact that for a polynomial degree p, the minimum number of control points is p + 1 in the case of Bernstein polynomials, whereas for pure B-splines, the condition n ctrl > p + 1 must be satisfied.
Within this context, the 113-node transfinite element illustrated in Figure 4d should be interpreted as an index space rather than a physical nodal layout. In Models 1 and 2 (see Section 3.1 and Section 3.2), each of the 113 nodal points was directly associated with a unique bivariate shape function linked to a nodal value U i , leaving no ambiguity in the trial function definition.
Assuming that the 17 points along each horizontal station are treated as single breakpoints, it is well known that the corresponding number of control points becomes 19. Conversely, if only 17 control points per horizontal station are desired, one must define 15 breakpoints, resulting in 14 knot spans in the ξ -direction. The associated knot vector is then given by the following:
Ξ = [ 0 , 0 , 0 , 0 , 1 14 , 2 14 , , 13 14 , 1 , 1 , 1 , 1 ] .
Similarly, to obtain 13 control points in the η -direction (based on 11 breakpoints and 10 knot spans), the corresponding knot vector is as follows:
H = [ 0 , 0 , 0 , 0 , 1 10 , 2 10 , , 9 10 , 1 , 1 , 1 , 1 ] .
The graphical representation of the resulting basis functions is shown in Figure 5c.
Figure 5. Bivariate basis functions for the 113-node transfinite element, using Lagrange polynomials as blending functions, while trial functions are as follows: (a) Lagrange polynomials; (b) natural cubic cardinal B-splines; (c) de Boor cubic B-splines.
Figure 5. Bivariate basis functions for the 113-node transfinite element, using Lagrange polynomials as blending functions, while trial functions are as follows: (a) Lagrange polynomials; (b) natural cubic cardinal B-splines; (c) de Boor cubic B-splines.
Axioms 15 00028 g005

4. Construction of Multi-Layer Finite Elements with Nodes Arranged in Parallel Layers

We now examine multi-layer finite elements containing internal nodes, where the number of nodes per station (i.e., per parallel layer) may vary. Such configurations arise when nodes—both internal and boundary—are aligned along unidirectional stations, for instance, distributed horizontally, as depicted in Figure 1e.

4.1. Unidirectional Multi-Layer Transfinite Lagrange and Bernstein Elements

The unidirectional analog of Equation (10), corresponding to the configuration shown in Figure 1e where all five stations are parallel to the horizontal ξ -axis, is given by the following projector:
P η { a } = E ˜ 1 ( η ) a 1 ( ξ ) + E ˜ 2 ( η ) a 2 ( ξ ) + E ˜ 3 ( η ) a 3 ( ξ ) + E ˜ 4 ( η ) a 4 ( ξ ) + E ˜ 5 ( η ) a 5 ( ξ ) .
In this formulation, the approximation function is expressed as U ( ξ , η ) = P η { a } . Each component function a i ( ξ ) , for  i = 1 , , 5 , can be represented using clamped B-splines. The corresponding knot vectors are constructed such that the number of control points matches the number of nodes shown in Figure 1e.
It is important to note that the interpolatory nature of these B-splines—exhibiting unit values at the endpoints of each horizontal station (i.e., at  ξ = 0 and ξ = 1 )—does not introduce any complications. This is because each function a j ( ξ ) is multiplied by a non-cardinal blending function E ˜ j ( η ) , analogous to the behavior observed in one-dimensional problems.
For instance, if  a ( ξ ) is a constant function, the clamped B-spline basis will represent it exactly. This observation underscores that the value of U is influenced by all coefficients a within the patch, a property particularly relevant for Bernstein polynomials. However, in the present formulation, the focus is on the coefficient functions a i ( ξ ) rather than the potentially problematic direct interpolation of U along each horizontal station.
A previous report, Ref. [17], proposed the conjecture that transfinite interpolation can be effectively employed using a wide variety of blending functions, provided that the partition of unity condition is satisfied and the function set is complete. Within this framework, not only cardinal Lagrange polynomials but also non-cardinal blending functions—such as Bernstein polynomials and B-splines—have been successfully explored.
Furthermore, in the context of trial functions, any well-established univariate functional basis may be considered a viable candidate for use within numerical analysis modules, including Galerkin and collocation methods. This flexibility allows for the integration of diverse approximation schemes while maintaining consistency with the underlying transfinite interpolation principles.
Let us consider a class of transfinite elements with unidirectional nodes, as shown in Figure 6. Let us focus on the 12-node element (Figure 6a). Replacing Equation (9) by the vertical projection P η = E 1 ( η ) U 1 ( ξ ) + E 2 ( η ) U 2 ( ξ ) + E 3 ( η ) U 3 ( ξ ) , and then expressing the involved univariate functions U 1 ( ξ ) , U 2 ( ξ ) , U 3 ( ξ ) in terms of Lagrange polynomials L i , p ( ξ ) of variable degree p associated with each horizontal station (layer), we obtain the following set of bivariate global shape functions:
Figure 6. Transitional elements: (a) 12-node; (b) 18-node; (c) 25-node; (d) 32-node element.
Figure 6. Transitional elements: (a) 12-node; (b) 18-node; (c) 25-node; (d) 32-node element.
Axioms 15 00028 g006
ϕ 1 ( ξ , η ) = L 1 , 2 ( ξ ) L 1 , 2 ( η ) , ϕ 2 ( ξ , η ) = L 2 , 2 ( ξ ) L 1 , 2 ( η ) , ϕ 3 ( ξ , η ) = L 3 , 2 ( ξ ) L 1 , 2 ( η ) , ϕ 4 ( ξ , η ) = L 1 , 3 ( ξ ) L 2 , 2 ( η ) , ϕ 5 ( ξ , η ) = L 2 , 3 ( ξ ) L 2 , 2 ( η ) , ϕ 6 ( ξ , η ) = L 3 , 3 ( ξ ) L 2 , 2 ( η ) , ϕ 7 ( ξ , η ) = L 4 , 3 ( ξ ) L 2 , 2 ( η ) , ϕ 8 ( ξ , η ) = L 1 , 4 ( ξ ) L 3 , 2 ( η ) , ϕ 9 ( ξ , η ) = L 2 , 4 ( ξ ) L 3 , 2 ( η ) , ϕ 10 ( ξ , η ) = L 3 , 4 ( ξ ) L 3 , 2 ( η ) , ϕ 11 ( ξ , η ) = L 4 , 4 ( ξ ) L 3 , 2 ( η ) , ϕ 12 ( ξ , η ) = L 5 , 4 ( ξ ) L 3 , 2 ( η )
Next, replacing Lagrange polynomials with their Bernstein counterparts, or alternatively applying the projector defined by the analog of Equation (18) (including three terms associated with the three layers in Figure 6a) by expressing the involved univariate functions a 1 ( ξ ) , a 2 ( ξ ) , a 3 ( ξ ) in terms of Bernstein polynomials, we obtain the following set of non-negative basis functions:
ψ 1 ( ξ , η ) = B 1 , 2 ( ξ ) B 1 , 2 ( η ) , ψ 2 ( ξ , η ) = B 2 , 2 ( ξ ) B 1 , 2 ( η ) , ψ 3 ( ξ , η ) = B 3 , 2 ( ξ ) B 1 , 2 ( η ) , ψ 4 ( ξ , η ) = B 1 , 3 ( ξ ) B 2 , 2 ( η ) , ψ 5 ( ξ , η ) = B 2 , 3 ( ξ ) B 2 , 2 ( η ) , ψ 6 ( ξ , η ) = B 3 , 3 ( ξ ) B 2 , 2 ( η ) , ψ 7 ( ξ , η ) = B 4 , 3 ( ξ ) B 2 , 2 ( η ) , ψ 8 ( ξ , η ) = B 1 , 4 ( ξ ) B 3 , 2 ( η ) , ψ 9 ( ξ , η ) = B 2 , 4 ( ξ ) B 3 , 2 ( η ) , ψ 10 ( ξ , η ) = B 3 , 4 ( ξ ) B 3 , 2 ( η ) , ψ 11 ( ξ , η ) = B 4 , 4 ( ξ ) B 3 , 2 ( η ) , ψ 12 ( ξ , η ) = B 5 , 4 ( ξ ) B 3 , 2 ( η ) .
The shape functions ϕ i ( ξ , η ) based on Lagrange polynomials (Equation (19)) are illustrated in Figure 7a, while the basis functions ψ i ( ξ , η ) corresponding to Bernstein polynomials (Equation (20)) are shown in Figure 7b. This element is not provided for B-spline interpolation, as it contains too few nodes to support such a representation.

4.2. Unidirectional Transfinite B-Spline Elements

Below, we focus on the 18-node element shown in Figure 6b. The characteristic of this element is that—in addition to the four edges—it includes two internal stations which are both oriented in the ξ -direction (horizontal stations), and thus (as also happened with the 12-node element) the only non-zero projector among the three is P η , i.e.,  P ξ = P ξ η = 0 . Since the total number of horizontal stations is 4, there is no cubic B-spline to cover this case (unless we select a quadratic B-spline), and therefore, we resort to cubic Bernstein polynomials (hybrid scheme), as follows:
  • The blending functions in vertical ( η )-direction were taken as cubic Bernstein polynomials, B i , 3 ( η ) , i = 1 , 2 , 3 , 4 , where B 1 , 3 = ( 1 η ) 3 , B 2 , 3 = 3 ( 1 η ) 2 η , B 3 , 3 = 3 ( 1 η ) η 2 , B 4 , 3 = η 3 .
  • The base 1-2-3 was modelled by quadratic Bernstein polynomials: B 1 , 2 = ( 1 η ) 2 , B 2 , 2 = 2 ( 1 η ) η , B 3 , 2 = η 2 .
  • The second layer, with nodes 4-5-6-7, was modelled by cubic Bernstein polynomials, B i , 3 ( ξ ) , i = 1 , 2 , 3 , 4 .
  • The third layer, with nodes 8-9-10-11-12, was modelled as a set of five cubic B-splines, N i , 3 η = 2 / 3 ( ξ ) , i = 1 , , 5 , with knot vector [ 0 , 0 , 0 , 0 , 1 2 , 1 , 1 , 1 , 1 ] .
  • The fourth (top) layer, with nodes 13-14-15-16-17-18, was modelled as a set of six cubic B-splines, N i , 3 η = 1 ( ξ ) , i = 1 , , 6 , with knot vector [ 0 , 0 , 0 , 0 , 2 5 , 3 5 , 1 , 1 , 1 , 1 ] .
Writing a projector similar to that of Equation (18), in conjunction with four parallel layers (stations) at η = 0 , 1 3 , 2 3 , 1 , we obtain the following basis functions:
ψ 1 ( ξ , η ) = B 1 , 2 ( ξ ) B 1 , 3 ( η ) , ψ 2 ( ξ , η ) = B 2 , 2 ( ξ ) B 1 , 3 ( η ) , ψ 3 ( ξ , η ) = B 3 , 2 ( ξ ) B 1 , 3 ( η ) , ψ 4 ( ξ , η ) = B 1 , 3 ( ξ ) B 2 , 3 ( η ) , ψ 5 ( ξ , η ) = B 2 , 3 ( ξ ) B 2 , 3 ( η ) , ψ 6 ( ξ , η ) = B 3 , 3 ( ξ ) B 2 , 3 ( η ) , ψ 7 ( ξ , η ) = B 4 , 3 ( ξ ) B 2 , 3 ( η ) , ψ 8 ( ξ , η ) = N 1 , 3 η = 2 / 3 ( ξ ) B 3 , 3 ( η ) , ψ 9 ( ξ , η ) = N 2 , 3 η = 2 / 3 ( ξ ) B 3 , 3 ( η ) , ψ 10 ( ξ , η ) = N 3 , 3 η = 2 / 3 ( ξ ) B 3 , 3 ( η ) , ψ 11 ( ξ , η ) = N 4 , 3 η = 2 / 3 ( ξ ) B 3 , 3 ( η ) , ψ 12 ( ξ , η ) = N 5 , 3 η = 2 / 3 ( ξ ) B 3 , 3 ( η ) , ψ 13 ( ξ , η ) = N 1 , 3 η = 1 ( ξ ) B 4 , 3 ( η ) , ψ 14 ( ξ , η ) = N 2 , 3 η = 1 ( ξ ) B 4 , 3 ( η ) , ψ 15 ( ξ , η ) = N 3 , 3 η = 1 ( ξ ) B 4 , 3 ( η ) , ψ 16 ( ξ , η ) = N 4 , 3 η = 1 ( ξ ) B 4 , 3 ( η ) , ψ 17 ( ξ , η ) = N 5 , 3 η = 1 ( ξ ) B 4 , 3 ( η ) , ψ 18 ( ξ , η ) = N 6 , 3 η = 1 ( ξ ) B 4 , 3 ( η ) .
Obviously, the same form as Equation (21) holds when the blending and trial functions are all of Lagrange type or all of Bernstein type. For all these three cases, the graphs of the basis functions are shown in Figure 8.
Regarding the estimation of the stiffness matrix of the 18-node transfinite element in Figure 6b, the fully-Lagrange and the fully-Bernstein models require an integration scheme of 6 × 4 Gauss points in the ξ - and η -directions, without local support. This is because the maximum polynomial degrees per single basis function are p = 5 and q = 3 , respectively, and thus the multiplication in the integrand will contain terms up to x 10 y 6 . In contrast, for the same patch, the piecewise cubic B-spline interpolation requires 10 × 3 integration cells (i.e., 30 B-spline elements, as they have been called in standard IgA [11]) with 4 × 4 Gauss points per element (i.e., a total of 480 integration points, however, with local support).
Figure 7. Twelve-node transition element: (a) Lagrange polynomials; (b) Bernstein polynomials.
Figure 7. Twelve-node transition element: (a) Lagrange polynomials; (b) Bernstein polynomials.
Axioms 15 00028 g007
Figure 8. Basis functions for the 18-node transfinite element: (a) Lagrange polynomials; (b) Bernstein polynomials; (c) Mixed, Bernstein polynomials and B-splines.
Figure 8. Basis functions for the 18-node transfinite element: (a) Lagrange polynomials; (b) Bernstein polynomials; (c) Mixed, Bernstein polynomials and B-splines.
Axioms 15 00028 g008
Note: When the number of parallel sections increases to 5 (and thus the number of nodes becomes 25, as shown in Figure 6c), the 25-node transfinite element may be handled using blending functions of B-spline type, based on the knot vector Ξ blend = [ 0 , 0 , 0 , 0 , 1 2 , 1 , 1 , 1 , 1 ] . Moreover, regarding the 32-node element made of six horizontal sections (partially non-uniform, as shown in Figure 6d), results and discussion are given in Section 7.1.2.

5. Finite Elements Featuring Tensor-Product Interior Nodes and Nonuniform Boundary Node Placement

This is a class of elements (the third in the present paper) in which the boundary nodes are placed arbitrarily, and the interior is populated using a tensor product grid of m × n internal nodes. A common rule of thumb is to choose the number of internal points in each direction (m or n) based on the average number of intermediate nodes on opposite edges. This class of elements has previously been formulated using Lagrange polynomials as both blending and trial functions [17,18]. In the present paper, the methodology is extended by introducing B-splines as an alternative choice for both blending and trial functions.

5.1. 27-Node Transfinite Element

As an illustrative example, we consider a 27-node transfinite element defined over the patch A B C D , whose four edges are uniformly partitioned into 4, 3, 6, and 5 segments, respectively, as shown in Figure 9. For this particular edge configuration, it is possible to construct at least three distinct formulations of the transfinite element, each based on different combinations of blending functions and trial (interpolating) functions, as outlined below.
  • Lagrange polynomials;
  • Bernstein polynomials;
  • B-splines.
Regarding Lagrange and Bernstein polynomials, the associated polynomial degrees per edge are as follows: p A B = 4 , p B C = 3 , p D C = 6 , and  p A D = 5 . The internal nodes form a uniform tensor product pattern of scheme 3 × 3 (nodes 19 to 27 in Figure 9), which means that the degree of the blending functions is n I , ξ = n I , η = 4 (between edges and internal nodes, four node spans per direction are created). Therefore, this element consists of 18 boundary and 9 internal nodes.
The above 27-node B-spline element is defined by a regular tensor-product arrangement of internal nodes in a 3 × 3 grid. However, each of the four edges features a different discretization: edge A B contains 5 control points, edge B C has 4, edge D C includes 7, and edge A D consists of 6 control points. For clarity, node numbering starts from the boundary and proceeds to the interior. The internal grid lines intersect edge A D at points ( E , G , I ) , edge B C at ( F , H , J ) , and the top edge D C at ( K , 11 , L ) . Notably, in this example, the bottom edge A B is defined such that its intermediate points coincide exactly with the orthogonal projections of the internal nodes (19 to 27) onto it, for the sake of alignment and illustrative symmetry.
Figure 9. The 27-node transfinite element A B C D (points E to L are auxiliary).
Figure 9. The 27-node transfinite element A B C D (points E to L are auxiliary).
Axioms 15 00028 g009
For this element, the transfinite interpolation (Equation (1)) consists of the following projectors (the auxiliary points, which are necessary to define the projectors, are denoted in red ×):
P ξ = E 1 ( ξ ) N 1 , 3 A D ( η ) a 1 + N 2 , 3 A D ( η ) a 18 + N 3 , 3 A D ( η ) a 17 + N 4 , 3 A D ( η ) a 16 + N 5 , 3 A D ( η ) a 15 + N 6 , 3 A D ( η ) a 14 + E 2 ( ξ ) N 1 , 3 L # 2 ( η ) a 2 + N 2 , 3 L # 2 ( η ) a 19 + N 3 , 3 L # 2 ( η ) a 22 + N 4 , 3 L # 2 ( η ) a 25 + N 5 , 3 L # 2 ( η ) a K + E 3 ( ξ ) N 1 , 3 L # 3 ( η ) a 3 + N 2 , 3 L # 3 ( η ) a 20 + N 3 , 3 L # 3 ( η ) a 23 + N 4 , 3 L # 3 ( η ) a 26 + N 5 , 3 L # 3 ( η ) a 11 + E 4 ( ξ ) N 1 , 3 L # 4 ( η ) a 4 + N 2 , 3 L # 4 ( η ) a 21 + N 3 , 3 L # 4 ( η ) a 24 + N 4 , 3 L # 4 ( η ) a 27 + N 5 , 3 L # 4 ( η ) a L + E 5 ( ξ ) N 1 , 3 D C ( η ) a 5 + N 2 , 3 D C ( η ) a 6 + N 3 , 3 D C ( η ) a 7 + N 4 , 3 D C ( η ) a 8 ,
also
P η = E 1 ( η ) N 1 , 3 A B ( ξ ) a 1 + N 2 , 3 A B ( ξ ) a 2 + N 3 , 3 A B ( ξ ) a 3 + N 4 , 3 A B ( ξ ) a 4 + N 5 , 3 A B ( ξ ) a 5 + E 2 ( η ) N 1 , 3 L # 2 ( ξ ) a E + N 2 , 3 L # 2 ( ξ ) a 19 + N 3 , 3 L # 2 ( ξ ) a 20 + N 4 , 3 L # 2 ( ξ ) a 21 + N 5 , 3 L # 2 ( ξ ) a F + E 3 ( η ) N 1 , 3 L # 3 ( ξ ) a G + N 2 , 3 L # 3 ( ξ ) a 22 + N 3 , 3 L # 3 ( ξ ) a 23 + N 4 , 3 L # 3 ( ξ ) a 24 + N 5 , 3 L # 3 ( ξ ) a H + E 4 ( η ) N 1 , 3 L # 4 ( ξ ) a I + N 2 , 3 L # 4 ( ξ ) a 25 + N 3 , 3 L # 4 ( ξ ) a 26 + N 4 , 3 L # 4 ( ξ ) a 27 + N 5 , 3 L # 4 ( ξ ) a J + E 5 ( η ) N 1 , 3 D C ( ξ ) a 14 + N 2 , 3 D C ( ξ ) a 13 + N 3 , 3 D C ( ξ ) a 12 + N 4 , 3 D C ( ξ ) a 11 + N 5 , 3 D C ( ξ ) a 10 + N 6 , 3 D C ( ξ ) a 9 + N 7 , 3 D C ( ξ ) a 8 ,
and
P ξ η = E 1 ( ξ ) E 1 ( η ) a 1 + E 2 ( ξ ) E 1 ( η ) a 2 + E 3 ( ξ ) E 1 ( η ) a 3 + E 4 ( ξ ) E 1 ( η ) a 4 + E 5 ( ξ ) E 1 ( η ) a 4 + E 1 ( ξ ) E 2 ( η ) a E + E 2 ( ξ ) E 2 ( η ) a 19 + E 3 ( ξ ) E 2 ( η ) a 20 + E 4 ( ξ ) E 2 ( η ) a 21 + E 5 ( ξ ) E 2 ( η ) a F + E 1 ( ξ ) E 3 ( η ) a G + E 2 ( ξ ) E 3 ( η ) a 22 + E 3 ( ξ ) E 3 ( η ) a 23 + E 4 ( ξ ) E 3 ( η ) a 24 + E 5 ( ξ ) E 3 ( η ) a H + E 1 ( ξ ) E 4 ( η ) a I + E 2 ( ξ ) E 4 ( η ) a 25 + E 3 ( ξ ) E 4 ( η ) a 26 + E 4 ( ξ ) E 4 ( η ) a 27 + E 5 ( ξ ) E 4 ( η ) a J + E 1 ( ξ ) E 5 ( η ) a 14 + E 2 ( ξ ) E 5 ( η ) a K + E 3 ( ξ ) E 5 ( η ) a 11 + E 4 ( ξ ) E 5 ( η ) a L + E 5 ( ξ ) E 5 ( η ) a 8 .
Furthermore, if we consider that for either s = ξ , η we have the following:
N i , 3 L # j ( s ) = E i ( s ) , i = 1 , , 5 for all internal layers L # j ,
the substitution of Equation (22) to Equation (25) into the Boolean sum given by Equation (1) cancels all the auxiliary red-colored terms, and thus the bivariate function U ( ξ , η ) is approximated by the following:
U ( ξ , η ) = N 1 , 3 A D ( η ) E 1 ( ξ ) + N 1 , 3 A B ( ξ ) E 1 ( η ) E 1 ( ξ ) E 1 ( η ) a 1 + N 2 , 3 A B ( ξ ) E 1 ( η ) a 2 + N 3 , 3 A B ( ξ ) E 1 ( η ) a 3 + N 4 , 3 A B ( ξ ) E 1 ( η ) a 4 + N 1 , 3 B C ( η ) E 5 ( ξ ) + N 5 , 3 A B ( ξ ) E 1 ( η ) E 5 ( ξ ) E 1 ( η ) a 5 + N 2 , 3 ( η ) E 5 ( ξ ) a 6 + N 3 , 3 ( η ) E 5 ( ξ ) a 7 + N 4 , 3 B C ( η ) E 5 ( ξ ) + N 7 , 3 D C ( ξ ) E 5 ( η ) E 5 ( ξ ) E 5 ( η ) a 8 + N 6 , 3 ( ξ ) E 5 ( η ) a 9 + N 5 , 3 ( ξ ) E 5 ( η ) a 10 + N 4 , 3 ( ξ ) E 5 ( η ) a 11 + N 3 , 3 ( ξ ) E 5 ( η ) a 12 + N 2 , 3 ( ξ ) E 5 ( η ) a 13 + N 6 , 3 ( η ) E 1 ( ξ ) + N 1 , 3 ( ξ ) E 5 ( η ) E 1 ( ξ ) E 5 ( η ) a 14 + N 5 , 3 ( η ) E 1 ( ξ ) a 15 + N 4 , 3 ( η ) E 1 ( ξ ) a 16 + N 3 , 3 ( η ) E 1 ( ξ ) a 17 + N 2 , 3 ( η ) E 1 ( ξ ) a 18 + E 2 ( ξ ) E 2 ( η ) a 19 + E 3 ( ξ ) E 2 ( η ) a 20 + E 4 ( ξ ) E 2 ( η ) a 21 + E 2 ( ξ ) E 3 ( η ) a 22 + E 3 ( ξ ) E 3 ( η ) a 23 + E 4 ( ξ ) E 3 ( η ) a 24 + E 2 ( ξ ) E 4 ( η ) a 25 + E 3 ( ξ ) E 4 ( η ) a 26 + E 4 ( ξ ) E 4 ( η ) a 27 .
The above model offers flexibility in the choice of the univariate blending and trial functions. Therefore, we can proceed as follows:
  • The five blending functions per direction, horizontal or vertical, can be ensured by the knot vector Ξ = [ 0 , 0 , 0 , 0 , 1 2 , 1 , 1 , 1 , 1 ] which guarantees five control points.
  • The trial functions along the edge A B are chosen to match the blending functions in the ξ -direction, since all associated control points are orthogonal projections of the internal points onto this edge.
  • The four control points along the edge B C are ensured by the knot vector H = [ 0 , 0 , 0 , 0 , 1 , 1 , 1 , 1 ] , which effectively corresponds to a set of four Bernstein polynomials of degree 3.
  • The seven control points along the edge D C are ensured by the knot vector Ξ = [ 0 , 0 , 0 , 0 , 1 4 , 2 4 , 3 4 , 1 , 1 , 1 , 1 ] .
  • The six control points along the edge A D are determined by the knot vector Ξ = [ 0 , 0 , 0 , 0 , 1 3 , 2 3 , 1 , 1 , 1 , 1 ] .
Under these assumptions, the 27 basis functions ψ j ( ξ , η ) are defined as follows:
Regardless of the element type, the formulas for the shape or basis functions remain identical. According to the Boolean sum formulation, the corner nodes ( A , B ) on the bottom edge—discretized identically to the interior—are not influenced by the blending functions, whereas the corner nodes ( C , D ) on the top edge are affected.
For instance, using cubic B-splines for the blending functions:
E 1 = N 1 , 3 , E 2 = N 2 , 3 , E 3 = N 3 , 3 , E 4 = N 4 , 3 , E 5 = N 5 , 3 ,
and also employing cubic B-splines for the trial functions along the edges, the resulting set of bivariate basis functions is as follows:
ψ 1 ( ξ , η ) = N 1 , 3 ( ξ ) E 1 , 3 ( η ) , ψ 2 ( ξ , η ) = N 2 , 3 ( ξ ) E 1 , 3 ( η ) , ψ 3 ( ξ , η ) = N 3 , 3 ( ξ ) E 1 , 3 ( η ) , ψ 4 ( ξ , η ) = N 4 , 3 ( ξ ) E 1 , 3 ( η ) , ψ 5 ( ξ , η ) = N 5 , 3 ( ξ ) E 1 , 3 ( η ) , ψ 6 ( ξ , η ) = E 5 , 3 ( ξ ) N 2 , 3 ( η ) , ψ 7 ( ξ , η ) = E 5 , 3 ( ξ ) N 3 , 3 ( η ) , ψ 8 ( ξ , η ) = E 5 , 3 ( ξ ) N 4 , 3 ( η ) + N 7 , 3 ( ξ ) E 5 , 3 ( η ) E 5 , 3 ( ξ ) E 5 , 3 ( η ) , ψ 9 ( ξ , η ) = N 6 , 3 ( ξ ) E 5 , 3 ( η ) , ψ 10 ( ξ , η ) = N 5 , 3 ( ξ ) E 5 , 3 ( η ) , ψ 11 ( ξ , η ) = N 4 , 3 ( ξ ) E 5 , 3 ( η ) , ψ 12 ( ξ , η ) = N 3 , 3 ( ξ ) E 5 , 3 ( η ) , ψ 13 ( ξ , η ) = N 2 , 3 ( ξ ) E 5 , 3 ( η ) , ψ 14 ( ξ , η ) = N 1 , 3 ( ξ ) E 5 , 3 ( η ) + E 1 , 3 ( ξ ) N 6 , 3 ( η ) E 1 , 3 ( ξ ) E 5 , 3 ( η ) , ψ 15 ( ξ , η ) = E 1 , 3 ( ξ ) N 5 , 3 ( η ) , ψ 16 ( ξ , η ) = E 1 , 3 ( ξ ) N 4 , 3 ( η ) , ψ 17 ( ξ , η ) = E 1 , 3 ( ξ ) N 3 , 3 ( η ) , ψ 18 ( ξ , η ) = E 1 , 3 ( ξ ) N 2 , 3 ( η ) , ψ 19 ( ξ , η ) = E 2 , 3 ( ξ ) E 2 , 3 ( η ) , ψ 20 ( ξ , η ) = E 3 , 3 ( ξ ) E 2 , 3 ( η ) , ψ 21 ( ξ , η ) = E 4 , 3 ( ξ ) E 2 , 3 ( η ) , ψ 22 ( ξ , η ) = E 2 , 3 ( ξ ) E 3 , 3 ( η ) , ψ 23 ( ξ , η ) = E 3 , 3 ( ξ ) E 3 , 3 ( η ) , ψ 24 ( ξ , η ) = E 4 , 3 ( ξ ) E 3 , 3 ( η ) , ψ 25 ( ξ , η ) = E 2 , 3 ( ξ ) E 4 , 3 ( η ) , ψ 26 ( ξ , η ) = E 3 , 3 ( ξ ) E 4 , 3 ( η ) , ψ 27 ( ξ , η ) = E 4 , 3 ( ξ ) E 4 , 3 ( η ) .
The graph of the 27 basis functions ψ j ( ξ , η ) , which are involved in Equation (26) and described by Equation (27), is shown in Figure 10. It has also been verified that the functional set { ψ j ( ξ , η ) } satisfies the partition of unity property, i.e.,
i = 1 27 ψ i ( ξ , η ) = 1 .
It is noted that the basis functions can be categorized into three groups as follows:
  • Internal nodes: Defined by a simple tensor product of blending functions.
  • Intermediate boundary nodes: Constructed as local tensor products of trial functions along the edge and blending functions in the perpendicular direction.
  • Corner nodes: Formulated using a Boolean sum of three terms. Two terms correspond to projectors perpendicular to the edges connected to the corner node, while the third term is a tensor product of the associated blending functions, serving as a correction.
Although the symbol E in Equation (27) is identical to N, it was used for the sake of readability, allowing one to distinguish between blending functions (E) and trial functions  (N).
Figure 10. A 27-DOF B-spline transfinite element.
Figure 10. A 27-DOF B-spline transfinite element.
Axioms 15 00028 g010

6. Software Issues

All computations were performed within the standard MATLAB® environment (version R2024b), which includes the Spline Toolbox. When applicable, the evaluation of B-splines, N i , 3 ( ξ , η ) , and their derivatives was carried out using the built-in function spcol, originally developed in Fortran77 by Carl de Boor and later ported to MATLAB [22].
In addition to built-in tools, a suite of self-contained in-house codes was developed to support the workflow, comprising: (i) pre-processing modules for mesh generation and data preparation, (ii) analysis routines for solving the governing equations, and  (iii) post-processing utilities for visualization and error assessment.
Given that the primary objective was proof-of-concept—specifically, to evaluate the accuracy of transfinite elements under various unstructured configurations—the computational strategy was tailored accordingly.

6.1. Lagrange and Bernstein Polynomials

A MATLAB® function named lagrange, which computes univariate Lagrange polynomials (both uniform and non-uniform) along with their first derivatives, is available in [20] (p. 26). Additionally, a tensor-product implementation of uniform Lagrange polynomials, named shape_full_lagrange, is provided in [20] (p. 27). The output of this function includes the bivariate shape functions and their partial derivatives (stored in the array shp), as well as the determinant of the Jacobian matrix (variable xsj). With minor modifications, this function can be extended to handle non-uniform polynomials.
An auxiliary in-house function, Bernstein(tau, p), for computing Bernstein–Bézier polynomials is listed in Appendix B. Gaussian integration was performed using the subroutine lgwt (see, [23]).
For each pair of parameters ( ξ , η ) , a subroutine shapeX was invoked. This subroutine utilizes closed-form expressions from the main text or their extensions. Its general form is as follows:
  • [shp, xsj] = shapeX(xi, eta, XL, NEL, )
where
-
shp contains the basis functions and their partial derivatives:
shp(1,i) = N / x ,
shp(2,i) = N / y ,
shp(3,i) = N, for  i = 1 , , NEL .
-
xsj is the determinant of the Jacobian matrix.
-
xi, eta are the parametric coordinates ( ξ , η ) .
-
XL contains the Cartesian coordinates of the element nodes.
-
NEL is the number of nodes in the element.
For the simplest case—a 12-node transfinite element described by Equation (19)—the complete subroutine is provided in Appendix C.
This subroutine structure aligns with standard finite element implementation practices, as discussed in Ref. [3] (p. 754). The full computer code is included in Appendix D.

6.2. B-Spline Interpolation

The MATLAB® function spcol, part of the Spline Toolbox, generates a collocation matrix for B-splines by evaluating spline basis functions and their derivatives at specified sites.
In the context of B-spline interpolation, the function shapeX is enhanced to accept additional input arguments: the polynomial degrees px, py, and the knot vectors knotx, knoty. This extended formulation enables direct comparison of different blending and trial functions within a unified in-house finite element framework, without requiring special treatment for their local support characteristics.
Numerical integration was performed over cells defined by adjacent breakpoints—i.e., cubic B-spline elements in the sense of isogeometric analysis (IgA)—using a 4 × 4 or 6 × 6 Gaussian quadrature scheme for rectangular or curvilinear elements, respectively. Notably, both Lagrange and Bézier elements do not require domain subdivision and can be integrated using a global quadrature over the entire patch.
The determination of integration cells (elements) can be efficiently performed by applying the MATLAB function unique to the knot vectors. Although optimizing the code for computational efficiency using a connectivity vector IEN is straightforward, this enhancement has been deferred to future work.

7. Numerical Solution of Boundary-Value Problems

To illustrate the proposed method, four representative examples are presented below. The first involves a rectangular domain, while the second considers a semicircular ring (i.e., a half-annulus), both addressing the solution of the Laplace equation.
For these two cases, the  L 2 error norm (expressed as a percentage) is computed over the entire domain Ω using the following formula:
L 2 = Ω U calculated U exact 2 d Ω Ω U exact 2 d Ω × 100 ( % ) .
The third example concerns an eigenvalue problem, for which details on the error are provided in the dedicated Section 7.3. Finally, the fourth example is a patch test in plane elasticity (Section 7.4).

7.1. Example 1

Example 1.
A square plate A B C D is subjected to steady-state heat conduction, with boundary conditions illustrated in Figure 11. The exact solution is given by the following:
U ( x , y ) = U m sinh π y 2 a sinh π b 2 a cos π x 2 a .
This problem was solved using the following five transfinite element types:
  • Classical B-spline transfinite element (21-27-33-113 nodes; see Figure 4).
  • 12-node element (see Figure 6a).
  • 18-node element (see Figure 6b).
  • 25-node element (see Figure 6c).
  • 27-node element (see Figure 9).
For the sake of comparison, in addition to B-spline interpolation—which serves as the reference in the present paper—Lagrange and Bernstein polynomials have also been employed in selected cases.
The numerical results are summarized below:

7.1.1. Classical Transfinite Elements (21-27-33-113 Nodes)

These elements belong to the first class studied in the present paper. The overall results of the three models mentioned in Section 3 (each with 21, 27, 33, and 113 DOFs, shown in Figure 4) are presented in Table 1, which clearly illustrates the convergence trend.
More precisely, for the particular case of the 113-degree-of-freedom element shown in Figure 4d, we have the following:
  • The implementation of Model-1 (Section 3.1), based entirely on Lagrange polynomials for both blending and trial functions (of degree p ξ = 16 , p η = 12 ), yields an excellent result: L 2 = 1.9140 × 10 5 % , using a 17 × 13 Gaussian quadrature scheme. The same result was obtained using Bernstein polynomials.
  • For Model-2 (Section 3.2), using 16 × 12 integration cells (also referred to as natural B-spline elements), and applying a 4 × 4 Gaussian quadrature per cell, the error was found to be L 2 = 0.0324 % .
  • Finally, Model-3 (Section 3.3) requires 14 × 10 integration cells (also referred to as Cox–de Boor spline elements), with  4 × 4 Gauss points per cell, and yields an error ( L 2 = 6.2379 × 10 5 % ) of the same order of magnitude when using either Lagrange or Bernstein polynomials.

7.1.2. Unidirectional 12-18-25-32-Node Elements

These elements belong to the second class studied in the present paper (Figure 6). The results for all three element types are presented in Table 2. As the number of nodes increases (from 12 to 25), a monotonic convergence is observed across all types of polynomial and B-spline approximations.
The 32-node element (shown in Figure 6d) is derived from the 25-node element by subdividing the upper strip into two equal parts, thereby producing non-uniform blending functions. When Lagrange or Bernstein polynomials are employed, the six horizontal station positions are uniquely determined at η = 0 , 1 4 , 2 4 , 3 4 , 7 8 , 1 . In contrast, the use of B-splines as blending functions is not unique, since six control points can be generated from multiple combinations of breakpoints.
Nevertheless, despite the non-uniform placement of horizontal stations near the top (nodes 19 to 25), adopting the uniform knot vector H = [ 0 , 0 , 0 , 0 , 1 3 , 2 3 , 1 , 1 , 1 , 1 ] yields an error of L 2 = 0.0173 % (last column in Table 2), indicating convergence for the B-spline formulation as well.
Moreover, when the station at η = 7 8 is defined with nodes 19 to 25 placed non-uniformly—e.g., following an arithmetic progression measured from the left at ξ = { 0 , 1 12 , 1 5 , 7 20 , 8 15 , 3 4 , 1 } —the Lagrange and Bernstein formulations were affected only in the seventh and sixth decimal places, respectively. In contrast, using the knot vector Ξ = [ 0 , 0 , 0 , 0 , 1 10 , 3 10 , 6 10 , 1 , 1 , 1 , 1 ] , the B-spline formulation showed a change in the third decimal place, yielding L 2 = 0.0182 % instead of the previous L 2 = 0.0173 % .
Table 2. Errors ( L 2 in %) for the Unidirectional Elements shown in Figure 6.
Table 2. Errors ( L 2 in %) for the Unidirectional Elements shown in Figure 6.
Element TypeLagrangeBernsteinDe Boor B-Spline
12-node2.66712.66542.6704
18-node0.16380.15560.1567
25-node0.03850.01920.0273
32-node a0.03270.00390.0173
32-node b0.03270.00390.0182
a Nodes 19–25 uniformly distributed; B-spline knot vector: Ξ = [ 0 , 0 , 0 , 0 , 1 4 , 2 4 , 3 4 , 1 , 1 , 1 , 1 ] . b Nodes 19–25 non-uniformly distributed; B-spline knot vector: Ξ = [ 0 , 0 , 0 , 0 , 1 10 , 3 10 , 6 10 , 1 , 1 , 1 , 1 ] .

7.1.3. Arbitrary-Noded 27-Node Transfinite Element

This element belongs to the third class examined in the present study (Section 5.1, Figure 9). The  L 2 error norms of the numerical solution obtained from the three models applied to the 27-node element are presented in Table 3.
To demonstrate the effect of mesh non-uniformity, boundary nodes 15–18 and 9–13 were clustered toward the concealed corner D (node 14) according to an arithmetic progression. The resulting difference in the error norm L 2 (%) was observed only beyond the fifth decimal place.
Similarly, regardless of the location of the boundary nodes, the tensor product of the internal nodes may be either uniform or non-uniform, for example, arranged as shifted Legendre roots or as Gauß–Lobatto–Legendre (GLL) points, as discussed later in Section 7.2.1.

7.1.4. Coons-Patch Elements

This represents a type of element in addition to the three classes mentioned above. Although Coons-patch macroelements have been extensively discussed in numerous papers reviewed in the monograph [9], this model is included here for direct comparison with the models presented in Example 1. For the boundary-node configurations shown in Figure 6a–d (with 10, 13, 16, and 18 nodes, respectively), and further detailed in Figure 12, the corresponding numerical results are reported in the left half of Table 4. The results indicate that, with standard linear blending functions, E 1 ( ξ ) = 1 ξ , E 2 ( ξ ) = ξ (first set), the numerical solution converges to an erroneous value of approximately L 2 = 2.3 % , which is substantially larger than the competing values reported in Table 2.
For completeness, in addition to the abovementioned standard linear blending functions, we also examined the cosine-like blending functions, E 1 ( ξ ) = cos π ξ 2 , E 2 ( ξ ) = 1 cos π ξ 2 (second set). In contrast to the above first set, the second set—although heuristic in nature and inspired by the boundary conditions imposed on the top edge—leads rapidly to the exact solution (shown in the right half of Table 4).
Figure 12. Coons elements: (a) 10-node; (b) 13-node; (c) 16-node; (d) 18-node.
Figure 12. Coons elements: (a) 10-node; (b) 13-node; (c) 16-node; (d) 18-node.
Axioms 15 00028 g012
Table 4. Errors ( L 2 in %) of Coons-patch elements using uniform Lagrange polynomials as trial functions, and two alternative sets of blending functions.
Table 4. Errors ( L 2 in %) of Coons-patch elements using uniform Lagrange polynomials as trial functions, and two alternative sets of blending functions.
First Set: E 1 ( ξ ) = 1 ξ , E 2 ( ξ ) = ξ Second Set: E 1 ( ξ ) = cos π ξ 2 , E 2 ( ξ ) = 1 cos π ξ 2
10-Node13-Node16-Node18-Node10-Node13-Node16-Node18-Node
3.4886 2.2919 2.3012 2.3013 2.6577 0.1547 0.0178 7.5040 × 10 4
Overall, the results of Example 1 suggest the following:
  • In a fully two-dimensional problem without any symmetry, the conventional Coons interpolation—implemented with linear blending functions—is insufficient for accurately representing the exact solution. Therefore, the inclusion of internal nodes is generally necessary to enhance accuracy.
  • These internal nodes may be arranged along horizontal and/or vertical stations and can follow a transfinite interpolation formula that is applied globally across the entire patch.
  • One practical approach is to place internal nodes along horizontal layers (stations), i.e., parallel to the ξ -axis. The station locations may correspond to either uniform or non-uniform η -values, and the associated blending functions will be constructed accordingly—based on uniform or non-uniform nodal points (breakpoints).
  • Regardless of whether the blending functions are uniform or non-uniform, the trial functions along each station may also be chosen to be uniform or non-uniform.
  • Once the closed-form expressions for the global bivariate shape functions have been derived using Lagrange polynomials, they can be readily extended to Bernstein polynomials and B-splines. While the local support property of B-splines affects the resulting bivariate basis functions, splines should be viewed as a specific choice of trial functions for univariate interpolation along each station. The same flexibility applies to the blending functions, which need not be restricted to cardinal types; in addition to Lagrange polynomials, Bernstein polynomials and B-splines are also valid options.

7.2. Example 2

Example 2.
Steady-State Conduction in a Cylindrical Wall (Half-Annulus): This example analyzes a long, hollow cylinder subjected to steady-state heat conduction, with a uniform inner surface temperature of T i = 1000 °C and a uniform outer surface temperature of T o = 0 °C. The cylinder, defined by inner and outer radii R i = 1 and R o = 32 , is assumed to be insulated to prevent axial heat flow (see Figure 13).
According to [24], the steady-state temperature distribution in the radial direction is given by the following:
T ( r ) = T i + ( T o T i ) log R o R i log r R i
The radii are chosen to produce a sufficiently steep temperature gradient, making this example suitable for a convergence test. This test case was previously presented using single Coons macroelements based on cardinal natural cubic B-splines [8], formulated via truncated power series (i.e., not the procedure shown in Appendix A, but mathematically equivalent).
In the present study, we introduce several additional models and clarify all relevant implementation details. Unlike Example 1, where the Coons-patch element failed to converge accurately, here the Coons formulation does converge to the exact solution. Therefore, we adopt a different strategy: we begin with the Coons model in several variations (Section 7.2.1) and progressively introduce internal nodes (Section 7.2.2).

7.2.1. Coons-Patch Element

In this subsection, we investigate the convergence behavior of several models constructed using a single Coons-patch element, assuming the standard linear blending functions: E 1 ( s ) = 1 s , E 2 ( s ) = s , where s denotes either of the parametric coordinates ξ or  η .
As reviewed in Ref. [9] (Chapter 3), previous studies have employed various cardinal trial functions, including:
(i)
piecewise-linear functions,
(ii)
cardinal natural cubic B-splines,
(iii)
Lagrange polynomials.
In the present work, we extend this framework by also implementing non-uniform Lagrange polynomials and Cox–de Boor B-splines [25,26,27].
Although each edge of the Coons patch may consist of an arbitrary number of nodal or control points (each associated with degrees of freedom), for brevity of the presentation, we assume an equal number of points on opposite edges, as follows:
The number of spans along the parallel edges ( A B , C D ) is denoted n ξ .
The number of spans along the edges ( B C , A D ) is denoted n η .
For global Lagrange and Bernstein polynomials, the polynomial degrees in each parametric direction are p = n ξ and q = n η , respectively. Interpolation using piecewise-linear or Lagrange polynomials requires n ξ + 1 and n η + 1 nodal points per side in the ξ and η directions, respectively. These nodal points correspond to the breakpoints used in the Cox–de Boor formulation. For cubic Cox–de Boor B-splines, the number of control points per edge exceeds the number of breakpoints by two (e.g., n c , ξ = n ξ + 3 ) [22].
The parameterization of the patch is illustrated in Figure 13:
-
Point A is the origin of the axis
-
Arc A B defines the ξ -axis
-
Segment A D defines the η -axis
-
Edges A B and C D are subjected to Dirichlet boundary conditions ( T i , T o , respectively)
-
Edges B C and A D are subjected to Neumann boundary conditions ( T / n = 0 ), due to symmetry.
In the numerical setup, each circular arc is uniformly subdivided into six breakpoint spans ( n ξ = 6 ). The number of uniform breakpoint spans along the radial direction (e.g., edge A D ) is varied incrementally: n η = 1 , 2 , 3 ,
Model C1: Piecewise-Linear. The easiest case for implementing a Coons-patch macroelement is the adoption of piecewise-linear trial functions. This implies minimal cost in the estimation of these functions and also ensures local support. The vector of total degrees of freedom includes 2 ( n ξ + n η ) nodal values, T i , all located on the boundary of the patch, of which 2 ( n η 1 ) are unknown. Although this model is generally not equivalent to a set of n ξ × n η bilinear finite elements, the quality of the numerical solution is sometimes similar. In the particular case of Example 2, in which the solution does not depend on the polar angle θ (axisymmetric problem with no angular dependence), the numerical solution of the Coons-patch element with piecewise-linear trial functions coincides with that of the FEM solution using bilinear 4-node elements—provided the same mesh density is used. The result is shown in Figure 14 (blue line).
Model C2: Cardinal Natural Cubic B-Spline. This model briefly reproduces part of Ref. [8], in which cardinal natural cubic B-splines were previously used. Before the imposition of boundary conditions (BCs), the number of nodes is n tot = 2 ( n ξ + n η ) . Since the 2 ( n ξ + 1 ) nodal points on edges A B and D C are restricted under Dirichlet-type BCs, the number of free degrees of freedom becomes n free _ dofs = 2 ( n η 1 ) . The vector of unknowns includes only nodal values, T i , which was the primary reason for adopting this model in the mid-1980s. Numerical integration is performed within the n ξ n η cells created by nodal breakpoints in both directions. Given the piecewise polynomial degrees p = q = 3 , the number of Gauss points per integration cell is 6 × 6 for curvilinear patches (and 4 × 4 for rectangular ones). The results, shown in Figure 14 (red line), are identical whether the old-fashioned methodology of Ref. [8] (based on truncated powers) or the procedure of Appendix A is used—namely, the Curry–Schoenberg formulation [25], computed via the Cox–de Boor algorithm [26,27], with vanishing second derivatives at the ends of each edge.
Model C3: Truncated Power Series. This model extends the previous Model C2 on the same single Coons-patch element, but now additionally incorporates rotational degrees of freedom (DOFs) associated with the second derivatives at the ends of each edge, as illustrated, for example, in Figure A1c. In this case, although an edge such as A B is discretized into n ξ breakpoint spans (yielding n ξ + 1 breakpoints), the number of associated control points along that edge becomes n ξ + 3 . Consequently, after imposing Dirichlet boundary conditions, the final number of free DOFs becomes n free _ dofs = 2 ( n η + 1 ) . In this quantity, eight additional ’rotational’ DOFs are considered, though four of them—those along edges A B and D C under Dirichlet BCs—are eliminated. The vector of unknowns includes both nodal values, T i , and the four curvatures T ( η ) at the ends of edges A D and B C . The layout and number of integration cells remain the same as in Model C2, defined by the breakpoints. The corresponding results are presented in Figure 14 (green line).
Figure 14. Convergence quality of numerical solution for the circular ring.
Figure 14. Convergence quality of numerical solution for the circular ring.
Axioms 15 00028 g014
Model C4: Cox–de Boor B-spline. This model continues to use the same Coons-patch element. Let ξ 1 = 0 , ξ 2 , , ξ n ξ + 1 = 1 be the parameters associated with the breakpoints along edge A B . For a piecewise-cubic polynomial, we construct the well-known knot vector Ξ = [ 0 , 0 , 0 , 0 , ξ 1 , , ξ n ξ , 1 , 1 , 1 , 1 ] , which defines n ξ + 3 = n + 2 basis functions: N 1 , 3 , , N n + 2 , 3 , where n = n ξ + 1 is the number of breaks along the edge, following the notation of Appendix A. The number of DOFs, both before and after applying boundary conditions, is the same as in Model C3, but here they consist of generalized coefficients α i rather than nodal values. The integration cells are also the same, now with the additional property of local support. Despite this difference, the results are identical. In other words, although Model C3 lacks compact support (and deals with DOFs: T i and T e n d ) while Model C4 possesses it (and deals with DOFs: a i ), the two functional sets are equivalent, as confirmed by spline theory and also sustained by numerous test cases. It should be noted that most literature discussing Coons patches in conjunction with B-splines and NURBS refers to the present Model C4, as it is based on the modern spline formulation introduced by Curry and Schoenberg (1966) [25] and implemented via the recursive Cox–de Boor algorithm (1972) [26,27]. Note that, since the linear blending functions used in Coons interpolation are identical across all formulations (Lagrange, Bernstein, and B-splines), the B-spline version of the Coons element follows directly.
Model C5-I: Uniform Lagrange polynomials. This model continues with Coons elements, using uniform global Lagrange polynomials as trial functions along each entire edge. Each bivariate function N i ( ξ , η ) is continuous, influences the entire quadrilateral patch, and is associated with the nodal value T i . Let p and q denote the polynomial degrees in the ξ - and η -directions, respectively. It can be readily verified that the integrand of each entry in the stiffness matrix, k i j = Ω N i N j det   J d Ω , is of degree 4 p 1 per direction, specifically, 2 p from N i N j and 2 p 1 from det   J . Consequently, for a rectangular patch A B C D , the stiffness matrix and error norm are estimated using a global scheme of ( p + 1 ) × ( q + 1 ) Gauss points, whereas curvilinear patches such as that in Figure 13 require 2 p × 2 q Gauss points spanning the entire patch. Due to this, the terms “patch” and “Coons element” are used interchangeably. Closely related terminology such as “macroelement” or “Coons-patch element” has also appeared in previous literature [9]. From the convergence diagram in Figure 14 (orange color), it becomes evident that increasing the polynomial degree p in the η -direction steadily improves numerical accuracy up to p cr = 21 , beyond which the solution becomes unstable.
Model C5-II: Bernstein polynomials. A variation of Model C5-I is to retain the same linear blending functions while replacing the uniform Lagrange trial functions of degree ( p , q ) with their corresponding Bernstein polynomials. For the numerical examples considered, both formulations produce identical results, and a theoretical justification is provided in Ref. [18]. Briefly, along each edge of the patch A B C D , the univariate Bernstein polynomials are linear combinations of the respective Lagrange polynomials; therefore, the same relation holds for the bivariate basis functions obtained by tensor products. As a consequence, the stiffness matrix of the Bernstein-based system is a quadratic form of the stiffness matrix obtained with Lagrange polynomials. The only practical difference is that Lagrange polynomials yield cardinal basis functions, whereas Bernstein polynomials lead to non-cardinal—yet equally complete—trial functions.
Model C6: Non-uniform Lagrange polynomials. The sixth model studies Coons elements, using non-uniform global Lagrange polynomials as trial functions along each entire edge. Following the practice of spectral methods by Karniadakis and Sherwin [28], one of the best choices is the set of Gauß–Lobatto–Legendre (GLL) points, which are defined as follows:
ξ i GLL = 1 for i = 1 ξ ^ i for i = 2 , 3 , , p + 1 for i = p + 1 ,
where ξ ^ i denotes the roots of the Lobatto polynomial L o p 1 ( ξ ) of order p 1 , which is defined as the first derivative of the Legendre polynomial L p ( ξ ) of order p:
L o p 1 ( ξ ) = d L p ( ξ ) d ξ .
Practically, for any given degree p, the  ( p + 1 ) GLL points ξ i GLL [ 1 , 1 ] , defined in Equation (32), can be numerically determined by setting i = p − 1 in the following MATLAB command:
      roots = vpasolve((legendreP(i,x) − legendreP(i+2,x)) == 0);   
Based on the above nodal points (images of the GLL points), we can easily construct non-uniform Lagrange polynomials and use them as trial functions for each edge of the quadrilateral patch A B C D .
In our case, we kept the uniform subdivision of the circular arcs at n ξ = 6 , and adopted GLL-based nodal points along the edges B C and A D . The polynomial degree varied from p min = 1 to p max = 99 . It was found that, up to degree p cr = 21 , the results are practically the same in both formulations, i.e., the uniform and non-uniform (GLL-based). By further increasing the polynomial degree up to p max = 99 , the non-uniform formulation yielded a monotonically decreasing error norm, converging to the value L 2 = 0.0102053 % (Figure 13). This remaining error is attributed to the discretization of the circular arcs, which are based on seven nodal points per arc (i.e., six uniform nodal spans: n ξ = 6 ).
Remark 1.
Let us divide the interval ξ [ 0 , 1 ] into n segments (i.e., n + 1 nodal points) in the ξ-direction. Regarding global interpolation, one possibility is to introduce ( n + 1 ) Lagrange polynomials L i ( ξ ) of degree p = n , which leads to integrands in the stiffness and mass matrix entries   
k i j = L i ( ξ ) L j ( ξ ) d ξ , m i j = L i ( ξ ) L j ( ξ ) d ξ
of degree p integrand = 2 n ; therefore, the required number of Gauss points for the whole interval is n g Lagrange = n + 1 .
On the other hand, cubic B-spline interpolation over the aforementioned n elements leads to matrix element integrands of degree six, and thus requires four Gauss points per element; this results in a total of n g B - spline = 4 n Gauss points.
Of course, the stiffness and mass matrices in the Lagrange formulation will be of size ( n + 1 ) × ( n + 1 ) , whereas in the B-spline formulation they will be of size ( n + 3 ) × ( n + 3 ) (because n + 1 breakpoints give n + 3 control points). In any case, the B-spline formulation requires more Gauss points than the Lagrange formulation.
Model C7: Finite Element Method (FEM). Based on the pair ( n ξ , n η ) , the FEM model using ( n ξ n η ) bilinear 4-node elements consists of ( n ξ + 1 ) × ( n η + 1 ) nodal points. In the general case in which the solution does not follow the Coons interpolation (like Example-1), the model of piecewise-linear Coons-patch element—with 2 ( n ξ + n η ) nodes—differs from the FEM solution. In other cases, such as in Example 2, the piecewise-linear-based Coons element is equivalent to the FEM model, and thus both models have the same numerical error L 2 .
Overall, the results shown in Figure 14 suggest the following:
  • All models converge to different values. This fact is mainly due to the inability to accurately represent the circular arc (for n ξ = 6 ). Below, we start from the less accurate model and end with the most accurate model.
  • The piecewise-linear Coons interpolation model coincides with the FEM solution. This is because Example 2 is an axisymmetric problem with no angular dependence.
  • The cardinal natural cubic B-spline model is characterized by a smaller error than the above piecewise-linear model and FEM.
  • The uniform Lagrange polynomials model leads to a smaller error, but after the value n η = 21 , they diverge.
  • The Cox–de Boor cubic B-splines model closely follows the accuracy of uniform Lagrange polynomials up to n η = 5 , then becomes less accurate until n η 25 , and eventually converges to the value L 2 = 0.0160 % .
  • The non-uniform Lagrange polynomials model based on GLL points rapidly converges to the accurate solution. A small error ( L 2 = 0.0102 % ) remains, due to the incapability of accurately representing the circular arc using n ξ = 6 spans.
In all the above models, it is anticipated that the L 2 error norm will decrease when the circular arcs (inner and outer) are represented using a larger number of nodal points or by adopting standard NURBS-based IgA formulations (e.g., two rational Bézier arcs of 90° with degree p = 2 , each defined by the weights w 1 = 1 , w 2 = 2 2 , and  w 3 = 1  [11,29]). In this case, the circular geometry of 180° is described by five control points with the global knot vector Ξ circ = [ 0 , 0 , 0 , 1 2 , 1 2 , 1 , 1 , 1 ] and the corresponding weight vector W circ = [ 1 , 2 2 , 1 , 2 2 , 1 ] .

7.2.2. Transfinite Elements

A. Classical Transfinite Elements
Each of the four classical transfinite elements shown in Figure 4 is mapped onto the entire half-annulus depicted in Figure 13. Given the parametric coordinates ξ and η of the nodal points, the corresponding polar coordinates r and θ in the physical domain are obtained as follows:  
r = R i + η R o R i ,
θ = ( 1 ξ ) π .
The numerical results are reported in Table 5, where convergence behavior can be observed. As in Example 1, the same result was obtained when using Bernstein polynomials.
Moreover, it is instructive to compare the above results with those obtained for the previously mentioned Model C5 (uniform Lagrange or Bernstein polynomials for a single Coons element) under similar conditions, i.e., with n η = 4 , 5 , 6 , 12 subdivisions along the radial direction.
From Figure 14 (orange curve), the corresponding errors are 8.5851%, 4.3559%, 2.3578%, and 0.1127%, respectively.
It is evident that, in Example 2, the aforementioned accuracy of the Coons model is very close to that of the classical transfinite elements (Table 5), primarily due to the independence of the solution from the polar angle  θ .
To some extent, the small differences can be attributed to the different discretization of the semi-circular edges in the transfinite patch. It is likely that, if NURBS were employed, these differences would be further reduced.
The aforementioned similarity between classical transfinite elements and the Coons element is observed for all models discussed in Section 7.2.1. For instance, both the 113-node transfinite element (with 56 DOFs on the boundary) and its counterpart Coons element (model C4, based on Cox–de Boor cubic B-splines with a total of 56 DOFs) yield the same error norm, L 2 = 0.2777 % . This value is approximately 2.5 times larger than the error obtained when using Lagrange polynomials as trial functions (see L 2 = 0.1127 % in Table 5).

7.3. Example 3

Example 3.
Eigenvalues of acoustic cavity: This example deals with the natural frequencies of a rectangular acoustic cavity of size a × b = 2.5 × 1.1 , under partially Dirichlet ( p = 0 at y = 0 : bottom edge) and Neumann boundary conditions ( p / n = 0 ) elsewhere. The governing wave equation is
1 c 2 2 p t 2 2 p = 0 ,
where p denotes the acoustic pressure. According to Courant and Hilbert [30], the exact eigenvectors are given by the following:
p m n = cos m π x a sin ( 2 n + 1 ) π y 2 b , m , n = 0 , 1 , , ,
whence the exact eigenvalues are as follows:
λ m n exact = ω m n 2 = π 2 c 2 m 2 a 2 + ( 2 n + 1 ) 2 ( 2 b ) 2 , m , n = 0 , 1 , , .
The application of the Galerkin procedure to Equation (36) for the eigenvalue problem leads to the following matrix formulation:   
[ M ] { p ¨ } + [ K ] { p } = 0 ,
in which the entries of the mass matrix ( [ M ] ) and stiffness matrix ( [ K ] ) are given by the following:
m i j = 1 c 2 Ω N i N j d Ω , k i j = Ω N i · N j d Ω
The eigenvalues λ m n are obtained by solving the characteristic equation:
det K f λ M f = 0
where K f and M f represent the stiffness and mass matrices, respectively, after applying Dirichlet boundary conditions.
Next, three classes of transfinite elements are studied. For all modes, the error (in percent) was calculated by the following formula:
E m n = λ m n calculated λ m n exact λ m n exact × 100 ( % )

7.3.1. Classical Transfinite Elements (21-27-33-113 Nodes)

For the four classical transfinite elements in Figure 4 in conjunction with Cox–de Boor B-splines (for both the blending and trial functions), Table 6 shows the accuracy of the computed eigenvalues. All modal values converge to the reference solution. Note that the 113-node element values are scaled by × 10 3 .

7.3.2. Unidirectional (Multi-Layer) 12-18-25-32-Node Elements

Regarding the blending functions, for the 12-node element (with three horizontal layers), we employed B-splines of degree p = 2 (quadratic Bernstein), whereas in all other cases we used standard B-splines of degree p = 3 .
All trial functions along the horizontal layers were taken to be Cox–de Boor B-splines. More precisely, the bottom edge 1–2–3 was represented using degree- p = 2 B-splines (although all associated DOFs were eliminated due to Dirichlet boundary conditions), while all remaining layers were interpolated using degree- p = 3 B-splines.
For the first seven modes, the computed eigenvalues are listed in Table 7.

7.3.3. Coons-Patch Elements

The entire acoustic cavity is now modelled using a single B-spline Coons-patch element, with 10, 13, 16, and 18 boundary nodes, as shown in Figure 12a–d. The blending functions were linear, i.e.,  E 0 ( ξ ) = 1 ξ and E 1 ( ξ ) = ξ . In all models considered, the bottom edge A B consists of only three nodes (1–2–3) and was, therefore, approximated with quadratic trial functions using the knot vector ( p A B = 2 , Ξ = [ 0 , 0 , 0 , 1 , 1 , 1 ] ) .
Except for the vertical edges in the coarsest model (12 nodes, Figure 12a), which also contain only three nodes and thus required quadratic approximation, all remaining boundary curves were interpolated using cubic B-splines. The results for the first seven modes are listed in Table 8. One may observe that, aside from the first and fifth eigenvalues—which converge rapidly—all others tend to values higher than the exact solution.

7.3.4. Finite Element Solution

For the sake of completeness, in addition to the preceding results of the proposed models, we also provide in Table 9 the numerical solution obtained using conventional bilinear rectangular finite elements (FEM solution). The computational mesh of the FEM model is uniform and matches the maximum number of nodes (per direction) used in the previous models. For reference, we also include the exact mode shapes ( m , n ) together with their corresponding eigenvalues.
Overall, the convergence performance of all models for the three lowest modes is illustrated in Figure 15. One may observe that
  • The class of classical transfinite interpolation (TFI) elements exhibits the highest convergence rate.
  • The Coons element (labelled COONS) is sufficiently accurate for the first mode, but for higher modes, it experiences difficulty converging toward the exact solution.
  • The unidirectional (multi-layer) elements (labelled LAYER) provide adequate accuracy, but their convergence rate is lower than that of the TFI formulation.
  • The FEM solution, based on a bilinear formulation, displays the lowest convergence rate.
Figure 15. Convergence quality of numerical solutions for the rectangular acoustic cavity.
Figure 15. Convergence quality of numerical solutions for the rectangular acoustic cavity.
Axioms 15 00028 g015

7.3.5. Remark on Spectral Aspects

The numerical study in this example is focused on the accurate approximation of the physically relevant acoustic eigenvalues, i.e., the lowest part of the discrete spectrum, which governs the dynamic response of the cavity. No asymptotic spectral analysis of the global matrix structure is intended. A rigorous and general framework for the asymptotic spectral analysis of finite element and isogeometric B-spline discretizations has been developed by Garoni et al. [31], based on symbol-based techniques. That approach explains the emergence of multiple spectral branches depending on the polynomial degree and continuity of the discretization, including one acoustic branch and additional optical branches that do not approximate the physical spectrum. The present results are consistent with this framework, in the sense that the lowest-frequency (acoustic) modes exhibit stable convergence, while higher-frequency spectral components—outside the scope of the present study—are not considered.

7.4. Example 4

Example 4.
Patch test in plane elasticity: Among several patch tests [32], we present here the case of a unit square under plane stress, with Dirichlet boundary conditions u ( ξ , η ) = 0 , v ( ξ , η ) = η , where 0 ξ , η 1 .
For the 12-node element (Figure 6a), the implementation of Lagrange polynomials (Equation (19)) or Bernstein polynomials (Equation (20)) yields exactly the theoretical values at the internal nodes 5 and 6 (i.e., horizontal displacements u = 0 , and vertical displacements v = 0.5 ). Moreover, for the elastic modulus E = 1 , the stress throughout the element coincides exactly with the theoretical values, namely
σ x x = ν E 1 ν 2 = 0.3297 , σ y y = E 1 ν 2 = 1.0989 , τ x y = 0 .
Similarly, we tested the case where node 2 (Figure 6a) was fully supported, while nodes 1 and 3 were constrained to roll horizontally. The top edge 8–9–10–11–12 was uniformly loaded in tension, and the vertical edges were free-free. In this setting, both the Lagrange (Equation (19)) and Bernstein (Equation (20)) polynomials yielded the theoretical values, i.e.,  σ x x = 0 , σ y y = 1 , and  τ x y = 0 .
Regarding the implementation of B-splines on the 12-node element (Figure 6a), the same accurate result as above was obtained, despite its hybrid nature. One illustrative example is the following. The blending function along the vertical ( η ) direction was taken as a Bernstein polynomial of degree p y = 2 , since a cubic B-spline is not applicable. The trial functions were chosen as follows:
  • On the bottom layer (consisting of 3 nodes: 1–2–3), a non-cardinal Bernstein polynomial of degree p x = 2 was used.
  • On the middle layer (consisting of 4 nodes: 4–5–6–7), a Bernstein polynomial of degree p x = 3 was employed. Alternatively, one could adopt a quadratic B-spline ( p x = 2 ) with knot vector Ξ = [ 0 , 0 , 0 , 1 2 , 1 , 1 , 1 ] .
  • On the top layer (consisting of 5 nodes: 8–9–10–11–12), a cubic B-spline ( p x = 3 ) was used with knot vector Ξ = [ 0 , 0 , 0 , 0 , 1 2 , 1 , 1 , 1 , 1 ] .
Further results will be reported in a future paper dedicated to elasticity problems.

8. Extension to Collocation Method

Retaining the bivariate global shape (or basis) functions of the transfinite elements discussed in the previous sections, the Galerkin method can be readily replaced by the Collocation Method. This alternative has been explored in a series of studies since 2007 (see [9] (Chapter 11) for an overview, including IgA-based papers since 2010), with representative applications to potential and elasticity problems presented in [33] and [34], respectively.
In the context of transfinite elements using Lagrange polynomials for both blending and univariate trial functions, collocation points can be selected as either Gauss or Chebyshev points, defined globally over the entire patch. This formulation offers the flexibility to choose a number of collocation points equal to the number of unknowns. Notably, it has been demonstrated that the computed eigenvalues remain unchanged whether a uniform nodal mesh is used in conjunction with Gauss/Chebyshev collocation points, or a non-uniform mesh is constructed by placing nodes at the mapped roots of Legendre or Chebyshev polynomials and applying nodal collocation directly.
In contrast, B-spline-based collocation requires a standard elementwise distribution of collocation points within each B-spline element across the patch. In general, this results in a number of collocation points exceeding the number of unknowns, thereby necessitating a least-squares solution procedure. Alternatively, following the pioneering work of de Boor [22], Greville or Demko abscissae can be globally selected as collocation points across the entire patch.
An additional challenge inherent to the collocation method is the imposition of mixed boundary conditions, where segments of the boundary are governed by Dirichlet conditions while others are subject to Neumann conditions. This complicates the consistent enforcement of boundary constraints. The optimal handling of this issue—along with the assessment of the performance of alternative basis functions such as trigonometric or Hermite B-splines [35,36,37]—remains an open area for future investigation.

9. Discussion

This paper demonstrates that transfinite elements are not limited to Lagrange polynomials but can also be formulated using B-splines, which may serve as both blending and trial functions. In general, all three formulations—Lagrange polynomials, Bernstein polynomials, and B-splines—yield basis functions with identical closed-form expressions. Consequently, the term macroelement has been adopted to describe the unified framework represented by a collection of sixty papers documented in Ref. [9]. Within this framework, the entire patch can be treated as a single macroelement, regardless of the specific type of blending or trial functions employed. This paper supports the conjecture that the classical blending functions used in Coons–Gordon patches can be replaced by Bernstein polynomials or B-splines, thereby enabling the seamless transfer of established techniques into the isogeometric analysis (IgA) domain.
The use of B-splines is inherently characterized by their local support, meaning that within each integration cell—defined between adjacent breakpoints—only a limited number of basis functions are non-zero. However, in this paper, we did not focus on bandwidth optimization; rather, our primary objective was to establish a proof of concept demonstrating that B-splines are fully applicable within the framework of transfinite elements. This applicability was verified across three distinct classes, ranging from classical transfinite elements, such as those of Gordon and Hall [5], to more advanced unstructured constructs. For completeness, the Coons–patch macroelement was studied as well.
The outcome of the present study is the culmination of a long-term effort and accumulated experience that dates back to mid-1984. At that time, the author was co-supervising a PhD thesis—which was ultimately never defended—and subsequently a Master’s thesis in 1988, both conducted within the CAD/CAE group of the Mechanical Engineering Department at the National Technical University of Athens. Further historical context is provided in Ref. [9] (Chapter 14). The group’s first publication appeared in 1989 [8]; however, due to various circumstances, the second publication—part of the collection mentioned in the first paragraph of this section—was delayed until 1999 (see Ref. [9]).
Motivated by concerns related to the Runge phenomenon, the group initially developed a Coons macroelement based on cardinal natural cubic B-splines defined along each edge of the Coons patch (explained in Appendix A). Considerable time and deliberation were required before adopting Lagrange polynomials, which ultimately proved to offer excellent performance, even when constructed using uniformly spaced nodal points. Based on our experience, we propose that potential and elasticity problems can be effectively addressed using Gordon’s transfinite interpolation, with polynomial degrees of up to 8 and 10, respectively. Today, we also advocate for the use of spectral methods, which mitigate the excessive end-point oscillations often encountered in high-degree polynomial approximations (see Ref. [38] for further details, and also refer to Model C6 around Equation (32)).
The deeper motivation behind this research stems from our conviction that, since isogeometric analysis (IgA) operates over entire patches, it is fundamentally aligned with the general principles of transfinite interpolation. This perspective suggests that IgA is not an entirely distinct methodology, but rather a natural evolution or extension of transfinite concepts. Preliminary reflections on this connection were outlined in our earlier monograph (see Ref. [9] (pp. 216 and 555), among others), while a more recent review paper is due to Provatidis et al. [39].
An early attempt to adapt transfinite interpolation for the accurate representation of conic sections and quadrics was presented in Ref. [40], where weights were determined via nonlinear optimization. In that study, it was—almost intuitively—found that a direct substitution of Lagrange polynomials with their Bernstein counterparts produced nearly identical and highly accurate numerical results. This observation further supported the idea that transfinite formulations are inherently compatible with the foundational principles of isogeometric analysis (IgA).
Since then, significant progress has been made:
First, it was proven that the substitution of Lagrange polynomials with Bernstein polynomials of the same degree is fully compatible in both Coons elements and classical transfinite elements, such as the 113-node element shown in Figure 4d. Specifically, the existence of a transformation matrix between the two sets of basis functions was revealed [18].
Second, it was shown that elements with structured interior nodes but irregular boundary node distributions do not admit the aforementioned transformation matrix. Nevertheless, replacing the Lagrange polynomials with Bernstein polynomials of the same degree yields slightly improved results. This observation was explained by extending the formulation of the transfinite interpolation formula with respect to the choice of blending functions and trial functions [17].
The present paper completes the aforementioned efforts by demonstrating the use of B-spline interpolation both as blending functions and as trial (interpolating) functions, treating the entire patch as a single transfinite element. This approach is illustrated across three classes of elements: (i) classical transfinite elements, (ii) one-directional elements with nodes arranged in parallel layers, and (iii) elements with structured interiors but irregular boundaries.
We now refer to these three classes:
First class: The classical 21-, 27-, 33-, and 113-node transfinite elements were successfully treated using B-spline interpolation, together with integration cells automatically determined from the mesh density along the horizontal and vertical stations containing the nodal points.
Second class: The unidirectional transfinite element is also handled automatically by considering a single subdivision in the vertical direction, while in the horizontal direction—along which the layers of nodes are aligned—the union of knot spans is readily determined using the MATLAB function unique.
Third class: The transfinite element with a structured interior arranged in a tensor-product pattern but with arbitrarily distributed boundary nodes extends the previous approach by considering stations in both directions. The advantage of using the MATLAB function unique to identify knot spans for numerical integration of the stiffness matrix remains applicable.
In all computations reported here, when the patch is a rectangle of size L x × L y , the control points were chosen so that at the vertices of the parametric unit square, the physical coordinates satisfy x ( ξ , η ) = L x ξ and y ( ξ , η ) = L y η , which leads to a constant Jacobian everywhere. A similar technique—using the mapping between uniform test points on both the reference unit square and the true domain—was applied for the half-annulus of Example 2 (Section 7.2). Therefore, the implemented computer codes perform equally well for curvilinear patches as well.
The treatment of circular (or possibly elliptic) parts is better accomplished using NURBS with predefined control points and associated weights, rather than the inverse engineering approach applied here for estimating control points that accurately represent these curves only at distinct uniform positions. However, this is a straightforward task that may be carried out by the interested reader to observe firsthand the improvement resulting from this modification.
Although the present paper provides self-contained MATLAB codes, it is not difficult to incorporate the proposed formulations—Bernstein, B-spline, and the NURBS version—into popular academic software such as IGAFEM [41] and GeoPDEs [42].
The proposed procedure leads to the construction of basis functions that can be directly applied to the estimation of mass and stiffness matrices for the numerical solution of potential and elasticity problems in the continuum. Both static, dynamic, and coupled problems (e.g., thermoelasticity, fluid–structure interaction) can be solved by following standard FEM/IgA algorithms. A common feature of these problems is that only C 0 continuity is required between the proposed elements in an assembly. In contrast, for shells and plates requiring C 1 continuity, the formulation presented in this paper must be extended. A brief summary of past research, along with ongoing work, is presented in the following three paragraphs.
The original report by Coons [7] introduced two interpolation formulas for the function w ( ξ , η ) over a curvilinear patch. The first formula is based on prescribed values of w along the four boundaries of the patch; this case was thoroughly discussed in the present paper. The second formula involves prescribed values of w and its partial derivatives w / n on the four edges of the patch. Based on this second interpolation formula, Provatidis and Angelidis [43] constructed a rectangular Coons-patch macroelement (with nodes located only on the boundary) suitable for thin plate-bending analysis. Following Coons [7], the four blending functions per direction were chosen as cubic Hermite polynomials (two cardinal and two non-cardinal, as in beam bending), while the trial functions were Hermite polynomials of degree ( 2 n 1 ) , with n denoting the number of nodes along an edge. This element was tested in six examples with simply supported or clamped edges, subjected to concentrated or distributed loads. Despite using only boundary information, in most cases, the deflection error was reported to be less than 0.2%. Furthermore, it was shown that the lowest-order version of this transfinite element—using cubic Hermite polynomials as both blending and trial functions with two nodes per edge ( n = 2 ) —reduces to the well-known Bogner–Fox–Schmit (BFS) element [44].
In a later study ([9], Chapter 9), it was demonstrated that by selecting the same degree of Hermite polynomials for both blending and trial functions, transfinite interpolation degenerates to conventional tensor-product Hermitian interpolation. In this case, the results for both static and eigenvalue problems were found to be exceptionally accurate. By analogy to the present paper, where the treatment of internal nodes deviating from the tensor-product structure has been addressed, Hermite-based transfinite plate-bending elements with slightly unstructured interiors (such as the one shown in Figure 1e) can be readily constructed in a similar manner, although no published report currently exists. Despite this flexibility, Hermite interpolation cannot naturally accommodate non-rectangular plate elements, which motivates the use of a different approach, as discussed in the next paragraph.
To overcome the limitations of Hermite polynomials and to accommodate smooth curvilinear patches such as circular plates, the use of B-splines and NURBS has been proposed ([9], pp. 407–412). The central idea is to express the deflection as a tensor product of B-splines (or NURBS), namely
w ( ξ , η ) = i = 0 n j = 0 m N i , n ( ξ ) N j , m ( η ) a i j ,
where a i j denote generalized coefficients. This formulation has been shown to provide excellent accuracy for both static and dynamic problems. Nevertheless, within this framework, the treatment of non-tensor-product B-spline/NURBS elements using non-cardinal blending functions (either B-splines or NURBS) remains an active area of research. From an industrial perspective, the important aspects of the proposed formulation that favor its practical adoption are as follows: (i) the capability to handle unstructured grids, and (ii) the straightforward joining of patches. These features have recently attracted considerable interest from the research community (e.g., [45,46,47]).
Despite its length, the present paper does not address several important topics, including mesh refinement, T-splines, large-scale problems, and the implementation of weights. A brief discussion of these aspects is provided below:
  • Mesh refinement. Within the framework of traditional isogeometric analysis (IgA), truncated hierarchical B-splines (THB-splines) [48,49] constitute the prevailing refinement strategy, as they preserve the partition of unity within refined regions while leaving the remainder of the mesh unaffected. As an alternative, the proposed transfinite interpolation framework can naturally accommodate hanging nodes arising from one or multiple successive refinements (see Ref. [17], p. 24). In principle, the closed-form expressions presented therein require only the replacement of Lagrange polynomials (used as blending and trial functions) by B-splines.
  • T-splines. Lagrange polynomials have been successfully employed for the treatment of single T-spline meshes [50]. Ongoing research indicates that the same concept extends naturally to Bernstein polynomials and B-splines, which may act both as blending and trial functions. Alternatively, a background tensor-product grid may be introduced, followed by successive elimination procedures. In both approaches, the partition of unity property holds a priori  (([51], pp. 14–24) and papers therein).
  • Large-scale problems. In Section 7.2.1, it was noted that B-splines generally require more Gauss points than high-degree Lagrange polynomials. It should be emphasized, however, that the local support of B-splines leads to a sparse global stiffness matrix, in contrast to the fully populated matrix typically associated with global Lagrange polynomials. This sparsity substantially offsets the increased integration cost and is particularly advantageous for large-scale problems, both in terms of matrix assembly and the computational efficiency of solving the resulting system of equations. In the present work, standard direct solvers in MATLAB were sufficient for the problem sizes considered, and bandwidth optimization was not the focus. Nevertheless, this is an important topic in which advanced solution techniques have been proposed for large-scale isogeometric and B-spline systems. For example, multigrid approaches [52,53] and domain decomposition methods [54] have been successfully applied to efficiently solve the algebraic systems arising in IgA and similar frameworks, and could be naturally adopted in future large-scale applications using the proposed transfinite element formulations.
  • Implementation of weights. Although the present work focuses exclusively on unweighted B-splines, the incorporation of weights has recently been proposed. In particular, blending functions and trial functions may be weighted independently, not necessarily using identical weights. Within the context of CAGD, this generalized formulation enables the representation of cylindrical and spherical patches with machine-level accuracy [55].
In summary, this study advances the theory and practice of transfinite interpolation by integrating Bernstein polynomials, B-spline, and NURBS constructions within a unified framework capable of handling classical elements as well as structured, semi-structured, and irregular patches. Although fully unstructured B-splines on curved domains and T-meshes were not explored here, practical strategies were demonstrated to achieve consistent parametrizations and accurate geometric representations within the proposed element classes. Future work includes extending the framework to three-dimensional patches, developing systematic procedures for interior control-point placement in complex geometries, and adapting the formulations for plate and shell applications. Owing to its flexibility, modularity, and compatibility with standard spline technologies, the approach provides a robust foundation for further developments in both academic research and industrial applications.

10. Conclusions

This work has shown that classical transfinite finite elements can be systematically reformulated using Bernstein polynomials and B-splines, yielding a unified isogeometric framework capable of handling both structured and partially unstructured node layouts. By expressing the blending functions and trial functions in B-spline form, and by reinterpreting the generalized coefficients as samples of an underlying continuous univariate function evaluated independently at each station, the proposed formulation enables flexible control of horizontal and vertical subdivisions while preserving key properties such as partition of unity. Numerical studies—including two potential-flow problems, an eigenvalue acoustic example, and a patch test in plane elasticity—demonstrate robust convergence for both uniform and nonuniform configurations. While the current study focuses on two-dimensional surface patches, the framework provides a solid basis for future extensions to plate and shell formulations, as well as fully three-dimensional transfinite isogeometric elements, through appropriate generalizations of the control-point and blending-function constructions.

Funding

This research received no external funding.

Data Availability Statement

The original contributions presented in this study are included in the article. Further inquiries can be directed to the corresponding author.

Conflicts of Interest

The author declares no conflicts of interest.

Appendix A. Natural Cubic B-Splines

Let us consider the interval ξ [ 0 , 1 ] , which consists of n single breakpoints (simply ‘breaks’): [ ξ 1 , , ξ n ] . If the breaks are treated as nodal points, Lagrange polynomials L 1 ( ξ ) , , L n ( ξ ) of degree ( n 1 ) can be constructed, associated with nodal values ( U 1 , U 2 , , U n ) . On the other hand, when using a cubic spline with polynomial degree p = 3 , the same n breaks generate n ctrl = n + 2 control points associated with coefficients ( a 1 , , a n , a n + 1 , a n + 2 ) . In other words, the number of coefficients exceeds the number of breaks by 2. This is because, in addition to the n nodal values ( U 1 , , U n ) , two extra degrees of freedom appear at the ends of the interval [ 0 , 1 ] , typically corresponding to the second derivatives U ( 0 ) and U ( 1 ) .
To reduce the number of degrees of freedom from n + 2 to n, thereby matching the number of breaks, many studies have imposed vanishing curvature (i.e., zero second derivative) at the endpoints. This introduces two additional equations, resulting in what are known as ‘natural’ cubic B-splines—analogous to a beam in bending with no moments applied at its ends. Although these concepts were originally developed using the power series formulation of B-splines (Schoenberg, 1946 [56]), a more accessible construction method for natural cubic B-splines is presented below.
First, consider the knot vector Ξ = [ 0 , 0 , 0 , 0 = ξ 1 , , ξ n 1 , ξ n = 1 , 1 , 1 , 1 ] . Using this, we construct the classical cubic B-splines N i , 3 ( ξ ) for i = 1 , , n + 2 , which satisfy the relationship:
U ( ξ ) = i = 1 n + 2 N i , 3 ( ξ ) a i .
Equation (A1) is collocated at the n breaks. Moreover, the second derivative is given as
U ( ξ ) = i = 1 n + 2 N i , 3 ( ξ ) a i .
The totality of n + 2 equations is written in matrix form as
U brk = A a ,
where
U brk = U 1 U n U 1 U n
A = N 1 , 3 ( ξ 1 ) N 2 , 3 ( ξ 1 ) N n + 2 , 3 ( ξ 1 ) N 1 , 3 ( ξ 2 ) N 2 , 3 ( ξ 2 ) N n + 2 , 3 ( ξ 2 ) N 1 , 3 ( ξ n ) N 2 , 3 ( ξ n ) N n + 2 , 3 ( ξ n ) N 1 , 3 ( ξ 1 ) N 2 , 3 ( ξ 1 ) N n + 2 , 3 ( ξ 1 ) N 1 , 3 ( ξ n ) N 2 , 3 ( ξ n ) N n + 2 , 3 ( ξ n )
The inversion of Equation (A3) implies
a = A 1 U b r k ,
Equation (A1) is unfolded as follows:
U ( ξ ) = N 1 , 3 ( ξ ) N n + 2 , 3 ( ξ ) a .
Substituting Equation (A6) into Equation (A7), we receive the following:
U ( ξ ) = N 1 , 3 ( ξ ) N n + 2 , 3 ( ξ ) A 1 U b r k .
The term within the parentheses of Equation (A8) is evidently a row vector containing the natural cubic B-splines (shape functions). These shape functions are directly associated with the nodal values represented by the column vector U brk .
At this point, we distinguish between two modeling options:
  • Including end curvatures: If the curvatures (second derivatives) at the boundaries of the interval [ 0 , 1 ] are retained, the formulation involves n + 2 shape functions and correspondingly n + 2 degrees of freedom. These consist of the n nodal values shown in Figure A1b, along with the two boundary curvatures illustrated in Figure A1c.
  • Natural B-spline assumption: If the boundary curvatures are assumed to vanish—consistent with the natural B-spline formulation—the last two shape functions (out of the n + 2 ) are effectively multiplied by zero and thus do not contribute to the solution. Consequently, the number of active shape functions reduces to n, as depicted in Figure A1b. It is worth noting that this reduced functional set, comprising n functions ( N 1 , , N n ), satisfies the partition of unity property, ensuring rigid-body consistency. A MATLAB®  implementation for n = 11 is provided in Listing A1, which also generates the graphical results shown in Figure A1.
Figure A1. Basis functions for 11 uniform breaks: (a) de Boor B-splines, (b) natural cubic B-splines, (c) basis functions associated with the two rotational DOFs at the ends.
Figure A1. Basis functions for 11 uniform breaks: (a) de Boor B-splines, (b) natural cubic B-splines, (c) basis functions associated with the two rotational DOFs at the ends.
Axioms 15 00028 g0a1
Obviously, the set of de Boor—more precisely, Curry-Schoenberg (1966) [25]—cubic B-splines depicted in Figure A1a is equivalent to the complete set of natural cubic B-splines shown in Figure A1b, augmented by the two basis functions associated with the boundary curvatures illustrated in Figure A1c. This equivalence highlights a critical distinction: earlier analyses that relied solely on natural cubic B-splines, often supplemented by power series expansions (e.g., [8]), inherently lack the full representational capacity of the complete de Boor spline basis. As a result, such approaches may yield solutions of inferior fidelity compared with those constructed using the full set of de Boor B-splines.
Listing A1. Typical MATLAB code for calculating and plotting cubic B-splines N i , p ( ξ ) and natural cubic B-splines N i .
%% PROGRAM TO DERIVE NATURAL CUBIC BSPLINES
% In the interval [0,L], a number of internal breakpoints (nbrksIn),
% the polynomial degree (p), and the multiplicity is given:
L = 1;              % length of interval
p = 3;              % polynomial degree
multiplicity = 1;   % Number of knots per inner breakpoint
nbrksIn = 9;        % Number of inner breakpoints
nbrks = 2 + nbrksIn; % TOTAL number of breakpoints (2 ends + inner)
nodes = nbrks;
knots = augknt(linspace(0,L,nodes),p+1,multiplicity); % knot sequence
numknots = size(knots,2); % Number of knots
fprintf(’Number of knots = %3i\n’, numknots);
nctrlpoints = numknots - (p+1);
fprintf(’Number of control points = %3i\n’, nctrlpoints);
 
% Points where the basis functions will be calculated:
Ndivisions = 100;
tau = linspace(0,L,Ndivisions+1);
 
%% B-Splines
nstep=p;
colmat1=spcol(knots,p+1,brk2knt(tau,nstep));
[i1,i2]=size(colmat1);
Basis1 = colmat1(1:nstep:i1,:);
 
% Plot basis functions
plot(tau,Basis1,’LineWidth’,2)
xlabel(’cs’)
ylabel(’Ni,p’)
title([’P = ’, int2str(p)])
legend(’N1p’,’N2p’,’N3p’,’N4p’,’N5p’,’N6p’,’N7p’,’Location’,’best’)
 
%% NATURAL BSPLINES
% MATRIX [A]
for i=1:nbrks
tau0 = knots(p+i);
A(i,1:nctrlpoints) = spcol(knots,p+1,brk2knt(tau0,1));
end
tau1=0; tau2=1;
basis=spcol(knots,p+1,brk2knt(tau1,3)); A(nbrks+1,1:nctrlpoints)=basis(3,:);
basis=spcol(knots,p+1,brk2knt(tau2,3)); A(nbrks+2,1:nctrlpoints)=basis(3,:);
Ainv = inv(A);
 
% Calculate and plot natural B-spline
N=[];
for i=1:length(tau)
x=tau(i);
lineN=spcol(knots,p+1,brk2knt(x,1));
for j=1:nbrks+2
N(i,j) = lineN * Ainv(1:nbrks+2,j);
end
end
Figure~(2)
plot(tau,N(:,1:nbrks),’LineWidth’,2)
Figure~(3)
plot(tau,N(:,nbrks+1:nbrks+2),’LineWidth’,2)

Appendix B. Bernstein Polynomials and Derivatives

It is well known that Bézier interpolation of a curve or a univariate function has the following form
x ( ξ ) = i = 1 n + 1 B i , n ( ξ ) P i , 0 ξ 1 ,
with the Bernstein polynomials given by
B i , n ( ξ ) = n ! ( i 1 ) ! ( n i + 1 ) ! ξ i 1 ( 1 ξ ) n i + 1 , i = 1 , , n + 1
whereas P i are the ( n + 1 ) control points. In the case of a univariate function U ( ξ ) , the control points are substituted by the generalized coefficients α i , as follows:
U ( ξ ) = i = 1 n + 1 B i , n ( ξ ) α i , 0 ξ 1 .
To avoid the computation of factorials of Equation (A10) involved in Equation (A9), the values B i , n ( ξ ) and the first derivative d B i , n ( ξ ) / d ξ can be alternatively determined using the B-spline technique. The complete in-house function Bernstein is shown in Listing A2. It automatically generates the knot vector knots associated with the interval [ 0 , 1 ] , sets the ends with multiplicity ( n + 1 ) , calls the MATLAB built-in function spcol, and finally stores all the values of B i , n into the array Basis, and all the derivatives in the array dBasis. These two arrays refer to all sites of vector tau (e.g., at Gauss points). The input variable p is equivalent to the polynomial degree n shown in Equations (A9) and (A10).
Listing A2. Computation of Bernstein polynomials and derivatives.
               function [ Basis, dBasis ] = Bernstein( tau, p )
		% BERNSTEIN polynomials and derivatives within [0,1], at 'tau' sites.
		multiplicity = 1;                        % multiplicity
		knots = augknt([0 1], p+1, multiplicity);
		nset  = 2;                               % number of sets
		colmat = spcol(knots, p+1, brk2knt(tau, nset));
		imax = size(colmat,1);
		Basis  = colmat(1:nset:imax, :);         % Bernstein polynomials B_i
		dBasis = colmat(2:nset:imax, :);         % Bernstein derivatives B_i'
		end

Appendix C. Shape Functions of 12-Node Element

When Bernstein polynomials are used, the bivariate basis functions of the 12-node transfinite element of three layers are given by Equation (20). The MATLAB script, which exits the shape functions, the partial derivatives and the determinant of the Jacobian matrix at the Gauss points is given below:
function [SHP,XSJ] = SHAPE_Pht_12_BEZIER(xcor,ycor,cs,ht)
%% TRANSFINITE ELEMENT, 12 nodes, interboundaries at xi,eta=0,1/2,1.
%{
% 10 bounday nodes + 1*1 = 11 total nodes
                13       14      15      16     17     18
              D o-------o--------o--------o-------o------o  C
                |                                        |
                |                   10                   |
                8 o         o 9       o       o 11       o 12
                |                                        |
                |                                        |
                4 o         o 5             o 6          o 7
                |                                        |
                |                                        |
                o---------------------o------------------o--->X
                A 1                     2                  3 B
                %}
%% BLENDING FUNCTIONS IN Y-dir:
py=2; tauy=ht;
[ Basis, dBasis ] = Bernstein( tauy, py );      %Bernstein polynomials
E1y=Basis(1);    E2y=Basis(2);   E3y=Basis(3);  %Blending functions
dE1y=dBasis(1); dE2y=dBasis(2); dE3y=dBasis(3); %Derivatives of >>
%--------------------------------------------------------------------------
NEL = 12; SHP(1:3,1:NEL)=0;
%---LAYER#1:
px=2; taux=cs;
[ Basis, dBasis ] = Bernstein( taux, px );  % Bernstein polynomials
L1x=Basis(1);    L2x=Basis(2);   L3x=Basis(3);
dL1x=dBasis(1); dL2x=dBasis(2); dL3x=dBasis(3);
%---ASSOCIATED BIVARIATE BASIS FUNCTIONS (1-3) [see, Equation~(20)]:
SHP(3,1) = L1x* E1y;    %psi_1
SHP(1,1) =dL1x* E1y;    %d(psi_1)/dxi;
SHP(2,1) =  L1x*dE1y;   %d(psi_1)/deta;
SHP(3,2) = L2x* E1y;    %psi_2
SHP(1,2) =dL2x* E1y;    %d(psi_2)/dxi;
SHP(2,2) = L2x*dE1y;    %d(psi_2)/deta;
SHP(3,3) = L3x* E1y;    %psi_3
SHP(1,3) =dL3x* E1y;    %d(psi_3)/dxi;
SHP(2,3) = L3x*dE1y;    %d(psi_3)/deta;
%---LAYER No.2: HT=1/2:
px=3; taux=cs;
[ Basis, dBasis ] = Bernstein( taux, px );
L1x=Basis(1);    L2x=Basis(2);   L3x=Basis(3);   L4x= Basis(4);
dL1x=dBasis(1); dL2x=dBasis(2); dL3x=dBasis(3); dL4x=dBasis(4);
%---ASSOCIATED BIVARIATE BASIS FUNCTIONS (4-7) [see, Equation~(20)]:
SHP(3,4) = L1x* E2y; SHP(1,4) =dL1x* E2y; SHP(2,4) = L1x* dE2y;
SHP(3,5) = L2x* E2y; SHP(1,5) =dL2x* E2y; SHP(2,5) = L2x* dE2y;
SHP(3,6) = L3x* E2y; SHP(1,6) =dL3x* E2y; SHP(2,6) = L3x* dE2y;
SHP(3,7) = L4x* E2y; SHP(1,7) =dL4x* E2y; SHP(2,7) = L4x* dE2y;
%---LAYER No.3: HT=1:
px=4; taux=cs;
[ Basis, dBasis ] = Bernstein( taux, px );
L1x=Basis(1);    L2x=Basis(2);   L3x=Basis(3);   L4x= Basis(4);  L5x= Basis(5);
dL1x=dBasis(1); dL2x=dBasis(2); dL3x=dBasis(3); dL4x=dBasis(4); dL5x=dBasis(5);
%---ASSOCIATED BIVARIATE BASIS FUNCTIONS (8-12) [see, Equation~(20)]:
SHP(3,8)  = L1x* E3y; SHP(1,8)  = dL1x* E3y; SHP(2,8)  = L1x* dE3y;
SHP(3,9)  = L2x* E3y; SHP(1,9)  = dL2x* E3y; SHP(2,9)  = L2x* dE3y;
SHP(3,10) = L3x* E3y; SHP(1,10) = dL3x* E3y; SHP(2,10) = L3x* dE3y;
SHP(3,11) = L4x* E3y; SHP(1,11) = dL4x* E3y; SHP(2,11) = L4x* dE3y;
SHP(3,12) = L5x* E3y; SHP(1,12) = dL5x* E3y; SHP(2,12) = L5x* dE3y;
%-----CONSTRUCT JACOBIAN:
XL(1,1:NEL)=xcor(1:NEL);
XL(2,1:NEL)=ycor(1:NEL);
for I=1:2
for J=1:2
XS(I,J)=0.0;
for K=1:NEL
XS(I,J)=XS(I,J)+XL(I,K)*SHP(J,K);
end
end
end
%---INVERSE OF JACOBIAN:
XSJ=XS(1,1)*XS(2,2)-XS(1,2)*XS(2,1);
SX(1,1)=XS(2,2)/XSJ;
SX(2,2)=XS(1,1)/XSJ;
SX(1,2)=-XS(1,2)/XSJ;
SX(2,1)=-XS(2,1)/XSJ;
% C-----FORM GLOBAL DERIVATIVES
for I=1:NEL
TP       = SHP(1,I)*SX(1,1)+SHP(2,I)*SX(2,1);
SHP(2,I) = SHP(1,I)*SX(1,2)+SHP(2,I)*SX(2,2);
SHP(1,I) = TP;
end
end     %end-of-subroutine

Appendix D. Main Program

Below is the main program for the solution of Example 1 (Figure 11) using the 12-node transfinite element shown in Figure 6a. It calls the four following subroutines,
SHAPE_Peta_12_LAGRANGEShape functions using univariate Lagrange polynomials, as blending and trial functions.
SHAPE_Peta_12_BEZIERBasis functions using univariate Bernstein-Bézier polynomials, as blending and trial functions (cited in Appendix C).
SHAPE_Peta_12_BSPLINESBasis functions using univariate B-splines, as blending and trial functions.
lgwtGauss points and associated weights (see Ref. [23]).
The main integer variables and several real arrays used by the program, together with their meaning, are given below.
areaIs the calculated patch area using Lagrange (L), Bernstein-Bézier (B) and B-spline (C) interpolation.
CoeffsCalculated coefficients ( a i ) using Lagrange (L), Bernstein-Bézier (B) and B-spline (C) interpolation.
giLocation of Gauss points ( 1 r , s 1 ).
L2percent L 2 -error norm (in %) of the numerical solution U ( ξ , η ) .
NELIs the number of Nodes on the ELement.
ncellxIs the number of integration cells in ξ -direction.
ncellyIs the number of integration cells in η -direction.
ngaussIs the number of Gauss points per direction.
omeWeights associated with Gauss points.
SHPLShape functions and partial derivatives for Lagrange polynomials.
SHPBShape functions and partial derivatives for Bernstein-Bézier polynomials (see, Appendix C).
SHPCShape functions and partial derivatives for B-splines.
x,y,XLCartesian coordinates ( x , y ) of nodal points or breakpoints.
xi,etaParameters ( ξ , η ) [ 0 , 1 ] × [ 0 , 1 ] .
XLbCartesian coordinates of control points for Bernstein-Bézier polynomials.
XLcCartesian coordinates of control points for B-splines.
XSJDeterminant of Jacobian matrix.
To solve a different problem with a more complex mesh, a preprocessor has to be added with the purpose of replacing the variables x,y at the beginning of the main program.
%********************************************************************
%% Solves the BVP for 12-node Transfinite Element
%********************************************************************
%{
     D  o---------o---------o--------o--------o C      Layer#3
        |8        9         10       11     12|
        |                                     |
        4 o   ---   o 5     ---    o 6   ---    o 7    Layer#2
        |                                     |
        |                                     |
        o-------------------o-----------------o        Layer#1
        A 1                   2                 3  B
        %}
%--------------------------------------------------------------------------
clear all; clc
%**********************************************************************
%%                                PRE-PROCESSOR
%**********************************************************************
%---CARTESIAN COORDINATES (UNIT SQUARE: xmax=1, ymax=1):
NEL = 12;   %number of element nodes
x(1:3) =linspace(0,1,3); y(1:3)=0.0;    % Layer#1: uniform
x(4:7) =linspace(0,1,4); y(4:7)=1/2;    % Layer#2: uniform
x(8:12)=linspace(0,1,5); y(8:12)=1;     % Layer#1: uniform
% Store both coordinates in the single array XL:
XL(1,1:NEL)=x(1:NEL);     XL(2,1:NEL)=y(1:NEL); %store in one array
Figure~(1)
plot(x,y,’o-’)      % Plot Cartesian coordinates (nodes or breakpoints)
for i=1:NEL
text(x(i)+0.02,y(i)+0.02,int2str(i),’Color’,’red’) % node numbering
end
%% ADJUST CONTROL POINTS SO THAT TO PRODUCE UNIFORM IMAGES:
for i=1:NEL
xi=x(i); eta=y(i);
[SHPB,~] = SHAPE_Peta_12_BEZIER(x,y,xi,eta);            %Bezier
Bmat(i,1:NEL)=SHPB(3,1:NEL);
[SHPC,XSJdummy] = SHAPE_Peta_12_BSPLINES(x,y,xi,eta);   %B-splines
Cmat(i,1:NEL)=SHPC(3,1:NEL);
end
% Control points (CTRLs) for BERNSTEIN-BEZIER approximation:
XLb(1,1:NEL) = Bmat \ XL(1,1:NEL)’; %control pts (x-coordinate)
XLb(2,1:NEL) = Bmat \ XL(2,1:NEL)’; %control pts (y-coordinate)
% Control points (CTRLs) for B-SPLINE approximation:
XLc(1,1:NEL) = Cmat \ XL(1,1:NEL)’; %control pts (x-coordinate)
XLc(2,1:NEL) = Cmat \ XL(2,1:NEL)’; %control pts (y-coordinate)
%Finalize the plot:
hold on
plot(XLb(1,1:NEL), XLb(2,1:NEL),’b+’)   %Plot BERNSTEIN-BEZIER CTRLs
hold on
plot(XLc(1,1:NEL), XLc(2,1:NEL),’rx’)   %Plot B-SPLINE CTRLs
% For each layer, store location of breakpoints (or nodes) into a vector:
Layer1=[0,1/2,1];           % Breakpoints (BRKs) of Layer#1
Layer2=[0 1/3 2/3 1];       % BRKs of Layer#2
Layer3=[0 1/4 2/4 3/4 1];   % BRKs of Layer#3
AllValues = [Layer1, Layer2, Layer3];    % All possible BRKS, together.
Ubrkx = unique(AllValues);  % Determine Unique values
ncellx=length(Ubrkx)-1;     % number of cells in horizontal direction
ncelly=2;                   % number of cells in vertical direction
%*********************************************************************
%%                                ANALYSIS
%*********************************************************************
%---Usual Gauss Points (GPTs) per direction in each integration cell:
ngauss = 04;    % For rectangle: (p+1) GPTs per direction are required.
[gi,ome]=lgwt(ngauss,-1,1); % Gauss points and weights
% Initialize Stiffness and Patch area: L=Lagrange, B=Bernstein, C=B-spline
KL=zeros(NEL,NEL); KB=zeros(NEL,NEL); KC=zeros(NEL,NEL); % stiffness
areaL=0; areaB=0; areaC=0;                               % patch area
dy=1/ncelly;    % vertical distance betwen successive layers
xmax=1; ymax=1; % edge lengths of quadrilateral patch
% Loop over all integration cells
for jcelly=1:ncelly
ym=(jcelly-1)*dy+dy/2; etam=ym/ymax;
for icellx=1:ncellx
dx=Ubrkx(icellx+1)-Ubrkx(icellx);
Jloc=1/4*dx*dy; % local det(Jacobian)
xm=(Ubrkx(icellx)+Ubrkx(icellx+1))/2; xim=xm/xmax;
for igau=1:ngauss
for jgau=1:ngauss
xsj=1;  %square [0,1]x[0,1]
xi=xim+gi(igau)*dx/2;
eta=etam+gi(jgau)*dy/2;
% For current Gauss point (xi,eta), find Shape Functions:
[SHPL,XSJL] = SHAPE_Peta_12_LAGRANGE( x, y, xi, eta );%Lagrange
[SHPB,XSJB] = SHAPE_Peta_12_BEZIER(XLb(1,1:NEL),XLb(2,1:NEL),xi,eta);%Bezier
[SHPC,XSJC] = SHAPE_Peta_12_BSPLINES(XLc(1,1:NEL),XLc(2,1:NEL),xi,eta);%B-splines, p=3
% Weighted Jacobian term:
dvolL=XSJL*ome(igau)*ome(jgau)*Jloc; %volume element (Lagrange)
dvolB=XSJB*ome(igau)*ome(jgau)*Jloc; %volume element (Bernstein)
dvolC=XSJC*ome(igau)*ome(jgau)*Jloc; %volume element (B-spline)
% Patch area using (L=Lagrange, B=Bernstein, C=B-spline):
areaL=areaL+dvolL;
areaB=areaB+dvolB;
areaC=areaC+dvolC;
% Stiffness matrices in three fomulations (L, B, C):
for i=1:NEL
for j=1:NEL
%---LAGRANGE:
KL(i,j)=KL(i,j) + (SHPL(1,i)*SHPL(1,j) + SHPL(2,i)*SHPL(2,j))*dvolL;
%---BEZIER-BERNSTEIN:
KB(i,j)=KB(i,j) + (SHPB(1,i)*SHPB(1,j) + SHPB(2,i)*SHPB(2,j))*dvolB;
%---B-SPLINES:
KC(i,j)=KC(i,j) + (SHPC(1,i)*SHPC(1,j) + SHPC(2,i)*SHPC(2,j))*dvolC;
end
end
end
end
end
end
fprintf(’\nAREAS: areaL = %12.5e  areaB = %12.5e  areaC = %12.5e\n’,areaL,areaB,areaC);
%% IMPOSE BOUNDARY CONDITIONS
BC(1:NEL)=0;
BC(1:3)=1;                  %edge AB (bottom)
BC(3)=1;BC(7)=1;BC(12)=1;   %edge BC (right vertical)
BC(8:12)=1;                 %edge DC (top)
%----------------------------------------------------------------------
% LAGRANGE POLYNOMIALS (index ’L’):
fiL(1:NEL)=0;
edofTop=[8 9 10 11 12];
Xtop=x(edofTop);
fiL(edofTop)=1000*cos(pi*Xtop/2/1);
%----------------------------------------------------------------------
% BERNSTEIN POLYNOMIALS (index ’B’):
fiB(1:NEL)=0;
rhsB(1:NEL)=0;
TopU(1:5)=1000*cos(pi*Xtop/2/1);
px=4;
knotsx=augknt([0 1],px+1,1);
taux=Xtop;
Bmatrix=spcol(knotsx,px+1,brk2knt(taux,1));
nctrlx=size(Bmatrix,2);
fiB(edofTop)=Bmatrix \ TopU’;
%----------------------------------------------------------------------
% B-SPLINES (index ’C’):
fiC(1:NEL)=0;
rhsC(1:NEL)=0;
TopU(1:5)=1000*cos(pi*Xtop/2/1);
px=3;
knotsx=[0 0 0 0 1/2 1 1 1 1];
taux=Xtop;
Cmatrix=spcol(knotsx,px+1,brk2knt(taux,1));
nctrlx=size(Cmatrix,2);
fiC(edofTop)=Cmatrix \ TopU’;
%----------------------------------------------------------------------
%% DIVIDE DOFs IN TWO PARTS:
free_dofs  = find(BC==0);
fixed_dofs = find(BC==1);
%% SOLVE FOR LAGRANGE POLYNOMIALS:
rhsL(1:NEL)=0;
rhsL(free_dofs)=-KL(free_dofs,fixed_dofs)*fiL(fixed_dofs)’;
UnodalL(fixed_dofs)=fiL(fixed_dofs);
UnodalL(free_dofs) = KL(free_dofs,free_dofs) \ rhsL(free_dofs)’;
%% SOLVE FOR BERNSTEIN POLYNOMIALS:
rhsB(1:NEL)=0;
rhsB(free_dofs)=-KB(free_dofs,fixed_dofs)*fiB(fixed_dofs)’;
CoeffsB(fixed_dofs)= fiB(fixed_dofs);
CoeffsB(free_dofs) = KB(free_dofs,free_dofs) \ rhsB(free_dofs)’;
%% SOLVE FOR B-SPLINES:
rhsC(1:NEL)=0;
rhsC(free_dofs)=-KC(free_dofs,fixed_dofs)*fiC(fixed_dofs)’;
CoeffsC(fixed_dofs)= fiC(fixed_dofs);
CoeffsC(free_dofs) = KC(free_dofs,free_dofs) \ rhsC(free_dofs)’;
%**************************************************************************
%%                                POST-PROCESSOR
%**************************************************************************
%% CALCULATE THE ERROR IN THE DOMAIN
areaL=0;        areaB=0;        areaC=0;
numeratorL=0;   numeratorB=0;   numeratorC=0;
denominatorL=0; denominatorB=0; denominatorC=0;
for jcelly=1:ncelly
ym=(jcelly-1)*dy+dy/2; etam=ym/ymax;
for icellx=1:ncellx
dx=Ubrkx(icellx+1)-Ubrkx(icellx);
Jloc=1/4*dx*dy;
xm=(Ubrkx(icellx)+Ubrkx(icellx+1))/2; xim=xm/xmax;
for igau=1:ngauss
for jgau=1:ngauss
xi=xim+gi(igau)*dx/2; eta=etam+gi(jgau)*dy/2; %parameters
% Shape functions:
[SHPL, XSJL] = SHAPE_Peta_12_LAGRANGE( x,y,xi,eta ); %Lagrange
[SHPB, XSJB] = SHAPE_Peta_12_BEZIER( XLb(1,1:NEL), XLb(2,1:NEL), xi, eta );  %Bezier
[SHPC, XSJC] = SHAPE_Peta_12_BSPLINES( XLc(1,1:NEL), XLc(2,1:NEL), xi, eta );  %Bezier
% Calculated values at Gauss points:
UcalculatedL = SHPL(3,:)*UnodalL’;
UcalculatedB = SHPB(3,:)*CoeffsB’;
UcalculatedC = SHPC(3,:)*CoeffsC’;
% Cartesian coordinates of Gauss points:
xgpt=SHPL(3,:)*XL(1,:)’; ygpt=SHPL(3,:)*XL(2,:)’;
Uexact=1000*sinh(pi*ygpt/2/1)/sinh(pi*1/2/1) * cos(pi*xgpt/2/1);
% Volume elements
dvolL=XSJL*ome(igau)*ome(jgau)*Jloc;
dvolB=XSJB*ome(igau)*ome(jgau)*Jloc;
dvolC=XSJC*ome(igau)*ome(jgau)*Jloc;
% Lagrange polynomials (L):
areaL=areaL+dvolL;
numeratorL  =numeratorL   + (UcalculatedL-Uexact)^2*dvolL;
denominatorL=denominatorL + (0-Uexact)^2*dvolL;
% Bernstein-Bezier polynomals (B):
areaB=areaB+dvolB;
numeratorB  =numeratorB   + (UcalculatedB-Uexact)^2*dvolB;
denominatorB=denominatorB + (0-Uexact)^2*dvolB;
% B-splines (C):
areaC=areaC+dvolC;
numeratorC  =numeratorC   + (UcalculatedC-Uexact)^2*dvolC;
denominatorC=denominatorC + (0-Uexact)^2*dvolC;
end
end
end
end
L2percentL = sqrt(numeratorL/denominatorL)*100;
fprintf(’\nLAGRANGE : Area = %12.5e  L2-error norm(percent) = %12.5e\n’,areaL,L2percentL);
L2percentB = sqrt(numeratorB/denominatorB)*100;
fprintf(’BERNSTEIN: Area = %12.5e  L2-error norm(percent) = %12.5e\n’,areaB,L2percentB);
L2percentC = sqrt(numeratorC/denominatorC)*100;
fprintf(’B-SPLINES: Area = %12.5e  L2-error norm(percent) = %12.5e\n’,areaC,L2percentC);
return

References

  1. Rayleigh, L. Scientific Papers; Cambridge University Press: Cambridge, UK, 1900; Volume II. [Google Scholar]
  2. Ritz, W. Über eine neue Methode zur Lösung gewisser Variationsprobleme der mathematischen Physik, (On a new method for the solution of certain variational problems of mathematical physics). J. Reine Angew. Math. 1909, 135, 1–61. [Google Scholar] [CrossRef]
  3. Zienkiewicz, O.C. The Finite Element Method, 3rd ed.; McGraw-Hill: London, UK, 1977. [Google Scholar]
  4. Bathe, K.J. Finite Element Procedures, 2nd ed.; Prentice-Hall: Saddle River, NJ, USA, 1996. [Google Scholar]
  5. Gordon, W.J.; Hall, C.A. Transfinite element methods: Blending-function interpolation over arbitrary curved element domains. Numer. Math. 1973, 21, 109–129. [Google Scholar] [CrossRef]
  6. Birkhoff, G.; Cavendish, J.C.; Gordon, W.J. Multivariate Approximation by Locally Blended Univariate Interpolants. Proc. Nat. Acad. Sci. USA 1974, 71, 3423–3425. [Google Scholar] [CrossRef]
  7. Coons, S.A. Surfaces for Computer-Aided Design of Space Forms; MIT Report; Massachusetts Institute of Technology: Cambridge, MA, USA, 1967. [Google Scholar]
  8. Kanarachos, A.; Deriziotis, D. On the solution of Laplace and wave propagation problems using “C-elements”. Finite Elem. Anal. Des. 1989, 5, 97–109. [Google Scholar] [CrossRef]
  9. Provatidis, C.G. Precursors of Isogeometric Analysis: Finite Elements, Boundary Elements, and Collocation Methods; Springer: Cham, Switzerland, 2019. [Google Scholar] [CrossRef]
  10. Hughes, T.J.R.; Cottrell, J.A.; Bazilevs, Y. Isogeometric Analysis: CAD, Finite Elements, NURBS, Exact Geometry and Mesh Refinement. Comput. Methods Appl. Mech. Eng. 2005, 194, 4135–4195. [Google Scholar] [CrossRef]
  11. Cottrell, J.A.; Hughes, T.J.R.; Bazilevs, Y. Isogeometric Analysis: Towards Integration of CAD and FEA; Wiley: Chichester, UK, 2009. [Google Scholar]
  12. Scholz, E.; Altenbach, J. Kompatible übergangselemente für lokale Netzverfeinerungen bei 2D- und 3D-Finite-Elemente-Modellen. Tech. Mech. 1985, 6, 72–78. [Google Scholar]
  13. Altenbach, J.; Scholz, E. Ableitung von Formfunktionen für finite Standard- und Übergangselemente Grundlage der gemischten Interpolation. Tech. Mech. 1987, 8, 18–30. [Google Scholar]
  14. Weinberg, K.; Gabbert, U. Adaptive local-global analysis by pNh transition elements. Tech. Mech. 1999, 19, 115–126. [Google Scholar]
  15. Weinberg, K.; Gabbert, U. An adaptive pNh-technique for global-local finite element analysis. Eng. Comput. 2002, 19, 485–500. [Google Scholar] [CrossRef]
  16. Duczek, S.; Saputra, A.A.; Gravenkamp, H. High Order Transition Elements: The xNy-Element Concept—Part I: Statics. Comput. Methods Appl. Mech. Eng. 2020, 362, 112833. [Google Scholar] [CrossRef]
  17. Provatidis, C. Transfinite patches for isogeometric analysis. Mathematics 2025, 13, 35. [Google Scholar] [CrossRef]
  18. Provatidis, C. Transfinite elements using Bernstein polynomials. Axioms 2025, 14, 433. [Google Scholar] [CrossRef]
  19. Farin, G. Curves and Surfaces for CAGD; Morgan Kaufmann-Elsevier: Burlington, MA, USA, 2002. [Google Scholar] [CrossRef]
  20. Provatidis, C. Bézier versus Lagrange polynomials-based finite element analysis of 2-D potential problems. Adv. Eng. Softw. 2014, 73, 22–34. [Google Scholar] [CrossRef]
  21. Farouki, R.; Hinds, J. A hierarchy of geometric forms. IEEE Comput. Graph. Appl. 1985, 5, 51–78. [Google Scholar] [CrossRef]
  22. DeBoor, C. A Practical Guide to Splines, Revised ed.; Springer: New York, NY, USA, 2001. [Google Scholar]
  23. von Winckel, G. Legendre-Gauss Quadrature Weights and Nodes. MATLAB Central File Exchange. Recovered 6 August 2025. 2025. Available online: https://www.mathworks.com/matlabcentral/fileexchange/4540-legendre-gauss-quadrature-weights-and-nodes (accessed on 20 December 2025).
  24. Carslaw, H.S.; Jaeger, J.C. Conduction of Heat in Solids, 2nd ed.; Oxford University Press: Oxford, UK, 1969. [Google Scholar]
  25. Curry, H.B.; Schoenberg, I.J. On Pólya Frequency Functions IV: The Fundamental spline functions and their limits. J. D’analyse Math. 1966, 17, 71–107. [Google Scholar] [CrossRef]
  26. Cox, M.G. The Numerical Evaluation of B-Splines. IMA J. Appl. Math. 1972, 10, 134–149. [Google Scholar] [CrossRef]
  27. De Boor, C. On Calculating with B-Splines. J. Approx. Theory 1972, 6, 50–62. [Google Scholar] [CrossRef]
  28. Karniadakis, G.E.; Sherwin, S.J. Spectral/Hp Element Methods for Computational Fluid Dynamics; Oxford Science Publications: Oxford, UK, 2005. [Google Scholar] [CrossRef]
  29. Piegl, L.; Tiller, W. A menagerie of rational B-spline circles. IEEE Comput. Graph. Appl. 1989, 9, 48–56. [Google Scholar] [CrossRef]
  30. Courant, R.; Hilbert, D. Methods of Mathematical Physics, 1st English ed.; Translated and Revised from the German Original; InterScience: New York, NY, USA, 1966; Volume I. [Google Scholar]
  31. Garoni, C.; Speleers, H.; Ekström, S.-E.; Reali, A.; Serra-Capizzano, S.; Hughes, T.J.R. Symbol-based analysis of finite element and isogeometric B-spline discretizations of eigenvalue problems: Exposition and review. Arch. Comput. Methods Eng. 2019, 26, 1639–1690. [Google Scholar] [CrossRef]
  32. Felippa, C.A.; Haugen, B.; Militello, C. From the individual element test to finite element templates: Evolution of the patch test. Int. J. Numer. Methods Eng. 1995, 38, 199–229. [Google Scholar] [CrossRef]
  33. Provatidis, C.G. Lumped mass acoustic and membrane eigenanalysis using the global collocation method. Cogent Eng. 2014, 1, 981366. [Google Scholar] [CrossRef]
  34. Provatidis, C.G. CAD-based collocation eigenanalysis of 2-D elastic structures. Comput. Struct. 2017, 182, 55–73. [Google Scholar] [CrossRef]
  35. Yağmurlu, N.M.; Karakaş, A.S. A novel perspective for simulations of the MEW equation by trigonometric cubic B-spline collocation method based on Rubin-Graves type linearization. Comput. Methods Differ. Equ. 2022, 10, 1046–1058. [Google Scholar] [CrossRef]
  36. Kutluay, S.; Yağmurlu, N.M.; Karakaş, A.S. A novel perspective for simulations of the Modified Equal-Width Wave equation by cubic Hermite B-spline collocation method. Wave Motion 2024, 129, 103342. [Google Scholar] [CrossRef]
  37. Kutluay, S.; Yagmurlu, N.M.; Karakaş, A.S. A robust septic Hermite collocation technique for Dirichlet boundary condition Heat conduction equation. Int. J. Math. Comput. Eng. 2025, 3, 253–266. [Google Scholar] [CrossRef]
  38. Eisenträger, S.; Eisenträger, J.; Gravenkamp, H.; Provatidis, C.G. High order transition elements: The xNy-element concept, Part II: Dynamics. Comput. Methods Appl. Mech. Eng. 2021, 387, 114145. [Google Scholar] [CrossRef]
  39. Provatidis, C.G.; Sevilla, R.; Schillinger, D.; Eisenträger, S. Revisiting Transfinite Elements: Unifying Element Formulations for IGA, SEM, NEFEM, p-FEM and h-FEM. Arch. Comput. Methods Eng. 2025. [Google Scholar] [CrossRef]
  40. Provatidis, C.G. Non-rational and rational transfinite interpolation using Bernstein polynomials. Int. J. Comput. Geom. Appl. 2022, 32, 55–89. [Google Scholar] [CrossRef]
  41. Nguyen, V.P.; Anitescu, C.; Bordas, S.P.; Rabczuk, T. Isogeometric analysis: An overview and computer implementation aspects. Math. Comput. Simul. 2015, 117, 89–116. [Google Scholar] [CrossRef]
  42. Garau, E.M.; Vázquez, R. Algorithms for the implementation of adaptive isogeometric methods using hierarchical B-splines. Appl. Numer. Math. 2018, 123, 58–87. [Google Scholar] [CrossRef]
  43. Provatidis, C.G.; Angelidis, D.I. Performance of Coons’ macroelements in plate bending analysis. Int. J. Comput. Methods Eng. Sci. Mech. 2014, 15, 110–125. [Google Scholar] [CrossRef]
  44. Bogner, F.K.; Fox, R.L.; Schmit, L.A. The generation of inter-element-compatible stiffness and mass matrices by the use of interpolation formulas. In Proceedings of the Conference on Matrix Methods in Structural Mechanics, Wright-Patterson Air Force Base, OH, USA, 26–28 October 1965; pp. 397–444. [Google Scholar]
  45. Thomas, D.C.; Engvall, L.; Schmidt, S.K.; Tew, K.; Scott, M.A. U-splines: Splines over unstructured meshes. Comput. Methods Appl. Mech. Eng. 2022, 401, 115515. [Google Scholar] [CrossRef]
  46. Wei, X.; Li, X.; Qian, K.; Hughes, T.J.R.; Zhang, Y.J.; Casquero, H. Analysis-suitable unstructured T-splines: Multiple extraordinary points per face. Comput. Methods Appl. Mech. Eng. 2022, 391, 114494. [Google Scholar] [CrossRef]
  47. Sangalli, G.; Takacs, T.; Vázquez, R. Unstructured spline spaces for isogeometric analysis based on spline manifolds. Comput. Aided Geom. Des. 2016, 47, 61–82. [Google Scholar] [CrossRef]
  48. Giannelli, C.; Jüttler, B.; Speleers, H. THB-splines: The truncated basis for hierarchical splines. Comput. Aided Geom. Des. 2012, 29, 485–498. [Google Scholar] [CrossRef]
  49. Vuong, A.V.; Giannelli, C.; Jüttler, B.; Simeon, B. A hierarchical approach to adaptive local refinement in isogeometric analysis. Comput. Methods Appl. Mech. Engrg. 2011, 200, 3554–3567. [Google Scholar] [CrossRef]
  50. Provatidis, C.; Eisenträger, S. Macroelement analysis in T-patches using Lagrange polynomials. Mathematics 2025, 13, 1498. [Google Scholar] [CrossRef]
  51. Provatidis, C.G. Unstructured transfinite elements including T-Splines. Preprints 2025, 2025101500. [Google Scholar] [CrossRef]
  52. Donatelli, M.; Garoni, C.; Manni, C.; Serra-Capizzano, S.; Speleers, H. Symbol-based multigrid methods for Galerkin B-spline isogeometric analysis. SIAM J. Numer. Anal. 2017, 55, 31–62. [Google Scholar] [CrossRef]
  53. Jomo, J.; Oztoprak, O.; de Prenter, F.; Zander, N.; Kollmannsberger, S.; Rank, E. Hierarchical multigrid approaches for the finite cell method on uniform and multi-level hp-refined grids. Comput. Methods Appl. Mech. Energ. 2021, 386, 114075. [Google Scholar] [CrossRef]
  54. Widlund, O.B.; Zampini, S.; Scacchi, S.; Pavarino, L.F. Block FETI–DP/BDDC preconditioners for mixed isogeometric discretizations of three-dimensional almost incompressible elasticity. Math. Comp. 2021, 90, 1773–1797. [Google Scholar] [CrossRef]
  55. Provatidis, C.G. Weighted transfinite interpolation for slightly unstructured curvilinear patches. Comput. Aided Geom. Des. 2025, 124, 102497. [Google Scholar] [CrossRef]
  56. Schoenberg, I.J. Contributions to the problem of approximation of equidistant data by analytic functions. Part A. On the problem of smoothing or graduation. A first class of analytic approximation formulae. Q. Appl. Math. 1946, 4, 45–99. [Google Scholar] [CrossRef]
Figure 1. (a) Coons element. (b) Tensor-product element. (c) Classical transfinite element. (d) Arbitrary-noded boundary with inner tensor-product element. (e) One-directional element.
Figure 1. (a) Coons element. (b) Tensor-product element. (c) Classical transfinite element. (d) Arbitrary-noded boundary with inner tensor-product element. (e) One-directional element.
Axioms 15 00028 g001
Figure 2. (a) One-dimensional curve 1-2-3. (b) Two-dimensional patch A B C D .
Figure 2. (a) One-dimensional curve 1-2-3. (b) Two-dimensional patch A B C D .
Axioms 15 00028 g002
Figure 3. Transfinite element with the blending functions and a typical set of trial functions.
Figure 3. Transfinite element with the blending functions and a typical set of trial functions.
Axioms 15 00028 g003
Figure 11. Geometry and boundary conditions.
Figure 11. Geometry and boundary conditions.
Axioms 15 00028 g011
Figure 13. Half-Annulus A B C D ( n ξ = 6 , n η = 3 ).
Figure 13. Half-Annulus A B C D ( n ξ = 6 , n η = 3 ).
Axioms 15 00028 g013
Table 1. Errors ( L 2 in %) for the Classical Transfinite Elements shown in Figure 4.
Table 1. Errors ( L 2 in %) for the Classical Transfinite Elements shown in Figure 4.
Element TypeModel-1 (Lagrange)Model-2 (Natural B-Spline)Model-3 (De Boor B-Spline)
21-node 0.0505 0.5690 0.0579
27-node 0.0464 0.4525 0.0506
33-node 0.0460 0.2177 0.0464
113-node 1.9140 × 10 5 0.0324 6.2379 × 10 5
Table 3. Errors ( L 2 in %) for the 27-node element shown in Figure 9.
Table 3. Errors ( L 2 in %) for the 27-node element shown in Figure 9.
LagrangeBernsteinDe Boor B-Spline
0.01910.01260.0245
Table 5. Errors ( L 2 in %) of classical transfinite elements using Lagrange or Bernstein polynomials (half-annulus).
Table 5. Errors ( L 2 in %) of classical transfinite elements using Lagrange or Bernstein polynomials (half-annulus).
21-Node27-Node33-Node113-Node
8.58394.35482.07730.1127
Table 6. Errors ( E m n in %) of calculated eigenvalues using classical transfinite elements (Figure 4).
Table 6. Errors ( E m n in %) of calculated eigenvalues using classical transfinite elements (Figure 4).
MODELMode-1Mode-2Mode-3Mode-4Mode-5Mode-6Mode-7
21-node0.00050.03340.102813.53639.686827.802318.6680
27-node0.00010.01080.65820.19050.07550.56102.7985
33-node0.00010.00980.09072.36330.01600.50512.7342
113-node0.0000
× 10 3
0.0004
× 10 3
0.0208
× 10 3
0.7636
× 10 3
0.0371
× 10 3
0.1873
× 10 3
0.8891
× 10 3
Table 7. Errors ( E m n in %) of calculated eigenvalues using unidirectional (multi-layer) transfinite elements (Figure 6).
Table 7. Errors ( E m n in %) of calculated eigenvalues using unidirectional (multi-layer) transfinite elements (Figure 6).
MODELMode-1Mode-2Mode-3Mode-4Mode-5Mode-6Mode-7
12-node0.75220.44827.549463.651253.524246.874043.1462
18-node0.01370.02031.262018.95357.81674.920012.4160
25-node0.00050.00740.585510.07630.53760.50072.2968
32-node0.00010.00400.34225.46340.07550.07300.9024
Table 8. Errors ( E m n in %) of calculated eigenvalues using single Coons-patch macroelements.
Table 8. Errors ( E m n in %) of calculated eigenvalues using single Coons-patch macroelements.
MODELMode-1Mode-2Mode-3Mode-4Mode-5Mode-6Mode-7
10-node0.75220.75735.345463.651254.754549.5222108.5697
13-node0.01370.30755.33763.97745.33466.6324124.0532
16-node0.00050.30105.33414.88440.53762.231712.8249
18-node0.00010.30085.33414.88370.06631.798312.8249
Table 9. Errors ( E m n in %) of calculated eigenvalues using conventional FEM.
Table 9. Errors ( E m n in %) of calculated eigenvalues using conventional FEM.
FEM: Error (in %)
MODE(m, n) ω mn 2 5 × 3 (15 DOF) 6 × 4 (24 DOF) 7 × 5 (35 DOF) 21 × 11  (231 DOF)
1(0, 0)2.03917420.615011.37617.03071.1640
2(1, 0)3.61831143.954918.06989.91691.3161
3(2, 0)8.35572143.827118.245211.07581.1431
4(3, 0)16.25140546.751928.873519.93211.8626
5(0, 1)18.35257045.229723.884214.02592.5834
6(1, 1)19.93170750.751730.868119.54643.4274
7(2, 1)24.66911734.624435.175421.86533.0007
Disclaimer/Publisher’s Note: The statements, opinions and data contained in all publications are solely those of the individual author(s) and contributor(s) and not of MDPI and/or the editor(s). MDPI and/or the editor(s) disclaim responsibility for any injury to people or property resulting from any ideas, methods, instructions or products referred to in the content.

Share and Cite

MDPI and ACS Style

Provatidis, C.G. Isogeometric Transfinite Elements: A Unified B-Spline Framework for Arbitrary Node Layouts. Axioms 2026, 15, 28. https://doi.org/10.3390/axioms15010028

AMA Style

Provatidis CG. Isogeometric Transfinite Elements: A Unified B-Spline Framework for Arbitrary Node Layouts. Axioms. 2026; 15(1):28. https://doi.org/10.3390/axioms15010028

Chicago/Turabian Style

Provatidis, Christopher G. 2026. "Isogeometric Transfinite Elements: A Unified B-Spline Framework for Arbitrary Node Layouts" Axioms 15, no. 1: 28. https://doi.org/10.3390/axioms15010028

APA Style

Provatidis, C. G. (2026). Isogeometric Transfinite Elements: A Unified B-Spline Framework for Arbitrary Node Layouts. Axioms, 15(1), 28. https://doi.org/10.3390/axioms15010028

Note that from the first issue of 2016, this journal uses article numbers instead of page numbers. See further details here.

Article Metrics

Back to TopTop