Data and code from: Size-resolved particle dry deposition velocities in a controlled spherical chamber: Effects of turbulence, surface complexity, and particle physicochemical properties
Data files
Sep 25, 2026 version files 948.71 MB
-
CalibrationFile.zip
712 B
-
ChamberData.zip
948.60 MB
-
MATLABScripts.zip
72.34 KB
-
README.md
37.90 KB
Abstract
Accurate quantification of size-resolved particle dry deposition velocities (vd) is essential for improving predictions of aerosol atmospheric lifetimes, surface contamination, and pollutant transport. Existing field measurement approaches such as eddy covariance and direct surface collection face fundamental limitations in resolving vd across the submicron size range. Here we report controlled laboratory experiments conducted in a spherical aluminum chamber (diameter 91.44 cm, volume ~0.4 m³) to systematically investigate how turbulence intensity, additional surface complexity, and particle physicochemical properties govern size-resolved vd. Deposition velocities were determined independently using two complementary methods: a chamber concentration decay method and a direct filter collection and re-atomization method. Experiments were conducted with three particle types chosen to span a range of morphological and hygroscopic properties: sodium chloride (NaCl), polystyrene latex (PSL) spheres, and black carbon (BC) aggregates. Conditions inside the sphere were maintained at low relative humidity (RH < 30%) and a fan was run at varying speeds from 0 to 1500 revolutions per minute (RPM). Key findings include: (1) turbulence exerts a strong, size-dependent influence on vd, with the viscous sublayer thickness governing the crossover between diffusion- and turbulence-controlled regimes; (2) flow-permeable objects (simulated vegetation) enhance normalized vd by a factor of 10-15 for particles smaller than 50 nm relative to the empty-chamber baseline, substantially exceeding predictions based on surface area addition alone; (3) particle morphology accounts for up to an order-of-magnitude spread in vd at a given mobility diameter, with BC fractal aggregates exhibiting morphology-driven deviations from spherical particle behavior. The filter and decay methods agree within a factor of 2 across the PSL size range tested, validating the filter collection approach as a quantitative tool. These results provide direct experimental constraints on dry deposition parameterizations used in regional and global aerosol models and motivate future deployment of analogous filter-based methods for in-situ determination of ambient particle deposition velocities.
Dataset DOI: 10.5061/dryad.hdr7sqw1c
Journal: Journal of Aerosol Science
Authors: Hazelwood, Jonah; Meskhidze, Nicholas; Petters, Markus
All acronyms, abbreviations, and symbols used in this README and in the data files are defined in Abbreviations and Symbols at the end of this document.
Repository Structure
ChamberDeposition/
├── ChamberData.zip/ # All experimental data
│ ├── RPMExperimentsSorted/ # NaCl decay experiments at 0–1500 RPM
│ │ ├── 0/ # Sub-folders by RPM
│ │ ├── 50/
│ │ ├── 100/
│ │ ├── 250/
│ │ ├── 500/
│ │ ├── 700/
│ │ ├── 1000/
│ │ └── 1500/
│ ├── DiffChemComp/ # Multi-species experiments (BC, PSL, NaCl at 500 RPM)
│ ├── LengthenedInletExperiments/ # Short (3.8 cm) vs. long (31.9 cm) inlet comparison
│ ├── PanExperiments(500RPM)/ # Surface complexity experiments at 500 RPM
│ │ ├── Bonsai/ # Sub-folders by surface configuration
│ │ ├── Bush/
│ │ ├── Full Grass/
│ │ ├── Half Grass/
│ │ ├── Large Pan/
│ │ ├── None/
│ │ └── Small Pan/
│ ├── PSLCalib/ # PSL calibration standards, one subfolder per PSL size
│ │ ├── NEWPSLAirCalib195/ # 195 nm PSL calibration
│ │ └── PSLAirCalib170/ # 170 nm PSL calibration
│ └── PSLIndividBG/ # PSL filter deposition experiments with backgrounds
│
├── CalibrationFile.zip/
│ └── PSLCalibrationCoeffs195_multiTol_equalWeight.mat # Saved PSL calibration coefficients
│
└── MATLABScripts.zip/ # All analysis and figure scripts
├── RPMExperimentsFinalFigure.m
├── ustarandlaminarlayerfigure.m
├── vdvsSc.m
├── vdvsDiff23.m
├── LengthenedInletExperiments.m
├── PanExperimentsNormalized.m
├── filterschemcompmodelsandstats.m
├── PSLCalibrationCurve.m
├── chambercoagulation.m
├── decayplotforsupp.m
├── setupDMA.m
├── cunningham.m
├── ztod.m
├── vtoz.m
└── DMAconfig.m
SMPS Data File Format
Every '.csv' file in 'ChamberData/' (all subfolders) uses the same comma-delimited format with one header row and 35 columns. Files are named 'YYYYMMDD_HHMM.csv', where the date and time are the local (U.S. Eastern) start time of the file. For example, '20260112_1003.csv' began at 10:03 local time on 12 January 2026.
Each file contains one SMPS cycle recorded at approximately 10 Hz (one row every ~0.1 s). A cycle consists of three phases, identified by the 'stateDMA1' column:
- HOLD (~10 s): the DMA voltage is held at the starting voltage of the scan
- SCAN (~120 s): the DMA voltage is stepped continuously through the scan range
- FLUSH (~10 s): the column is flushed at the end of the scan before the next file begins
The scanned voltage (and therefore diameter) range varies between experiment types to cover the diameters of interest. For example, '20260112_1003.csv' is a narrow scan spanning ≈205 to 185 nm.
The data acquisition software was written for a two-DMA, two-CPC system, but only one DMA (TSI 3081A) and one CPC (TSI 3772) were used in this study. The DMA2 columns are therefore placeholders, and the N2 columns are identical copies of the N1 columns. Only five columns are used by the analysis scripts; these are marked "Yes" below.
| Column | Description | Units | Used in analysis |
|---|---|---|---|
| Timestamp | Date and time of the record, ISO 8601 format (YYYY-MM-DDThh:mm:ss.sss) | U.S. Eastern local time | Yes |
| Unixtime | Seconds since 1970-01-01 00:00:00, computed from the local clock time as if it were UTC (see note below) | s | No |
| Int64time | Milliseconds since 0000-12-31 00:00:00 (Julia DateTime internal representation), computed from local clock time | ms | No |
| LapseTime | Elapsed time since the start of the file | s | No |
| stateDMA1 | DMA operating state. Categorical: HOLD = voltage held at scan start; SCAN = voltage scan in progress; FLUSH = end-of-scan flush | — | Yes |
| voltageSetDMA1 | DMA center-rod voltage setpoint | V | Yes |
| currentDiameterDMA1 | Electrical mobility diameter of singly charged particles selected at the current voltage setpoint | nm | Yes |
| stateDMA2, voltageSetDMA2, currentDiameterDMA2 | Second-DMA channel (not installed). State is always NONE; voltage and diameter are fixed placeholder values | — | No |
| RH1, RH2, RH3 | Relative humidity from system sensors 1–3 (logged for monitoring only) | % | No |
| T1, T2, T3 | Temperature from system sensors 1–3 (logged for monitoring only) | °C | No |
| RH4, T4 | Sensor channel 4 (not connected). Values are non-physical (large negative numbers) and should be ignored | — | No |
| TESet | Thermoelectric (TE) temperature controller setpoint (controller not used) | °C | No |
| TE1ReadT1, TE1ReadT2, TE2ReadT1, TE2ReadT2 | Temperature readbacks 1–2 from TE controllers 1–2 (not connected; all NaN) | °C | No |
| Tdsh2 | Dew point of the DMA2 sheath flow (DMA2 not installed; placeholder value) | °C | No |
| Tdsa2 | Dew point of the DMA2 sample (aerosol) flow (not connected; all NaN) | °C | No |
| InletTd | Inlet dew point (not connected; constant 0) | °C | No |
| ColumnAverageT, ColumnAverageTd | Column-average temperature and dew point (not computed; all NaN) | °C | No |
| BathSetT | Water bath temperature setpoint (bath not used) | °C | No |
| BathReadT1 | Water bath temperature readback (not connected; constant 0) | °C | No |
| N1cpcCount | CPC number concentration derived by the acquisition software from raw pulse counts at the logging rate | cm⁻³ | No |
| N1cpcSerial | CPC number concentration as reported by the CPC over its serial connection (updates ~1 Hz, so consecutive rows repeat) | cm⁻³ | Yes |
| N2cpcCount, N2cpcSerial | Second-CPC channels; identical copies of N1cpcCount and N1cpcSerial because only one CPC was used | cm⁻³ | No |
| Calibrate | Calibration-mode flag of the acquisition software. Logical (true/false); always false in this dataset | — | No |
Note on time columns: 'Timestamp' is U.S. Eastern local time (EST, UTC−5, or EDT, UTC−4, depending on the date), which can be confirmed from the start time in each file name. However, since these are controlled chamber experiments, the time duration of experiments is more pertinent than the actual time itself. 'Unixtime' and 'Int64time' were computed from this local clock time without a time-zone conversion, so they are not true UTC epoch times. To convert 'Unixtime' to true UTC epoch seconds, add 18,000 s (EST) or 14,400 s (EDT).
Missing and Placeholder Values
Missing values in the '.csv' files are written as 'NaN' ("not a number"). NaN values occur only in channels of the acquisition software whose sensor or controller was not installed or connected during these experiments. They do not represent lost or removed measurements. The following columns are NaN in every row: 'TE1ReadT1', 'TE1ReadT2', 'TE2ReadT1', 'TE2ReadT2', 'Tdsa2', 'ColumnAverageT', and 'ColumnAverageTd'.
Several other unconnected channels record placeholder values instead of NaN. These values carry no physical meaning:
- 'InletTd' and 'BathReadT1' are constant 0
- 'RH4' and 'T4' contain non-physical negative values
- All DMA2 columns are fixed placeholders, and the N2 columns duplicate N1
None of the NaN or placeholder columns are used by any analysis script. The five columns used in the analysis ('Timestamp', 'stateDMA1', 'voltageSetDMA1', 'currentDiameterDMA1', 'N1cpcSerial') contain no missing values.
Data Description
ChamberData/RPMExperimentsSorted/
NaCl particle decay experiments at eight fan speeds (0, 50, 100, 250, 500, 700, 1000, 1500 RPM). Each RPM subfolder contains one or more dated experiment subfolders, each holding '.csv' files from the SMPS (TSI 3081A DMA + TSI 3772 CPC). Each '.csv' includes a timestamp, DMA voltage, current mobility diameter, and CPC number concentration (see SMPS Data File Format for all columns). Experiments span particle diameters of 15–300 nm (15–200 nm used in final publication after exclusion of 300 nm). Multiple replicates are included per RPM condition.
Chamber parameters: Volume = 0.4077 m³, Surface area = 2.631 m², CPC dilution flow Q = 1.6667 × 10⁻⁵ m³/s.
ChamberData/DiffChemComp/
Multi-species comparison experiments at 500 RPM and RH < 30%. Contains decay data for black carbon (BC, generated via MISG soot generator), NaCl (TSI 3076 atomizer), and PSL (195 nm nominal diameter, TSI 3076 atomizer). File format is identical to RPMExperimentsSorted.
ChamberData/LengthenedInletExperiments/
Spatial homogeneity validation experiments using two SMPS inlets simultaneously: a short inlet (3.8 cm from the chamber wall) and a long inlet (31.9 cm, extending toward the chamber center). All experiments conducted at 500 RPM with NaCl particles. Subfolder structure mirrors RPMExperimentsSorted.
ChamberData/PanExperiments(500RPM)/
Surface complexity experiments conducted at 500 RPM. Contains one subfolder per surface configuration ('Bonsai', 'Bush', 'Full Grass', 'Half Grass', 'Large Pan', 'None', 'Small Pan'). Each configuration subfolder holds several experiment subfolders of SMPS '.csv' files, in the same format as RPMExperimentsSorted.
ChamberData/PSLCalib/
PSL calibration data, organized into one subfolder per PSL calibration size.
ChamberData/PSLCalib/NEWPSLAirCalib195/
PSL calibration data for 195 nm particles. Five solution concentration standards (2.61 × 10⁶ to 1.19 × 10⁷ particles mL⁻¹) are stored in subfolders 'sol2' through 'sol6'. Each subfolder contains '.csv' files from the SMPS while atomizing each standard. Used to build the origin-forced linear calibration curve (MAPE = 6.3%) linking SMPS-measured airborne concentration to known in-solution concentration.
ChamberData/PSLCalib/PSLAirCalib170/
PSL calibration data for 170 nm particles. Contains '.csv' files from the SMPS while atomizing 170 nm PSL solution standards.
ChamberData/PSLIndividBG/
PSL filter-based deposition velocity experiments at 170, 195, and 308 nm. Each PSL size has its own subfolder containing experiment runs ('DepositionScanning') and matched background filter measurements ('BgFilters'). '.csv' files follow the same SMPS format as above. The calibration file from 'CalibrationFile/' is required to convert filter wash concentrations to deposited particle counts.
CalibrationFile/
Contains the saved MATLAB '.mat' file 'PSLCalibrationCoeffs195_multiTol_equalWeight.mat', output by 'PSLCalibrationCurve.m'. Stores the 'AllFits' struct with calibration slope, MAPE, and tolerance settings. Referenced directly by 'filterschemcompmodelsandstats.m'.
Script Descriptions
All scripts use relative paths (e.g., '..\ChamberData\...') and should be run from within 'MATLABScripts/'. Scripts require MATLAB R2023b or later. The Statistics and Machine Learning Toolbox is required for 'norminv'.
Color palettes used throughout: Wong/Okabe–Ito colorblind-safe palette (Wong 2011, Nature Methods 8:441) for categorical comparisons; a custom sequential palette (viridis-like, blue → orange) for particle size series.
RPMExperimentsFinalFigure.m
Data: 'ChamberData/RPMExperimentsSorted/'
Output: Two 3×3 tiled figures:
- 'vd_vs_RPM_pub.png' — deposition velocity vs. fan speed (RPM) for 9 particle sizes (15–200 nm)
- 'vd_vs_sqrtRPM_pub.tif' — deposition velocity vs. √(RPM) for 9 particle sizes
Manuscript figures: Figure 4 (v_d vs. RPM); auxiliary √RPM figure
Description: Loads all NaCl decay experiments across 8 RPM conditions. For each experiment, identifies decay segments, extracts number concentration at each target diameter per SMPS sweep, computes ln(C_t/C_0) vs. time, and fits deposition velocity using:
v_d = −(V/S) × (ln(C_t/C_0) / t) − Q/S
Averages across replicates and plots mean ± 95% CI error bars. Each subplot corresponds to one particle diameter.
ustarandlaminarlayerfigure.m
Data: 'ChamberData/RPMExperimentsSorted/'
Output: Two-panel figure exported via 'exportgraphics'
- Panel (a): Friction velocity u* vs. fan speed (RPM)
- Panel (b): Viscous sublayer thickness δ vs. fan speed (RPM)
Manuscript figures: Figure 5
Description: Fits the Lai & Nazaroff (2000) Brownian diffusion model (v_d = u* × 0.084 × Sc⁻²/³) to measured v_d in the 15–50 nm size range using log-space OLS with slope fixed at −2/3. Derives per-replicate u* values and computes δ = 5ν/u* (viscous sublayer thickness). Reports mean ± 95% CI for each RPM. The 0 RPM condition is shown but excluded from the linear trend fit (r² = 0.84 above 250 RPM). Shaded bands show 95% CI propagated from u* uncertainty.
vdvsSc.m
Data: 'ChamberData/RPMExperimentsSorted/'
Output: Multi-panel figure (one panel per RPM) of v_d vs. Schmidt number (Sc) in log-log space, with fixed-slope (−2/3) fits overlaid
Manuscript figures: Figure S6 (Supplementary)
Description: Processes NaCl deposition data in the Brownian diffusion regime (15–50 nm), computes the particle Schmidt number Sc = ν/D_B (where D_B is the Brownian diffusion coefficient), and plots v_d vs. Sc on log-log axes. Each panel shows one fan speed. The fitted line has a slope fixed at −2/3 (L&N 2000 prediction); the intercept recovers u* for that condition. Color scheme: Okabe–Ito, one color per RPM.
vdvsDiff23.m
Data: 'ChamberData/RPMExperimentsSorted/'
Output: Multi-panel figure (one panel per RPM) of v_d vs. D_B^(2/3), demonstrating the proportionality predicted by the Brownian diffusion model
Manuscript figures: Figure S5 (Supplementary)
Description: Plots deposition velocity against the two-thirds power of the Brownian diffusion coefficient (D_B^(2/3)) for NaCl particles in the 15–50 nm size range. A straight line through the origin with slope u* × A × ν⁻²/³ is fitted to each fan speed panel, directly demonstrating the Sc⁻²/³ proportionality of the Lai & Nazaroff (2000) viscous sublayer model. The recovered friction velocity u* is annotated in each panel.
LengthenedInletExperiments.m
Data: 'ChamberData/LengthenedInletExperiments/'
Output: Single-panel figure comparing size-resolved v_d from the 3.8 cm and 31.9 cm inlets; summary statistics (Welch t-test p-values, Cohen's d) printed to the command window
Manuscript figures: Figure 3
Description: Loads NaCl decay experiments from both inlet configurations at 500 RPM and computes size-resolved deposition velocities across 15–300 nm. Plots mean v_d ± 95% CI for each inlet as separate data series with horizontal jitter for legibility. The script also computes and prints per-size Welch t-tests and Cohen's d to quantify the statistical significance and practical magnitude of any inter-inlet difference. Lin's CCC is reported in the manuscript (CCC = 0.917).
PanExperimentsNormalized.m
Data: 'ChamberData/RPMExperimentsSorted/500/' (baseline "None" condition) and 'ChamberData/PanExperiments(500RPM)/' (all surface complexity conditions)
Output: Single log-log figure of surface-area-normalized deposition velocity vs. particle diameter for seven surface configurations
Manuscript figures: Figure 6
Description: For each surface configuration, adds the object's geometric surface area to the chamber wall area (S_total = S_chamber + S_object) and computes v_d normalized to this total available surface area. Compares the empty chamber baseline against impermeable Pyrex pans (two sizes) and flow-permeable vegetation surrogates (decorative bonsai, decorative bush, artificial turf in full and half sections) at 500 RPM. Mean ± 95% CI error bars plotted for each condition. Okabe–Ito colors with distinct markers per condition.
Surface areas used (m²): None = 0, Small Pan = 0.24, Large Pan = 0.34, Bush = 1.138, Bonsai = 0.287, Full Grass = 0.499, Half Grass = 0.249.
filterschemcompmodelsandstats.m
Data: 'ChamberData/PSLIndividBG/', 'CalibrationFile/PSLCalibrationCoeffs195_multiTol_equalWeight.mat'
Script Dependencies: 'setupDMA.m', 'cunningham.m', 'ztod.m', 'vtoz.m', 'DMAconfig.m'
Output: Multi-panel comparison figures and statistical output (Lin's CCC, Passing–Bablok regression, TOST equivalence tests) for PSL deposition velocities from the chamber decay vs. filter collection methods; also generates model comparison plots with Lai & Nazaroff (2000) and Zhang et al. (2001) parameterizations for all three aerosol species
Manuscript figures: Figure 7; associated statistical summaries in text
Description: The primary multi-species and method-comparison script. Calculates v_d for PSL particles at 170, 195, and 308 nm using two independent methods: (1) chamber decay (exponential fit to SMPS time series) and (2) filter collection (re-atomization of deposited particles, calibrated with 'PSLCalibrationCurve.m' output). Applies DMA transfer function inversion to recover deposited particle concentrations from filter wash SMPS scans. Background filter concentrations subtracted per-experiment from the matched 'BgFilters' subfolder. Also overlays theoretical curves from L&N (2000) and Zhang et al. (2001) for comparison. Statistical agreement assessed via Lin's CCC, Passing–Bablok regression, and TOST equivalence testing.
PSLCalibrationCurve.m
Data: 'ChamberData/PSLCalib/NEWPSLAirCalib195/'
Output: Calibration curve figure; saves 'CalibrationFile/PSLCalibrationCoeffs195_multiTol_equalWeight.mat'
Manuscript figures: Figure 2; Figure S3 (Supplementary)
Description: Builds the origin-forced linear calibration curve (y = m·x) relating SMPS-measured airborne CPC concentration (#/cm³) to known in-solution PSL concentration (#/mL) for 195 nm particles across five dilution standards. Reads '.csv' files from each solution subfolder ('sol2'–'sol6'), extracts concentrations within ±5 nm of the 195 nm target diameter, and fits the slope using unweighted ordinary least squares through the origin. Reports MAPE (6.3%) as the fit quality metric. Saves the 'AllFits' struct for use by 'filterschemcompmodelsandstats.m'. Run this script before running 'filterschemcompmodelsandstats.m'.
chambercoagulation.m
Data: None (analytical calculation only — no external data files required)
Output: Two-panel figure:
- Panel (a): Brownian self-coagulation kernel K (× 10⁻⁹ cm³ s⁻¹) vs. particle diameter (10–300 nm) for BC, NaCl, and PSL
- Panel (b): Coagulation timescale τ_coag (hours) vs. particle diameter for each species at experimental number concentrations
Manuscript figures: Figure S1 (Supplementary)
Description: Computes the Fuchs (1964) transition-regime coagulation kernel across the 10–300 nm size range for three particle types (BC: ρ = 1800 kg/m³, NaCl: ρ = 2160 kg/m³, PSL: ρ = 1050 kg/m³) using experimental number concentrations (BC: 1665 cm⁻³, NaCl: 1420 cm⁻³, PSL: 1045 cm⁻³). Demonstrates that τ_coag ≫ τ_dep across all conditions, justifying neglect of coagulation losses in the mass balance. Air viscosity computed via Sutherland's law; mean free path from kinetic theory. No external data files are needed.
decayplotforsupp.m
Data: Single NaCl experiment folder within 'ChamberData/RPMExperimentsSorted/' (default path in script: 'RPMExperimentsSorted/500/0628exp2')
Output: 'lnC_decay_curves.png' — single-panel figure of ln(C_t/C_0) vs. time (min) for all particle sizes, with OLS decay fit lines overlaid
Manuscript figures: Figure S4 (Supplementary)
Description: Illustrates the linearized chamber decay method for one representative NaCl experiment. Loads a single experiment folder, identifies the first valid decay segment (≥3 SMPS sweeps), extracts number concentrations at 9 target diameters (15–200 nm), computes ln(C_t/C_0) for each size, and fits decay rate m using OLS through the origin. Derives v_d from m via: v_d = −(m + Q/V) × V/S. Reports slopes, v_d, and R² for each size to the command window. Color scheme: viridis-like sequential palette spanning blue (15 nm) to orange (200 nm).
DMA helper functions: DMAconfig.m, setupDMA.m, vtoz.m, ztod.m, cunningham.m
These five files are MATLAB functions, not standalone scripts. They are called by 'filterschemcompmodelsandstats.m' to perform the DMA transfer function inversion of the filter wash SMPS scans, and they must remain in 'MATLABScripts/'. They do not read any data files or produce figures. The DMA and transfer function framework follows DifferentialMobilityAnalyzers.jl (Petters, 2018, Aerosol Science and Technology, doi:10.1080/02786826.2018.1530724).
DMAconfig.m
Call: 'Lambda = DMAconfig(T, P, Qsa, Qsh, r1, r2, L, Leff, polarity, m, DMAtype)'
Description: Creates the DMA configuration structure 'Lambda' from these inputs:
- Temperature T (K) and pressure P (Pa)
- Sample flow Qsa and sheath flow Qsh (m³/s)
- Inner and outer electrode radii r1 and r2 (m), and column length L (m)
- Effective diffusion length Leff (m); set Leff = 0 to ignore diffusion losses
- Charge polarity ('+' or '−') and the maximum number of charges m
- DMA geometry ('cylindrical' or 'radial')
In addition to storing the inputs, it computes:
- The flow ratio β = Qsa/Qsh and the total flow
- The mean free path of air, λ = 66 nm × (101325/P) × (T/293.15)
- The dynamic viscosity of air μ from Sutherland's law (μ₀ = 1.716 × 10⁻⁵ Pa s at 273.15 K; Sutherland constant 110.4 K)
- The kinematic viscosity ν = μ·R·T/P (R = 287.05 J kg⁻¹ K⁻¹)
- The DMA geometric factor G (ln(r2/r1)/(2πL) for a cylindrical DMA)
setupDMA.m
Call: 'delta = setupDMA(Lambda, z1, z2, bins)'
Description: Builds the DMA inversion grid structure 'delta' between the mobility limits z1 and z2 (m² V⁻¹ s⁻¹) with the specified number of logarithmically spaced bins. It returns:
- Mobility bin edges and midpoints ('Ze', 'Z')
- The corresponding singly charged mobility diameters in nm ('De', 'Dp', via 'ztod.m')
- The logarithmic bin widths ('DlnD')
- The DMA transfer function matrix 'S' (rows = classified mobility, columns = true particle mobility, each row normalized to 1). It uses the ideal triangular transfer function (Knutson & Whitby, 1975) where diffusional broadening is negligible and a Gaussian diffusion-broadened approximation (after Stolzenburg & McMurry, 2008) otherwise.
- The bipolar charging probability matrix 'Tc' for charge states 1 to m. This is an empirical approximation to the Wiedensohler (1988) charge distribution.
- The size-dependent penetration efficiency 'Tl' for diffusion losses over Leff, from the Gormley–Kennedy equation for laminar tube flow. All values are 1 when Leff = 0.
Diagnostic charging probabilities are printed to the command window.
vtoz.m
Call: 'Z = vtoz(Lambda, V)'
Description: Converts DMA voltage V (V; scalar or array) to the centroid electrical mobility Z (m² V⁻¹ s⁻¹) selected by the DMA. For a cylindrical DMA it uses Z = Qsh·ln(r2/r1)/(2πLV) (Knutson & Whitby, 1975).
ztod.m
Call: 'Dp = ztod(Lambda, Z, p)'
Description: Converts electrical mobility Z (m² V⁻¹ s⁻¹) to particle mobility diameter Dp (nm) for particles carrying p elementary charges (default p = 1). It solves the Stokes–Cunningham relation Z = p·e·Cc(Dp)/(3πμDp) by fixed-point iteration. The iteration starts from the continuum-regime estimate, uses up to 20 iterations, and has a convergence tolerance of 10⁻⁶ nm. It calls 'cunningham.m'.
cunningham.m
Call: 'Cc = cunningham(Dp, Lambda)'
Description: Returns the dimensionless Cunningham slip correction factor for particle diameter Dp (m), using Cc = 1 + Kn·(1.257 + 0.400·exp(−1.10/Kn)), where Kn = 2λ/Dp is the Knudsen number and λ is the mean free path from 'Lambda'. The coefficients are from Allen & Raabe (1985).
Dependencies
- MATLAB R2023b or later (earlier versions may work but are untested)
- Statistics and Machine Learning Toolbox — required for 'norminv' (used in all scripts for 95% CI z-score)
- No additional toolboxes required
Reproducing the Figures
| Figure | Script | Data folder |
|---|---|---|
| Fig. 2 | 'PSLCalibrationCurve.m' | 'PSLCalib/NEWPSLAirCalib195/' |
| Fig. 3 | 'LengthenedInletExperiments.m' | 'LengthenedInletExperiments/' |
| Fig. 4 | 'RPMExperimentsFinalFigure.m' | 'RPMExperimentsSorted/' |
| Fig. 5 | 'ustarandlaminarlayerfigure.m' | 'RPMExperimentsSorted/' |
| Fig. 6 | 'PanExperimentsNormalized.m' | 'PanExperiments(500RPM)/' |
| Fig. 7 | 'filterschemcompmodelsandstats.m' | 'PSLIndividBG/', 'CalibrationFile/' |
| Fig. S1 | 'chambercoagulation.m' | none |
| Fig. S3 | 'PSLCalibrationCurve.m' | 'PSLCalib/' |
| Fig. S4 | 'decayplotforsupp.m' | 'RPMExperimentsSorted/500/' |
| Fig. S5 | 'vdvsDiff23.m' | 'RPMExperimentsSorted/' |
| Fig. S6 | 'vdvsSc.m' | 'RPMExperimentsSorted/' |
Recommended run order:
- 'PSLCalibrationCurve.m' — must be run first to generate 'CalibrationFile/PSLCalibrationCoeffs195_multiTol_equalWeight.mat'
- All other scripts can be run independently in any order
Abbreviations and Symbols
Instruments, materials, and data terms
| Abbreviation | Definition |
|---|---|
| BC | Black carbon (soot) |
| BG | Background (e.g., 'BgFilters', 'PSLIndividBG') |
| CPC | Condensation particle counter (TSI 3772) |
| DMA | Differential mobility analyzer (TSI 3081A) |
| DMA1, DMA2 / N1, N2 | Instrument channel 1 and 2 of the acquisition software; only channel 1 was used |
| MISG | Miniature inverted soot generator (source of BC particles) |
| NaCl | Sodium chloride |
| NaN | "Not a number"; missing value (see Missing and Placeholder Values |
| PSL | Polystyrene latex (spheres of certified size) |
| RH | Relative humidity |
| RPM | Revolutions per minute (chamber mixing fan speed) |
| SMPS | Scanning mobility particle sizer (DMA + CPC) |
| T | Temperature |
| Td | Dew point temperature |
| TE | Thermoelectric (temperature controller) |
| sh / sa | Sheath flow / sample (aerosol) flow (e.g., 'Tdsh2', 'Tdsa2', Qsh, Qsa) |
| UTC | Coordinated Universal Time |
| EST / EDT | U.S. Eastern Standard Time (UTC−5) / Eastern Daylight Time (UTC−4) |
| TSI | TSI Incorporated (instrument manufacturer) |
Folder-name abbreviations: 'DiffChemComp' = different chemical composition; 'PSLCalib' = PSL calibration; 'PSLAirCalib170' / 'NEWPSLAirCalib195' = airborne PSL calibrations for 170 nm and 195 nm PSL; 'sol2'–'sol6' = PSL solution standards 2–6; 'PSLIndividBG' = individual PSL-size deposition experiments with backgrounds.
Statistics and models
| Abbreviation | Definition |
|---|---|
| CCC | Lin's concordance correlation coefficient |
| CI | Confidence interval (95% unless stated) |
| L&N | Lai & Nazaroff (2000) indoor particle deposition model |
| MAPE | Mean absolute percentage error |
| OLS | Ordinary least squares regression |
| TOST | Two one-sided tests (statistical equivalence test) |
| Welch t-test | Two-sample t-test without the assumption of equal variances |
| Cohen's d | Standardized effect size (difference of means / pooled standard deviation) |
| r² | Coefficient of determination |
Symbols
| Symbol | Definition | Units |
|---|---|---|
| v_d | Particle dry deposition velocity | m s⁻¹ |
| C_t, C_0 | Particle number concentration at time t and at the start of a decay segment | cm⁻³ |
| t | Time since the start of a decay segment | s |
| m | Fitted decay slope of ln(C_t/C_0) vs. t | s⁻¹ |
| V | Chamber volume (0.4077 m³) | m³ |
| S | Chamber surface area (2.631 m²); S_total = S_chamber + S_object for surface complexity experiments | m² |
| Q | CPC sample (dilution) flow drawn from the chamber (1.6667 × 10⁻⁵ m³ s⁻¹) | m³ s⁻¹ |
| u* | Friction velocity | m s⁻¹ |
| δ | Viscous sublayer thickness (δ = 5ν/u*) | m |
| ν | Kinematic viscosity of air | m² s⁻¹ |
| μ | Dynamic viscosity of air | Pa s |
| λ | Mean free path of air | m |
| D_B | Brownian diffusion coefficient of the particle | m² s⁻¹ |
| Sc | Particle Schmidt number (Sc = ν/D_B) | — |
| A | Constant in the L&N (2000) Brownian deposition term (0.084) | — |
| Dp | Particle (mobility) diameter | nm (m in 'cunningham.m') |
| Kn | Knudsen number (Kn = 2λ/Dp) | — |
| Cc | Cunningham slip correction factor | — |
| Z | Electrical mobility | m² V⁻¹ s⁻¹ |
| p | Number of elementary charges on a particle | — |
| e | Elementary charge (1.602 × 10⁻¹⁹ C) | C |
| Qsh, Qsa | DMA sheath and sample flow rates | m³ s⁻¹ |
| β | DMA flow ratio (Qsa/Qsh) | — |
| r1, r2, L | DMA inner radius, outer radius, and column length | m |
| G | DMA geometric factor | m⁻¹ |
| Leff | Effective length for diffusion-loss calculation | m |
| K | Brownian coagulation kernel | cm³ s⁻¹ |
| τ_coag, τ_dep | Coagulation and deposition timescales | h |
| ρ | Particle density | kg m⁻³ |
