Dear all, I need to compute tensor product of B-spline defined over equi-spaced break-points. I wrote my own program (it works in a 2-dimensional setting)
library(splines) # set the break-points Knots = seq(-1,1,length=10) # number of splines M = (length(Knots)-4)^2 # short cut to splineDesign function bspline = function(x) splineDesign(Knots,x,outer.ok = T) # bivariate tensor product of bspline btens = function(x) t(bspline(x[1]))%*%bspline(x[2]) # numebr of points to plot ng = 51 # create vectors for plotting xgr = seq(-1,1,length=ng) xgr2 = expand.grid(xgr,xgr) # generate random coef. of linear combination bet = rnorm(M) # create matrix for contour-type plot Bx = apply(xgr2,1,btens) Bmat = matrix(t(Bx)%*%bet,ng) # plot the result contour(xgr,xgr,Bmat) persp(xgr,xgr,Bmat,theta=15) any of you have a better idea (ie more efficient)? Thanks in advance, Patrizio Frederic +------------------------------------------------- | Patrizio Frederic | Research associate in Statistics, | Department of Economics, | University of Modena and Reggio Emilia, | Via Berengario 51, | 41100 Modena, Italy | | tel: +39 059 205 6727 | fax: +39 059 205 6947 | mail: [EMAIL PROTECTED] +------------------------------------------------- ______________________________________________ R-help@r-project.org mailing list https://stat.ethz.ch/mailman/listinfo/r-help PLEASE do read the posting guide http://www.R-project.org/posting-guide.html and provide commented, minimal, self-contained, reproducible code.