July 29, 2019: Links to function documentations are broken; file names are reacting adversely with Jekyll rules. Will fix this soon.
This package provides tools for computing the dimension of smooth piecewise polynomial splines over simplicial complexes. In particular, we consider splines spaces of mixed (or non-uniform) degrees and orders of smoothness.
The dimension of uniform degree spline spaces can be computed (or estimated) using the tools of homological algebra developed in the context of splines in the seminal paper of Billera [1]. Building a short exact sequence of chain complexes, [1] showed that the spline space dimension is equal to the dimension of a graded piece of a particular homology module. A modification that improved upon [1] and yielded simpler chain complexes was presented by Schenck and Stillman [2] and used to prove that the dimension formula derived by Schumaker [3] holds in sufficiently high degree. In particular, this demonstrated that the homological algebra approach of the former agrees with the Bernstein–Bezier approach of the latter. These modified chain complexes were further studied, for instance, in [4-6].
This package is meant to accompany the report by Toshniwal and Hughes [7] which generalizes the Schenck-Stillman chain complexes to the case of mixed degree splines or non-uniform degree splines. This package has been derived from ‘AlgebraicSplines’ written by Mike DiPasquale.
[1] L.J. Billera, Homology of smooth splines: Generic triangulations and a conjecture of Strang, Trans. Amer. Math. Soc. 310 (1988).
[2] Hal Schenck and Mike Stillman. Local cohomology of bivariate splines, J. Pure Appl. Algebra 117/118 (1997).
[3] L.L. Schumaker, On the Dimension of Spaces Of Piecewise Polynomials in Two Variables, in: Multivariate Approximation Theory, Birkhäuser, Basel, 1979.
[4] A. Geramita and H. Schenck, Fat points, inverse systems, and piecewise polynomial functions, J. of Algebra 204(1) (1998).
[5] Hal Schenck, A spectral sequence for splines, Adv. in Appl. Math. 19 (1997).
[6] B. Mourrain, N. Villamizar, Homological techniques for the analysis of the dimension of triangular spline spaces, J. of Symb. Comp. 50 (2013).
[7] D. Toshniwal, T.J.R. Hughes, Polynomial splines of non-uniform degree on triangulations: Combinatorial bounds on the dimension, in Computer Aided Geometric Design (2019; to appear).
We reproduce two examples from [7] in the following. The first example (Example 2, [7]) features a triangulation with two isolated interior vertices.
i1 : a = 0;b = 20; |
i3 : V = {{0/1,0/1}, {1/1,0/1}, {1/1,1/1}, {0/1,1/1}, {1/4,1/3}, {3/4,2/3}}; |
i4 : F = {{0,1,4}, {0,3,4}, {1,2,5}, {1,3,5}, {2,3,5}, {1,3,4}}; |
i5 : E = {{0,4}, {1,4}, {3,4}, {1,5}, {2,5}, {3,5}, {1,3}}; |
i6 : degD = {3, 3, 0, 1, 0, 2}; |
i7 : r = {0, 0, 0, 2, 3, 2, 1}; |
i8 : homologyDimensionTable(a,b,{V,F,{E,r},degD}) +-------------------------+-+-+-+-+-+--+--+--+--+---+---+---+---+---+---+---+---+---+---+---+---+ o8 = |Degree |0|1|2|3|4|5 |6 |7 |8 |9 |10 |11 |12 |13 |14 |15 |16 |17 |18 |19 |20 | +-------------------------+-+-+-+-+-+--+--+--+--+---+---+---+---+---+---+---+---+---+---+---+---+ |H_1(I) (idealsComplex) |0|0|0|1|5|14|28|47|71|100|134|173|217|266|320|379|443|512|586|665|749| +-------------------------+-+-+-+-+-+--+--+--+--+---+---+---+---+---+---+---+---+---+---+---+---+ |H_0(I) (-------------) |0|0|0|0|0|0 |0 |0 |0 |0 |0 |0 |0 |0 |0 |0 |0 |0 |0 |0 |0 | +-------------------------+-+-+-+-+-+--+--+--+--+---+---+---+---+---+---+---+---+---+---+---+---+ |H_2(C) (cellularComplex) |0|0|0|1|3|6 |10|15|21|28 |36 |45 |55 |66 |78 |91 |105|120|136|153|171| +-------------------------+-+-+-+-+-+--+--+--+--+---+---+---+---+---+---+---+---+---+---+---+---+ |H_1(C) (---------------) |0|0|0|0|0|0 |0 |0 |0 |0 |0 |0 |0 |0 |0 |0 |0 |0 |0 |0 |0 | +-------------------------+-+-+-+-+-+--+--+--+--+---+---+---+---+---+---+---+---+---+---+---+---+ |H_0(C) (---------------) |0|0|0|0|0|0 |0 |0 |0 |0 |0 |0 |0 |0 |0 |0 |0 |0 |0 |0 |0 | +-------------------------+-+-+-+-+-+--+--+--+--+---+---+---+---+---+---+---+---+---+---+---+---+ |H_2(Q) (splineComplex) |0|0|0|2|8|20|38|62|92|128|170|218|272|332|398|470|548|632|722|818|920| +-------------------------+-+-+-+-+-+--+--+--+--+---+---+---+---+---+---+---+---+---+---+---+---+ |H_1(Q) (-------------) |0|0|0|0|0|0 |0 |0 |0 |0 |0 |0 |0 |0 |0 |0 |0 |0 |0 |0 |0 | +-------------------------+-+-+-+-+-+--+--+--+--+---+---+---+---+---+---+---+---+---+---+---+---+ |H_0(Q) (-------------) |0|0|0|0|0|0 |0 |0 |0 |0 |0 |0 |0 |0 |0 |0 |0 |0 |0 |0 |0 | +-------------------------+-+-+-+-+-+--+--+--+--+---+---+---+---+---+---+---+---+---+---+---+---+ |dim(S) (splineComplex) |0|0|0|2|8|20|38|62|92|128|170|218|272|332|398|470|548|632|722|818|920| +-------------------------+-+-+-+-+-+--+--+--+--+---+---+---+---+---+---+---+---+---+---+---+---+ |Eul. ch. (-----------) |0|0|0|2|8|20|38|62|92|128|170|218|272|332|398|470|548|632|722|818|920| +-------------------------+-+-+-+-+-+--+--+--+--+---+---+---+---+---+---+---+---+---+---+---+---+ |dim(M) (splineModule) |0|0|0|2|8|20|38|62|92|128|170|218|272|332|398|470|548|632|722|818|920| +-------------------------+-+-+-+-+-+--+--+--+--+---+---+---+---+---+---+---+---+---+---+---+---+ |
The second example (Example 3, [7]) features a triangulation with 3 interior vertices that share 3 edges between them. Notice that H0(I) does not have finite length in the mixed degree setting; nevertheless, the dimension of the spline space stabilizes for m ≥5.
i9 : a = 0; b = 20; |
i11 : V = {{-230/389,-1637/7625}, {-557/1706,1460/1447}, {-2109/1532,1114/935}, {1406/383,-1309/412}, {4288/2033,655/139}, {-2497/633,-3158/1011}, {-3515/766,2228/561}}; |
i12 : F = {{0,1,2}, {2,4,6}, {0,1,3}, {1,3,4}, {1,2,4}, {0,2,5}, {2,5,6}, {0,3,5}}; |
i13 : E = {{0,1}, {1,2}, {0,2}, {2,4}, {2,6}, {1,3}, {0,3}, {1,4}, {2,5}, {0,5}}; |
i14 : degD = {0, 1, 1, 1, 1, 1, 1, 1}; |
i15 : r = {1, 1, 1, 1, 1, 1, 1, 1, 1, 1}; |
i16 : homologyDimensionTable(a,b,{V,F,{E,r},degD}) +-------------------------+-+-+-+-+--+--+--+---+---+---+---+---+---+---+---+---+---+---+----+----+----+ o16 = |Degree |0|1|2|3|4 |5 |6 |7 |8 |9 |10 |11 |12 |13 |14 |15 |16 |17 |18 |19 |20 | +-------------------------+-+-+-+-+--+--+--+---+---+---+---+---+---+---+---+---+---+---+----+----+----+ |H_1(I) (idealsComplex) |0|0|0|1|9 |24|47|77 |114|158|209|267|332|404|483|569|662|762|869 |983 |1104| +-------------------------+-+-+-+-+--+--+--+---+---+---+---+---+---+---+---+---+---+---+----+----+----+ |H_0(I) (-------------) |0|0|3|6|6 |6 |7 |8 |9 |10 |11 |12 |13 |14 |15 |16 |17 |18 |19 |20 |21 | +-------------------------+-+-+-+-+--+--+--+---+---+---+---+---+---+---+---+---+---+---+----+----+----+ |H_2(C) (cellularComplex) |0|1|3|6|10|15|21|28 |36 |45 |55 |66 |78 |91 |105|120|136|153|171 |190 |210 | +-------------------------+-+-+-+-+--+--+--+---+---+---+---+---+---+---+---+---+---+---+----+----+----+ |H_1(C) (---------------) |0|0|0|0|0 |0 |0 |0 |0 |0 |0 |0 |0 |0 |0 |0 |0 |0 |0 |0 |0 | +-------------------------+-+-+-+-+--+--+--+---+---+---+---+---+---+---+---+---+---+---+----+----+----+ |H_0(C) (---------------) |1|2|3|4|5 |6 |7 |8 |9 |10 |11 |12 |13 |14 |15 |16 |17 |18 |19 |20 |21 | +-------------------------+-+-+-+-+--+--+--+---+---+---+---+---+---+---+---+---+---+---+----+----+----+ |H_2(Q) (splineComplex) |0|1|3|7|19|39|68|105|150|203|264|333|410|495|588|689|798|915|1040|1173|1314| +-------------------------+-+-+-+-+--+--+--+---+---+---+---+---+---+---+---+---+---+---+----+----+----+ |H_1(Q) (-------------) |0|0|0|2|1 |0 |0 |0 |0 |0 |0 |0 |0 |0 |0 |0 |0 |0 |0 |0 |0 | +-------------------------+-+-+-+-+--+--+--+---+---+---+---+---+---+---+---+---+---+---+----+----+----+ |H_0(Q) (-------------) |1|2|0|0|0 |0 |0 |0 |0 |0 |0 |0 |0 |0 |0 |0 |0 |0 |0 |0 |0 | +-------------------------+-+-+-+-+--+--+--+---+---+---+---+---+---+---+---+---+---+---+----+----+----+ |dim(S) (splineComplex) |0|1|3|7|19|39|68|105|150|203|264|333|410|495|588|689|798|915|1040|1173|1314| +-------------------------+-+-+-+-+--+--+--+---+---+---+---+---+---+---+---+---+---+---+----+----+----+ |Eul. ch. (-----------) |1|3|3|5|18|39|68|105|150|203|264|333|410|495|588|689|798|915|1040|1173|1314| +-------------------------+-+-+-+-+--+--+--+---+---+---+---+---+---+---+---+---+---+---+----+----+----+ |dim(M) (splineModule) |0|1|3|7|19|39|68|105|150|203|264|333|410|495|588|689|798|915|1040|1173|1314| +-------------------------+-+-+-+-+--+--+--+---+---+---+---+---+---+---+---+---+---+---+----+----+----+ |