Senhores, segue o código rodando. O objeto "band" redundante foi alterado pra "ver".
########################################################################
require(raster); require(sp)
# RasterLayer inventado
r <- raster(nrows=10, ncols=10)
r <- setValues(r, 1:ncell(r))
plot(r)
band2<- as(r, 'SpatialGridDataFrame') ### transforma em SpatialGridDataFrame
##Função para conversão DN para radiância - LISS III ---------------------------
radconvL<-function(x, band = 2)
{
BAND <- c("2", "3", "4", "5")
ver <- pmatch(band, BAND)
stop("invalid band")
Lmin = 0
Qmax = 127
x <- as.vector(as.matrix(x))
results <- x
if(band == 2) {
Lmax <- 120.64
} else if(band == 3) {
Lmax <- 151.31
} else if(band == 4) {
Lmax <- 157.57
} else if(band == 5) {
Lmax <- 69.03
}
x <- Lmin + ((Lmax-Lmin)*x)/Qmax
if (class(results) == "SpatialGridDataFrame")
results@data[, 1] <- x
else if (is.data.frame(x))
results <- data.frame(matrix(x, nrow = nrow(results),
ncol = ncol(results)))
else results <- x
print(paste(band, Lmax))
print(results)
return(results)
}
######--
teste2<-radconvL(band2, band = 2)
teste2<-radconvL(band2, band = 3)