Learn R Programming

AdsorpR (version 0.1.0)

nonlinear_bet: Non-linear BET Model

Description

The non-linear BET isotherm extends the Langmuir model to multilayer adsorption and is used to evaluate surface area and porosity of adsorbents. It fits the model directly using non-linear least squares estimation.

The BET equation is expressed as:

$$Q = \frac{Q_m \cdot C_b \cdot C_e}{(C_s - C_e) \left(1 + (C_b - 1) \cdot \frac{C_e}{C_s} \right)}$$

where \(Q\) is the amount adsorbed, \(C_e\) is the equilibrium concentration, \(C_s\) is the saturation concentration, \(Q_m\) is the monolayer adsorption capacity, and \(C_b\) is the BET constant.

The model uses non-linear regression to estimate parameters.

Usage

nonlinear_bet(Ce, Qe, Cs = max(Ce) * 1.1)

Value

A named list of BET parameters and model details, including estimated parameters, model statistics, and a diagnostic plot.

Arguments

Ce

Numeric vector of equilibrium concentrations.

Qe

Numeric vector of amount adsorbed.

Cs

Saturation concentration (default is 110% of the maximum equilibrium concentration).

See Also

Other nonlinear models: nonlinear_freundlich(), nonlinear_langmuir(), nonlinear_temkin()

Examples

Run this code
Ce <- c(1, 2.5, 4, 5.5, 7)
Qe <- c(0.4, 1.0, 1.7, 2.3, 2.7)
result <- nonlinear_bet(Ce, Qe)
print(result$`BET Qm (mg/g)`)
print(result$`BET Cb`)
print(result$AIC)
print(result$`Pseudo R2`)
print(result$Plot)

Run the code above in your browser using DataLab