mcmc_freundlichLM {adsoRptionMCMC} | R Documentation |
MCMC Analysis for Freundlich Isotherm Linear Model
Description
Performs Bayesian parameter estimation using Markov Chain Monte Carlo (MCMC) to estimate the parameters of the Freundlich isotherm based on its linearized form: log(Qe) = log(Kf) + (1/n)log(Ce) This method provides a probabilistic interpretation of the model parameters and accounts for their uncertainties. It supports multiple MCMC chains and computes convergence diagnostics (Gelman-Rubin).
Arguments
Ce |
Numeric vector of equilibrium concentrations. |
Qe |
Numeric vector of adsorbed amounts. |
burnin |
Integer specifying the number of burn-in iterations (default is 1000). |
mcmc |
Integer specifying the total number of MCMC iterations (default is 5000). |
thin |
Integer specifying the thinning interval (default is 10). |
verbose |
Integer controlling the frequency of progress updates (default is 100). |
plot |
Logical; if TRUE, trace and density plots of the MCMC chains are shown (default is FALSE). |
n_chains |
Number of independent MCMC chains (default = 2). |
seed |
Optional integer for reproducibility. |
Value
A list containing:
- mcmc_results
An object of class
mcmc.list
containing posterior samples from all MCMC chains. Each chain includes samples of the intercept and slope.- Kf_mean
Posterior mean estimate of the Freundlich constant (Kf).
- n_mean
Posterior mean estimate of the Freundlich exponent (n).
- logKf_mean
Posterior mean of (log(Kf)) from the first MCMC chain.
- inv_n_mean
Posterior mean of (1/n) (the slope) from the first MCMC chain.
- logKf_sd
Posterior standard deviation of (log(Kf)), quantifying uncertainty in the intercept estimate.
- inv_n_sd
Posterior standard deviation of (1/n), quantifying uncertainty in the slope estimate.
- logKf_ci
95% credible interval for (log(Kf)) from the first MCMC chain, representing the posterior uncertainty in the intercept.
- inv_n_ci
95% credible interval for (1/n) from the first MCMC chain, representing the posterior uncertainty in the slope.
- gelman_diag
Gelman-Rubin diagnostic output from
coda::gelman.diag()
, used to assess convergence of the multiple MCMC chains. A potential scale reduction factor (PSRF) close to 1 indicates good convergence.- mcmc_summary
Summary statistics of the first MCMC chain, including means, standard deviations, quantiles, and sample sizes for each parameter.
Author(s)
Paul Angelo C. Manlapaz
References
Gilks, W. R., Richardson, S., & Spiegelhalter, D. J. (1995). Markov Chain Monte Carlo in Practice. Chapman and Hall/CRC.
Examples
Ce <- c(0.01353, 0.04648, 0.13239, 0.27714, 0.41600, 0.63607, 0.80435, 1.10327, 1.58223)
Qe <- c(0.03409, 0.06025, 0.10622, 0.12842, 0.15299, 0.15379, 0.15735, 0.15735, 0.16607)
mcmc_freundlichLM(Ce, Qe, burnin = 1000, mcmc = 5000, thin = 10,
verbose = 100, plot = TRUE, n_chains = 2, seed = 123)