R/predict_update_km_parallel.R

Defines functions predict_update_km_parallel

Documented in predict_update_km_parallel

predict_update_km_parallel <- function(newXmean,newXvar,newXvalue, Sigma.r,
		newdata.oldmean,newdata.oldsd,kn){
			
	chol.Sigma.r <- NULL
	chol.Sigma.r <- try(chol(Sigma.r),TRUE)
	if(!is.numeric(chol.Sigma.r)) return(list(error=TRUE))
	
	lambda_nplus.r <- kn %*% chol2inv(chol.Sigma.r)
	newXdiff <- matrix(newXvalue - newXmean,ncol=1)
	
	predict_mean <- newdata.oldmean + lambda_nplus.r %*% newXdiff 
	predict_var <- pmax(0,newdata.oldsd*newdata.oldsd - rowSums(lambda_nplus.r * kn))
		
	predict_sd <- sqrt(predict_var)
	
	output.list <- list(mean = predict_mean,sd=predict_sd, lambda=lambda_nplus.r)
	return(output.list)
}

Try the KrigInv package in your browser

Any scripts or data that you put into this service are public.

KrigInv documentation built on Sept. 9, 2022, 5:08 p.m.