This function sets up and runs an analysis pipeline for Hmsc models. It includes steps for environment setup, loading packages, managing SLURM refits, merging MCMC chains, convergence diagnostics, model summaries, and prepare input commands to use TensorFlow on GPU for compute variance partitioning and predicting latent factor for new spatial locations and response curves. This function must be followed by Mod_Prep_TF to prepare GPU-based TensorFlow batch scripts for variance partitioning and latent factor prediction.
Usage
Mod_Postprocess_1_CPU(
ModelDir = NULL,
Hab_Abb = NULL,
NCores = 8L,
FromHPC = TRUE,
EnvFile = ".env",
Path_Hmsc = NULL,
MemPerCpu = NULL,
Time = NULL,
FromJSON = FALSE,
GPP_Dist = NULL,
Tree = "Tree",
Samples = 1000L,
Thin = NULL,
NOmega = 1000L,
CVName = c("CV_Dist", "CV_Large"),
N_Grid = 50L,
UseTF = TRUE,
TF_use_single = FALSE,
LF_NCores = NCores,
LF_Temp_Cleanup = TRUE,
LF_Check = FALSE,
Temp_Cleanup = TRUE,
TF_Environ = NULL,
Pred_Clamp = TRUE,
Fix_Efforts = "q90",
Fix_Rivers = "q90",
Pred_NewSites = TRUE,
NCores_VP = 3
)
Arguments
- ModelDir
String. Path to the root directory of the fitted models without the trailing slash. Two folders will be created
Model_Fitted
andModel_Coda
to store merged model and coda objects, respectively.- Hab_Abb
Character. Habitat abbreviation indicating the specific SynHab habitat type for which data will be prepared. Valid values are
0
,1
,2
,3
,4a
,4b
,10
,12a
,12b
. For more details, see Pysek et al..- NCores
Integer specifying the number of parallel cores for parallelization. Default: 8 cores.
- FromHPC
Logical indicating whether the work is being done from HPC, to adjust file paths accordingly. Default:
TRUE
.- EnvFile
Character. Path to the environment file containing paths to data sources. Defaults to
.env
.- Path_Hmsc
String. Path for the Hmsc-HPC.
- MemPerCpu
String. Memory per CPU allocation for the SLURM job. Example:
32G
for 32 gigabytes. Defaults toNULL
. If not provided, the function will throw an error.- Time
String. Duration for which the job should run. Example:
01:00:00
for one hour. If not provided, the function will throw an error.- FromJSON
Logical. Indicates whether to convert loaded models from JSON format before reading. Defaults to
FALSE
.- GPP_Dist
Integer specifying the distance in kilometers between knots for GPP models.
- Tree
Character string specifying if phylogenetic tree was used in the model. Valid values are "Tree" or "NoTree". Default is "Tree".
- Samples
Integer specifying the value for the number of MCMC samples in the selected model. Defaults to 1000.
- Thin
Integer specifying the value for thinning in the selected model.
- NOmega
An integer specifying the number of species to be sampled for the
Omega
parameter transformation. Defaults to 100.- CVName
Character vector specifying the name of the column(s) in the model input data (see Mod_PrepData and GetCV) to be used to cross-validate the models. The function allows the possibility of using more than one way of assigning grid cells into cross-validation folders. If multiple names are provided, separate cross-validation models will be fitted for each column. Currently, there are three cross-validation strategies, created using the Mod_PrepData:
CV_SAC
,CV_Dist
, andCV_Large
(see GetCV).- N_Grid
Integer specifying the number of points along the gradient for continuous focal variables. Defaults to 50. See Hmsc::constructGradient for more details.
- UseTF
Logical indicating whether to use TensorFlow for calculations. Defaults to TRUE.
- TF_use_single
Logical indicating whether to use single precision for the TF calculations. Defaults to
FALSE
.- LF_NCores
Integer specifying the number of cores to use for parallel processing. Defaults to 8.
- LF_Temp_Cleanup
Logical indicating whether to delete temporary files in the
Temp_Dir
after finishing the LF predictions.- LF_Check
Logical. If TRUE, the function checks if the output files are already created and valid. If FALSE, the function will only check if the files exist without checking their integrity. Default is
FALSE
.- Temp_Cleanup
logical, indicating whether to clean up temporary files. Defaults to
TRUE
.- TF_Environ
Character string specifying the path to the Python environment. Defaults to NULL. This argument is required if
UseTF
is TRUE.- Pred_Clamp
Logical indicating whether to clamp the sampling efforts at a single value. Defaults to
TRUE
. IfTRUE
, theFix_Efforts
argument must be provided.- Fix_Efforts
Numeric or character. Defines the value to fix sampling efforts less than the provided value. If numeric, the value is directly used (log10 scale). If character, it can be
median
,mean
,max
, orq90
(q0% Quantile). Usingmax
can reflect extreme values caused by rare, highly sampled locations (e.g., urban centers or popular natural reserves). While using 90% quantile avoid such extreme grid cells while still capturing areas with high sampling effort. This argument is mandatory whenPred_Clamp
is set toTRUE
.- Fix_Rivers
Numeric or character. Similar to
Fix_Efforts
, but for fixing the length of rivers. If numeric, the value is directly used (log10 scale). If character, it can bemedian
,mean
,max
,q90
(90% quantile). It can be alsoNULL
for not fixing the river length predictor. Defaults toq90
.- Pred_NewSites
Logical indicating whether to predict habitat suitability at new sites. Default:
TRUE
. Note: This parameter is temporary and will be removed in future updates.- NCores_VP
Integer specifying the number of cores to use for variance partitioning. Defaults to 3.