You are not logged in. You can browse but not post. Login or Register by clicking 'Login or Register' at the top-right of this page. For more information on Statalist, see the FAQ.
I have a Stata/Mata implementation that I would be happy to share.
The current ado and help files are still research/development code. Although they have passed a set of internal numerical and reproducibility tests, they have not yet undergone extensive independent validation. Feedback, test cases, and comparisons with other implementations would therefore be very welcome.
The appropriate routines depend on the problem you wish to solve. If you could briefly describe your application—including the spline space, knot structure, continuity conditions, and any shape restrictions—I will try to provide the most relevant code.
The current implementation supports:
Piecewise-linear splines, including monotonicity, convexity, and concavity constraints, as well as optional free-knot estimation.
Polynomial multi-degree B-splines (MDB-splines), with interval-specific polynomial degrees and knot-specific continuity orders.
Multi-degree Tchebycheffian B-splines (MDTB-splines), with local spaces specified through the characteristic roots of constant-coefficient linear differential operators. This provides a common framework for polynomial, exponential, and trigonometric spline spaces.
Conditional on a fixed basis and fixed knots, the coefficient problem is formulated and solved as a finite linear program. Free-knot estimation is currently available for the piecewise-linear basis and uses deterministic profile searches with multiple starting values. The resulting knot locations should therefore be interpreted as local solutions rather than guaranteed global optima.
Shape constraints are imposed through linear constraints and adaptive numerical separation, depending on the basis. In particular, shape verification for the MDTB basis is numerical rather than based on a formal interval-arithmetic certificate.
If you let me know what kind of spline problem you are considering, I will be happy to share the relevant ado and help files and assist as much as I can.
Comment