The results of the first two models should be identical (up to numerical precision)
model<-model()
seas<-splines_regular("s", 12, knots=c(0:11))
add(model, llt)
add(model, seas)
add(model, n)
rslt<-estimate(model, s)
sa2<-result(rslt, "ssf.smoothing.components")
summary(sa1[,2]-sa2[,2])
#> Min. 1st Qu. Median Mean
#> -0.0000003098722 -0.0000000440156 -0.0000000004641 0.0000000002138
#> 3rd Qu. Max.
#> 0.0000000426163 0.0000002309826
The splines are computed on 8 points (instead of 12)
model<-model()
seas<-splines_regular("s", 12, knots=c(1,2,6,7,8,9,10,11))
add(model, llt)
add(model, seas)
add(model, n)
rslt<-estimate(model, s)
sa3<-result(rslt, "ssf.smoothing.components")
matplot(cbind(sa1[301:336,2],sa2[301:336,2],sa3[301:336,2]), type='l', ylab="Seasonal")