flowtube.BoatReactor
- class flowtube.BoatReactor(FT_ID, FT_length, injector_ID, injector_OD, reactant_gas, carrier_gas, reactant_MR, boat_width, boat_height, boat_length, boat_wall_thickness)[source]
- Parameters:
FT_ID (float)
FT_length (float)
injector_ID (float)
injector_OD (float)
reactant_gas (str)
carrier_gas (str)
reactant_MR (float)
boat_width (float)
boat_height (float)
boat_length (float)
boat_wall_thickness (float)
- __init__(FT_ID, FT_length, injector_ID, injector_OD, reactant_gas, carrier_gas, reactant_MR, boat_width, boat_height, boat_length, boat_wall_thickness)[source]
Handles calculations relevant to flow rate, flow diagnostics, transport, and uptake for a boat reactor (partial cylinder (less than half) inside of a cylinder). Since there is no diffusion correction for the boat reactor geometry, the assumption is that gas-phase diffusion is negligible. Assumes that the boat reactor is filled to the brim with a liquid. The injector is assumed to be above the boat reactor at all times. All calculations are for over the boat.
- Parameters:
FT_ID (float) – Inner diameter (cm) of flow tube.
FT_length (float) – Length (cm) of flow tube.
injector_ID (float) – Inner diameter (cm) of reactant injector.
injector_OD (float) – Outer diameter (cm) of reactant injector.
reactant_gas (str) – Molecular formula of reactant gas (supported Ar, He, Air, Br2, Cl2, HBr, HCl, HI, H2O, I2, NO, N2, and O2 or other if manually inputting the diffusion coefficient).
carrier_gas (str) – Molecular formula of carrier gas (supported: Ar, He, N2, O2).
reactant_MR (float) – Reactant mixing ratio (mol mol-1).
boat_width (float) – Width (cm) of boat reactor.
boat_height (float) – Height (cm) of boat reactor.
boat_length (float) – Length (cm) of boat reactor.
boat_wall_thickness (float) – Wall thickness (cm).
- Returns:
None
- Return type:
None
Methods
__init__(FT_ID, FT_length, injector_ID, ...)Handles calculations relevant to flow rate, flow diagnostics, transport, and uptake for a boat reactor (partial cylinder (less than half) inside of a cylinder).
calculate_gamma(concentrations, exposure, ...)Fits the observed loss to the boat to a first order kinetic model to extract the uptake coefficient.
carrier_flow([radial_delta_T, ...])Performs and displays carrier gas transport calculations.
flows(reactant_FR, reactant_carrier_FR, ...)Calculates Flow Tube flows.
initialize(reactant_FR, reactant_carrier_FR, ...)Sets experimental conditions and calls calculation functions for numerous flow and diffusion parameters.
reactant_diffusion([...])Performs and displays reactant diffusion calculations.
reactant_uptake(hypothetical_gamma[, ...])Calculates reactant uptake to the boat and loss to flow tube walls.
- __init__(FT_ID, FT_length, injector_ID, injector_OD, reactant_gas, carrier_gas, reactant_MR, boat_width, boat_height, boat_length, boat_wall_thickness)[source]
Handles calculations relevant to flow rate, flow diagnostics, transport, and uptake for a boat reactor (partial cylinder (less than half) inside of a cylinder). Since there is no diffusion correction for the boat reactor geometry, the assumption is that gas-phase diffusion is negligible. Assumes that the boat reactor is filled to the brim with a liquid. The injector is assumed to be above the boat reactor at all times. All calculations are for over the boat.
- Parameters:
FT_ID (float) – Inner diameter (cm) of flow tube.
FT_length (float) – Length (cm) of flow tube.
injector_ID (float) – Inner diameter (cm) of reactant injector.
injector_OD (float) – Outer diameter (cm) of reactant injector.
reactant_gas (str) – Molecular formula of reactant gas (supported Ar, He, Air, Br2, Cl2, HBr, HCl, HI, H2O, I2, NO, N2, and O2 or other if manually inputting the diffusion coefficient).
carrier_gas (str) – Molecular formula of carrier gas (supported: Ar, He, N2, O2).
reactant_MR (float) – Reactant mixing ratio (mol mol-1).
boat_width (float) – Width (cm) of boat reactor.
boat_height (float) – Height (cm) of boat reactor.
boat_length (float) – Length (cm) of boat reactor.
boat_wall_thickness (float) – Wall thickness (cm).
- Returns:
None
- Return type:
None
- initialize(reactant_FR, reactant_carrier_FR, carrier_FR, P, P_units, T, reactant_diffusion_rate=nan, radial_delta_T=1, axial_delta_T=1, disp=True)[source]
Sets experimental conditions and calls calculation functions for numerous flow and diffusion parameters.
- Parameters:
reactant_FR (float) – Reactant flow rate (sccm).
reactant_carrier_FR (float) – Carrier flow rate (sccm) used to dilute the reactant.
carrier_FR (float) – Carrier flow rate (sccm) typically injected near the start of the flow tube.
P (float) – Pressure.
P_units (str) – Pressure units.
T (float) – Temperature (C).
reactant_diffusion_rate (float, optional) – Reactant diffusion rate (cm2 s-1).
radial_delta_T (float) – Radial temperature gradient (K) (default = 1 K).
axial_delta_T (float) – Axial temperature gradient (K) (default = 1 K).
disp (bool) – Display calculated calculated values.
- Return type:
None- Returns:
None
- flows(reactant_FR, reactant_carrier_FR, carrier_FR, disp=True)[source]
Calculates Flow Tube flows.
- Parameters:
reactant_FR (float) – Reactant flow rate (sccm).
reactant_carrier_FR (float) – Carrier flow rate (sccm) used to dilute the reactant.
carrier_FR (float) – Carrier flow rate (sccm) typically injected near the start of the flow tube.
disp (bool) – Display calculated calculated values.
- Return type:
None- Returns:
None
- carrier_flow(radial_delta_T=1, axial_delta_T=1, disp=True)[source]
Performs and displays carrier gas transport calculations.
- Parameters:
delta_T_radial (float) – Radial temperature gradient (K).
delta_T_axial (float) – Axial temperature gradient (K).
disp (bool) – Display calculated values.
radial_delta_T (float)
axial_delta_T (float)
- Returns:
None
- reactant_diffusion(reactant_diffusion_rate=nan, disp=True)[source]
Performs and displays reactant diffusion calculations.
- Parameters:
reactant_diffusion_rate (float) – Reactant diffusion rate (cm2 s-1).
disp (bool) – Display calculated calculated values.
- Return type:
None- Returns:
None
- reactant_uptake(hypothetical_gamma, gamma_wall=5e-06, disp=True)[source]
Calculates reactant uptake to the boat and loss to flow tube walls.
- Parameters:
hypothetical_gamma (float or numpy.ndarray) – Hypothetical uptake coefficient to calculate diffusion correction factor.
gamma_wall (float) – Wall uptake coefficient (default: 5e-6 for halocarbon wax coating - Ivanov et al., 2021).
disp (bool) – Display calculated values.
- Return type:
None- Returns:
None
- calculate_gamma(concentrations, exposure, exposure_units)[source]
Fits the observed loss to the boat to a first order kinetic model to extract the uptake coefficient.
- Parameters:
concentrations (numpy.ndarray) – Reactant concentrations (arbitrary units).
exposure (numpy.ndarray) – Reactant exposure (s or cm).
exposure_units (str) – Units of exposure (s or cm).
- Returns:
k, first order loss rate (s-1). float: r_value, correlation coefficient of the fit. float: gamma, uptake coefficient. tuple[float, float]: 95% confidence interval for gamma
- Return type:
float