Skip to contents

Create a default M-spline model structure


  df = 10,
  degree = 3,
  bsmooth = TRUE,
  knots = NULL,
  bknot = 10,
  obstimes = NULL



Desired number of basis terms, or "degrees of freedom" in the spline. If knots is not supplied, the number of knots is then chosen to satisfy this.


Spline polynomial degree. Can only be changed from the default of 3 if bsmooth is FALSE.


If TRUE then the function is constrained to also have zero derivative and second derivative at the boundary.


Vector of knot locations. If not supplied, df has to be specified. One of two rules is then used to choose the knot locations. If bknots is specified, a set of equally spaced knots between zero and bknots is used. Otherwise if obstimes is supplied, the knots are chosen as equally spaced quantiles of obstimes.

The number of knots (excluding zero) is df - degree + 1 if bsmooth is TRUE, or df - degree - 1 otherwise.


Location of the final spline knot.


Vector of observation times whose quantiles will be used to choose knot locations


A list with fundamental components knots, degree, and bsmooth, as documented above.

The component df is also included, and derived as a consequence of the fundamental components.