biocharkit 0.3.0
- New TGA module:
read_tga_txt(): defensive plain-text reader for raw TGA
exports (temperature, time, weight columns), following the same
readLines()/strsplit() approach as
read_ftir_txt()/read_xrd_txt().
tga_normalize(): rescale a raw mass column (e.g. mg) to
percent of initial mass.
tga_dtg(): smoothed derivative thermogravimetric (DTG)
curve via stats::smooth.spline(), rather than a raw finite
difference of noisy instrument data.
find_dtg_peaks(): automatic local-maxima peak picking
on a DTG curve with a prominence filter, mirroring
find_ftir_peaks().
tga_decomposition_reference() /
assign_dtg_peaks(): reference table of typical
lignocellulosic decomposition temperature ranges (moisture,
hemicellulose, cellulose, lignin) and a matcher for observed DTG peaks,
mirroring ftir_band_reference() /
assign_ftir_peaks().
tga_stages(): reads moisture/volatile-matter/ash
percentages directly off a TGA curve at three temperature breakpoints
and hands them to the existing proximate_analysis() for
fixed-carbon-by- difference, so a TGA-derived proximate analysis gets
the same 100%-sum check as a gravimetric one.
tga_stages_batch(): tga_stages() applied
per sample ID across a long-format multi-sample data frame, mirroring
fit_isotherm_batch() /
fit_kinetics_batch().
tga_kinetics_kissinger(): non-isothermal single-step
kinetics (activation energy and pre-exponential factor) from DTG peak
temperatures at several heating rates, following Kissinger (1957) doi:10.1021/ac60131a045.
Returns a plain lm-backed fit object, so
fit_confint() works on it directly like any other fit in
this package.
plot_tga(): base-graphics dual-axis TG/DTG plot, usable
with the existing save_tiff() for 600 dpi export.
biocharkit 0.2.0
- New isotherm models:
fit_temkin(),
fit_dr() (Dubinin-Radushkevich, with mean free energy
E), fit_sips().
- New kinetics models:
fit_elovich(),
fit_intraparticle() (Weber-Morris).
- Thermodynamics:
fit_vant_hoff() computes deltaH,
deltaS, and deltaG from equilibrium distribution coefficients across
temperatures.
fit_confint(): confidence intervals for any
isotherm/kinetics/van’t Hoff fit from this package, with an automatic
fallback to a Wald interval if profiling fails.
- Batch fitting:
fit_isotherm_batch() and
fit_kinetics_batch() fit a model separately per group
(e.g. per sample ID), skipping groups that fail to converge with a
warning instead of aborting the whole batch.
- FTIR:
baseline_correct() (linear or rolling-minimum
baseline) and find_ftir_peaks() (automatic local-maxima
peak picking with a prominence filter).
- XRD:
xrd_deconvolve(), a simplified simultaneous
multi-Gaussian peak fit that also returns a crystallinity index.
bet_surface_area(): multi-point BET surface area from
gas adsorption data.
- Proximate/ultimate analysis:
pct_mass_change(),
proximate_analysis() (fixed carbon by difference),
ultimate_ratios() (H/C, O/C, N/C atomic ratios for Van
Krevelen analysis).
- New vignette,
vignette("biocharkit-intro"), walking
through a full synthetic-data analysis using every function in the
package.
- Bugfix:
find_ftir_peaks() incorrectly rejected a local
maximum that fell exactly between two grid points (a common case when a
peak center doesn’t align with the sampling interval), due to requiring
a strictly unique maximum within the search window. Tied/plateau maxima
are now correctly collapsed to a single peak at their midpoint.
biocharkit 0.1.0
- Initial release.
- Sample ID parsing:
parse_sbc_id().
- Data import:
read_ftir_txt(),
read_xrd_txt().
- Adsorption:
qe_batch(),
removal_efficiency().
- Isotherms:
fit_langmuir(),
fit_freundlich() (nonlinear with linearised fallback).
- Kinetics:
fit_pfo(), fit_pso().
- FTIR:
ftir_band_reference(),
assign_ftir_peaks(),
functional_group_density().
- XRD:
xrd_crystallinity_index().
- Statistics:
correlation_matrix().
- Plotting:
plot_isotherm(),
plot_kinetics(), plot_ftir_spectrum(),
save_tiff().
- Synthetic example dataset
sbc_example for demonstration
and testing.