textileFlame

Analysis and reporting of textile vertical flame tests (afterflame time, afterglow time, char length), as obtained with methods such as ASTM D6413.

Version 0.1.0: submission candidate; not yet accepted by CRAN.

What it does

Component Function(s)
Validation on import (units, negatives, duplicates, status, batches) flame_data(), validate_flame_data()
Summaries by treatment, direction, laundering and edition summarize_flame(), summarize_observations()
Treatment vs control with batch-level replication compare_treatments()
Missing / censored observations kept distinct from measurements status columns, censored = argument
User-supplied acceptance rules with their source flame_criteria(), evaluate_criteria()
Plots and reproducible Markdown report plot_specimens(), plot_comparison(), flame_report()

It deliberately does not assume any pass/fail threshold, implement the test procedure, or measure char length from images. Consult the full edition of the method you used. Results describe performance under a specified laboratory exposure and do not by themselves establish real-world fire safety.

Quick start

library(textileFlame)

fd <- flame_data(flame_example(), control = "Untreated")
summarize_flame(fd, endpoint = "char_length")
compare_treatments(fd, endpoint = "afterflame")
compare_treatments(fd, endpoint = "char_length", censored = "bound")

The bundled data are synthetic.

Development

install.packages(c("devtools", "roxygen2", "testthat", "knitr", "rmarkdown"))
devtools::document()   # generates man/ pages and NAMESPACE from the roxygen comments
devtools::test()
devtools::check()      # aim for 0 errors, 0 warnings, 0 notes

Interpretation

Comparisons require every recorded stratum and independent treatment groups. Unknown batch identities suppress default batch-level inference. Censoring is an explicit lower-bound analysis convention, not an automatic classification of every completely consumed specimen or an ASTM reporting requirement. Unit normalization does not establish conformity with either standard unit system. All bundled examples are synthetic; laboratory validation is separate.