Welcome to TRIOMA’s documentation
Theory
For more detailed information, please refer to the additional documentation.
Installation
To install TRIOMA, you can use the following command: .. code-block:: bash
pip install TRIOMA
TRIOMA API Documentation
In this section the documentation for all modules in TRIOMA:
Correlations
Correlations for heat and mass transfer calculations.
- src.TRIOMA.tools.correlations.Nu_DittusBoelter(Re: float, Pr: float) float
Calculate the Nusselt number using the Dittus-Boelter correlation.
- Args:
Re: Reynolds number Pr: Prandtl number
- Returns:
Nusselt number
- src.TRIOMA.tools.correlations.Nu_Gnielinsky(Re: float, Pr: float, f: float) float
Calculate the Nusselt number using the Gnielinsky correlation.
- Args:
Re: Reynolds number Pr: Prandtl number f: Friction factor
- Returns:
Nusselt number
- src.TRIOMA.tools.correlations.Nu_SiederTate(Re: float, Pr: float, mu_w: float, mu_c: float) float
Calculate the Nusselt number using the Sieder-Tate correlation.
- Args:
Re: Reynolds number Pr: Prandtl number mu_w: Viscosity of the wall fluid mu_c: Viscosity of the core fluid
- Returns:
Nusselt number
- src.TRIOMA.tools.correlations.Pr(c_p: float, mu: float, k: float) float
Calculate the Prandtl number.
- Args:
c_p: Specific heat capacity mu: Viscosity k: Thermal conductivity
- Returns:
Prandtl number
- src.TRIOMA.tools.correlations.Re(rho: float, u: float, L: float, mu: float) float
Calculate the Reynolds number.
- Args:
rho: Density u: Velocity L: Length mu: Viscosity
- Returns:
Reynolds number
- src.TRIOMA.tools.correlations.Schmidt(D: float, mu: float, rho: float) float
Calculate the Schmidt number.
- Args:
D: Diffusivity mu: Viscosity rho: Density
- Returns:
Schmidt number
- src.TRIOMA.tools.correlations.Sherwood(Sc: float, Re: float) float
Calculate the Sherwood number.
- Args:
Sc: Schmidt number Re: Reynolds number
- Returns:
Sherwood number
- src.TRIOMA.tools.correlations.Sherwood_HT_analogy(Re: float, Sc: float) float
Calculate the Sherwood number using the heat transfer analogy.
- Args:
Re: Reynolds number Sc: Schmidt number
- Returns:
Sherwood number
- src.TRIOMA.tools.correlations.Sherwood_bubbles(Sc: float, Re: float) float
Calculate the Sherwood number for bubbles.
- Args:
Sc: Schmidt number Re: Reynolds number
- Returns:
Sherwood number
- src.TRIOMA.tools.correlations.f_Haaland(Re: float, e_D: float) float
Calculate the friction factor using the Haaland correlation.
- Args:
Re: Reynolds number e_D: Relative roughness
- Returns:
Friction factor
- src.TRIOMA.tools.correlations.f_Pethukov(Re: float, Pr: float) float
Calculate the friction factor using the Pethukov correlation.
- Args:
Re: Reynolds number Pr: Prandtl number
- Returns:
Friction factor
- src.TRIOMA.tools.correlations.get_deltaTML(T_in_hot: float, T_out_hot: float, T_in_cold: float, T_out_cold: float) float
Calculate the log mean temperature difference.
- Args:
T_in_hot: Hot inlet temperature T_out_hot: Hot outlet temperature T_in_cold: Cold inlet temperature T_out_cold: Cold outlet temperature
- Returns:
Log mean temperature difference
- src.TRIOMA.tools.correlations.get_h_from_Nu(Nu: float, k: float, D: float) float
Calculate the heat transfer coefficient from the Nusselt number.
- Args:
Nu: Nusselt number k: Thermal conductivity D: Diameter
- Returns:
Heat transfer coefficient
- src.TRIOMA.tools.correlations.get_k_from_Sh(Sh: float, L: float, D: float) float
Calculate the mass transfer coefficient from the Sherwood number.
- Args:
Sh: Sherwood number L: Length D: Diameter
- Returns:
Mass transfer coefficient
- src.TRIOMA.tools.correlations.get_length_HX(deltaTML: float, d_hyd: float, U: float, Q: float) float
Calculate the length of the heat exchanger.
- Args:
deltaTML: Log mean temperature difference d_hyd: Hydraulic diameter U: Overall heat transfer coefficient Q: Heat transfer rate
- Returns:
Length of the heat exchanger
Component Class
- class src.TRIOMA.tools.component_tools.Component(geometry: Geometry = None, c_in: float = None, eff: float = None, fluid: Fluid = None, membrane: Membrane = None, name: str = None, p_out: float = 1e-15, loss: bool = False, inv: float = None, delta_p: float = None, pumping_power: float = None, U: float = None, V: float = None, cost: float = None)
Represents a component in a plant to make a high level T transport analysis.
- Args:
Geometry (Geometry): The geometry of the component. c_in (float): The concentration of the component at the inlet. fluid (Fluid): The fluid associated with the component. Defaults to None. membrane (Membrane): The membrane associated with the component. Defaults to None.
- T_leak() float
Calculates the leakage of the component.
- Returns:
float: The leakage of the component.
- analytical_efficiency(p_out: float = 1e-15) None
Calculate the analytical efficiency of a tritium permeation through a component.
This method computes the tritium extraction efficiency by solving the governing equations for tritium transport in the membrane. The efficiency represents the fraction of tritium extracted from the component relative to inlet concentration.
The calculation solves three coupled transport phenomena: 1. Mass transport (fluid boundary layer): Convective mass transfer from bulk fluid to wall 2. Diffusion (solid membrane): Fickian diffusion through the membrane thickness 3. Surface reactions (membrane surfaces): Adsorption/desorption kinetics at interfaces
- Parameters:
- p_out (float): Outlet tritium partial pressure [Pa]. Defaults to 1e-15 Pa (essentially zero).
Controls the driving force for tritium extraction.
- Updates (self attributes):
self.eff_an (float): Analytical efficiency (dimensionless, 0-1) self.tau (float): Dimensionless time parameter = 4*k_t*L/(U0*d_Hyd) self.alpha (float): Adsorption/surface parameter self.xi (float): Extraction parameter
- Physics:
- For Molten Salt fluids (MS=True):
Uses solution of coupled convective-diffusive equations with Lambert W function. Handles three limiting regimes: surface-limited, diffusion-limited, and mass-transport-limited.
- For Liquid Metal fluids (MS=False):
Uses simplified solution based on partition equilibrium effects. Includes pressure correction factor: (1 - p_out/p_in)^0.5
- References:
Humrickhouse, P. W., “Tritium Transport in the DCLL Blanket”, 18th ANS Topical Meeting on Fusion Energy, 2008.
- Raises:
ValueError: If imaginary component appears in eff_an calculation (numerical instability)
- connect_to_component(component2: Component | BreedingBlanket | GLC | None = None) None
Connect this component to another component.
Sets the inlet concentration of component2 equal to the outlet of self.
- Args:
self: The TRIOMA component instance. component2: The component to connect to.
- converge_split_HX(tol: float = 0.001, T_in_hot: float | None = None, T_out_hot: float | None = None, T_in_cold: float | None = None, T_out_cold: float | None = None, R_sec: float | None = None, Q: float | None = None, plotvar: bool = False, savevar: bool = False) None
Splits the component into N components to better discretize Temperature effects Tries to find the optimal number of components to split the component into
- custom_update_attribute(attr_name: str, new_value: float) None
Sets the specified attribute to a new value.
- Args:
attr_name (str): The name of the attribute to set. new_value: The new value for the attribute.
- define_component_volumes() None
Calculates the volumes of the component.
- estimate_cost(metal_cost: float = 0, fluid_cost: float = 0) float
Estimates the cost of the component. metal_cost: cost of the metal in $/m^3 fluid_cost: cost of the fluid in $/m^3 returns the cost of the component
- friction_factor(Re: float) float
Calculates the friction factor for the component.
- Args:
Re (float): Reynolds number.
- Returns:
float: The friction factor.
- get_adimensionals() None
Calculate dimensionless transport parameters H and W for tritium permeation analysis.
These dimensionless numbers characterize the relative importance of different transport mechanisms (mass transport vs. diffusion vs. surface kinetics) in tritium permeation. They automatically select which physical regime governs extraction and guide flux calculations.
Dimensionless Parameters:
- H (mass transport vs. surface kinetics):
H = k_t * d_hyd / (k_d * K_S * D)
H >> 1: Mass transport is fast → surface reaction becomes rate-limiting
H << 1: Surface kinetics are fast → mass transport becomes rate-limiting
H ~ 1: Both mechanisms are equally important (mixed regime)
- W (diffusion vs. surface kinetics):
W = (K_S * D / (d_hyd/2)) / k_d [for molten salts with factor 0.5*K_S*D]
W >> 1: Diffusion is slow → surface reaction is fast (diffusion-limited)
W << 1: Diffusion is fast → surface reaction is slow (surface-limited)
W ~ 1: Both mechanisms coupled (fully mixed regime)
Fluid Type Corrections:
- Molten Salt (MS=True):
Uses partition coefficient: K_S = surface/liquid equilibrium Includes molecular H₂ dissociation effects in diffusion
- Liquid Metal (MS=False):
Uses partition coefficient with liquid metal solubility model Includes partition parameter for atomic hydrogen transport
- Updates (self attributes):
self.H (float): Dimensionless parameter (mass transport/surface ratio) self.W (float): Dimensionless parameter (diffusion/surface ratio)
- Physics Usage:
The H and W values automatically route get_flux() calculations to the correct transport regime, dramatically reducing computation time:
If H/W > 1000: Mass transport limited → simple J = -2*k_t*Δc If H/W < 0.0001: Diffusion limited → simple J = -(D/δ)*K_S*√(Δc) If 0.1 < W < 10: Mixed regime → requires coupled solver
- Dependencies:
fluid.k_t: Mass transfer coefficient [m/s] (must be pre-calculated)
membrane.k_d: Surface kinetic coefficient [mol/(m²·s)]
membrane.K_S: Partition coefficient (dimensionless)
membrane.D: Solid-state diffusion coefficient [m²/s]
- Raises:
None (prints warning if fluid.k_t not yet calculated)
- get_efficiency(plotvar: bool = False, c_guess: float | None = None, p_out: float = 1e-15) None
Calculates the efficiency of the component.
- get_flux(c: float | None = None, c_guess: float = 1e-09, p_out: float = 1e-15) float
Calculate the tritium permeation flux across the membrane.
This method evaluates the tritium flux by solving for the wall/interface concentrations that simultaneously satisfy mass transport, diffusion, and surface reaction equations. It automatically identifies the governing transport regime and selects the appropriate solution method.
- Parameters:
c (float): Bulk tritium concentration in fluid [mol/m³]. Required. c_guess (float): Initial guess for iterative solver [mol/m³]. Default 1e-9.
Used as starting point in minimization algorithm.
p_out (float): Outlet tritium partial pressure [Pa]. Default 1e-15 Pa.
- Returns:
- float: Wall/interface tritium concentration [mol/m³] for subsequent calculations.
The flux is stored in self.J_perm [mol/(m²·s)].
- Transport Regimes (automatically selected via H and W parameters):
- Mass Transport Limited (H/W >> 1000):
Convection dominates: J = -2*k_t*(c - c_outlet) [Molten Salt]
- Diffusion Limited (H/W << 0.0001):
Solid-state diffusion dominates: J = -(D/δ)*K_S*((c/K_H)^0.5 - p_out^0.5)
- Surface Reaction Limited (W < 0.1):
Adsorption/desorption kinetics dominate: J = -k_d*(c/K_H)
- Mixed Regimes:
All three mechanisms coupled; solved by minimizing residual between fluxes.
- Solution Method:
Uses scipy.optimize.minimize (Powell method) to find wall concentration where: |J_mass_transport - J_diffusion| = 0 (for diffusion-limited cases) |J_mass_transport - J_surface| = 0 (for surface-limited cases)
- Notes:
For Molten Salts: includes factor of 2 for H dissociation: H₂ ↔ 2H
For Liquid Metals: factor of 1 (atomic hydrogen)
Numerical solver may fail for extremely low/high concentrations (raises ValueError)
- Raises:
ValueError: If c is not float or c_guess not float
- get_global_HX_coeff(R_conv_sec: float = 0) None
Calculate the overall heat transfer coefficient for a heat exchanger component.
This method computes the global heat transfer coefficient (U-value) accounting for all thermal resistances in series: primary-side convection, membrane conduction, and optional secondary-side convection.
The overall heat transfer is modeled as thermal resistors in series: U = 1 / (R_conv_prim + R_cond + R_conv_sec)
- Parameters:
- R_conv_sec (float): Secondary-side convection thermal resistance [K/W].
Default 0 (adiabatic or negligible resistance). Represents heat transfer resistance on downstream side.
- Calculates:
Primary-side convection resistance R_conv_prim: - Determines Nusselt number via appropriate correlation:
Dittus-Boelert (smooth pipes): Nu = 0.023*Re^0.8*Pr^0.4
WireCoil turbulator: custom correlation (if installed)
CustomTurbulator: user-defined correlation
Converts Nu to convection coefficient: h = Nu*k/d_hyd
R_conv_prim = 1/h
Membrane conduction resistance R_cond: - Cylindrical geometry: R_cond = ln(r_outer/r_inner) / (2π*k) - k: membrane thermal conductivity [W/(m·K)] - r_outer/r_inner: outer/inner radii including thickness
- Parameters Used:
self.fluid: FluidMaterial with properties (ρ, μ, k, cp for correlations) self.geometry: Component geometry (D, L, turbulator type) self.membrane: SolidMaterial with thermal conductivity k
- Updates (self attributes):
self.U (float): Overall HX coefficient [W/(m²·K)] self.fluid.h_coeff (float): Primary convection coefficient [W/(m²·K)]
- Physics Correlations:
Reynolds number: Re = ρ*U*d_hyd/μ (flow regime indicator) Prandtl number: Pr = cp*μ/k (thermal property ratio) Nusselt number: dimensionless heat transfer (depends on Re, Pr, geometry)
- Physics/Engineering Note:
This U-value is used in heat exchanger finite-difference splitting (split_HX) to discretize temperature profiles and improve tritium extraction efficiency calculations that depend on local temperatures.
- Raises:
NotImplementedError: If turbulator_type is “TwistedTape” (not yet implemented)
- get_pipe_flowrate() float
Calculates the volumetric flow rate of the component [m^3/s].
- Returns:
float: The flow rate of the component.
- get_pressure_drop() float
Calculates the pressure drop across the component.
- Returns:
float: The pressure drop across the component.
- get_pumping_power() float
Calculates the pumping power required for the component.
- Returns:
float: The pumping power required for the component in W.
- get_regime(print_var: bool = False) str
Gets the regime of the component.
- Returns:
str: The regime of the component.
- get_total_flowrate() float
Calculates the total flow rate of the component.
- outlet_c_comp() float
Calculate the tritium outlet concentration accounting for extraction and recirculation.
This method computes the outlet concentration based on the component efficiency and inlet concentration, with special handling for feedback effects via recirculation (bypass or return flow).
- Returns:
- float: Outlet tritium concentration [mol/m³]
Stored in self.c_out
Three Operating Modes:
- No Recirculation (recirculation == 0):
c_out = c_in * (1 - eff)
Simple extraction with no feedback. The efficiency is applied once.
- Positive Recirculation (0 < recirculation < 1):
Solves iteratively for steady-state: c_out = c_in * (1 - eff) c_in(new) = (c_out * recirculation + c_0) / (recirculation + 1)
Recirculated tritium in the breeder returns and mixes with fresh inlet stream. Uses Picard iteration (tol=1e-6) to reach steady state.
Example: recirculation=0.5 means 50% of outlet flows back to inlet. Physical interpretation: Bypass valve that recycles some extracted tritium
- Bypass without Recirculation (recirculation < 0, |recirculation| < 1):
c_out = c_in * (1 - eff) * (1 + recirculation) + c_in * (-recirculation)
Negative recirculation represents bypass flow: portion of inlet bypasses the component entirely and combines with outlet mixture.
Example: recirculation=-0.3 means 30% of flow bypasses the component Physical interpretation: Manifold that splits inlet into two paths
- Invalid Modes:
Raises error if recirculation < -1 (bypass exceeds inlet flow) Raises error if c_in = 0 and recirculation affects result
Physics:
The recirculation parameter models fuel cycle hydraulic feedback:
Positive (recycling): Reflects scenarios where the processed breeder returns
- in the component and mixes with the fresh inlet stream, increasing inlet concentration
and potentially improving extraction rate due to higher residence time.
Negative (bypass): Represents manifold design where some injected tritium bypasses extraction component to improve tritium inventory control
- Parameters Used:
self.c_in: Inlet concentration [mol/m³] self.eff: Component extraction efficiency (dimensionless) self.fluid.recirculation: Recirculation coefficient (dimensionless)
- Raises:
ValueError: If c_in == 0 with active recirculation ValueError: If recirculation ≤ -1.0 (bypass exceeds inlet) ValueError: If recirculation is NaN or invalid
- Notes:
Iteration stops when relative error < 1e-6
Maximum iterations: inherent to Picard convergence
For recirculation ≠ 0, eff must be pre-calculated (call use_analytical_efficiency first)
- split_HX(N: int = 25, T_in_hot: float | None = None, T_out_hot: float | None = None, T_in_cold: float | None = None, T_out_cold: float | None = None, R_sec: float = 0, Q: float | None = None, plotvar: bool = False, savevar: bool = False) Circuit
Splits the component into N components to better discretize Temperature effects
- update_T_prop() None
Updates the temperature-dependent properties of the fluid and membrane.
- use_analytical_efficiency(p_out: float = 1e-15) None
Evaluates the analytical efficiency and substitutes it in the efficiency attribute of the component.
- Args:
L (float): the length of the pipe component
- Returns:
None
Circuit Class
Fluid Class
- class src.TRIOMA.tools.component_tools.Fluid(T: float = None, D: float = None, D_0: float = None, E_d: float = None, Solubility: float = None, Solubility_0: float = None, E_s: float = None, MS: bool = True, d_Hyd: float = None, k_t: float = None, mu: float = None, rho: float = None, U0: float = None, k: float = None, cp: float = None, inv: float = None, recirculation: float = 0, V: float = None)
Represents a fluid in a component for Tritium transport analysis
- Args:
T (float): Temperature of the fluid. D (float): Tritium Diffusivity of the fluid. D_0 (float): Preexponential Diffusivity of the fluid. E_d (float): Activation energy of the fluid diffusivity. Solubility (float): Solubility of the fluid. Solubility_0 (float): Preexponential solubility of the fluid. E_s (float): Activation energy of the fluid solubility. MS (bool): Indicates whether the fluid is a molten salt or a liquid metal. d_Hyd (float, optional): Hydraulic diameter of the fluid. Defaults to None. k_t (float, optional): Mass transport coefficient of the fluid. Defaults to None. mu (float, optional): Viscosity of the fluid. Defaults to None. rho (float, optional): Density of the fluid. Defaults to None. U0 (float, optional): Velocity of the fluid. Defaults to None. inv (float, optional): Inventory of the fluid. Defaults to None. recirculation(float,optional): fraction of recirculated flowrate. Defaults to 0. 1 = 100%, 0.5=50%.
- get_kt(turbulator=None)
Calculates the mass transport coefficient (k_t) for the fluid.
If the hydraulic diameter (d_Hyd) is defined, the mass transport coefficient is calculated using correlations. Otherwise, an error message is printed.
- Returns:
None
- set_properties_from_fluid_material(fluid_material: FluidMaterial = None)
Sets the properties of the fluid from a FluidMaterial object.
- Args:
fluid_material (FluidMaterial): The FluidMaterial object to set the properties from.
Membrane Class
- class src.TRIOMA.tools.component_tools.Membrane(T: float = None, D: float = None, thick: float = None, K_S: float = None, k_d: float = None, k_r: float = None, k: float = None, D_0: float = None, E_d: float = None, K_S_0: float = None, E_S: float = None, inv: float = None, V: float = None)
Represents a metallic membrane of a component for H transport.
- Attributes:
T (float): Temperature of the membrane. D (float): Diffusion coefficient of the membrane. thick (float): Thickness of the membrane. K_S (float): Solubility coefficient of the membrane. k_d (float, optional): Dissociation rate constant of the membrane. Defaults to None. k_r (float, optional): Recombination rate constant of the membrane. Defaults to None. k (float, optional): Thermal conductivity of the membrane. Defaults to None. D_0 (float, optional): Pre-exponential factor of the membrane. Defaults to None.Overwrites D if defined E_d (float, optional): Activation energy of the diffusivity in the membrane in eV. Defaults to None. Overwrites D if defined K_S_0 (float, optional): Pre-exponential factor of the solubility in the membrane. Defaults to None.Overwrites K_S if defined E_S (float, optional): Activation energy of the solubility in the membrane in eV. Defaults to None. Overwrites K_S if defined inv (float, optional): Inventory of the membrane in mol. Defaults to None.
- set_properties_from_solid_material(solid_material: SolidMaterial = None)
Sets the properties of the membrane from a SolidMaterial object.
- Args:
solid_material (SolidMaterial): The SolidMaterial object to set the properties from.
Solid Material Class
- class src.TRIOMA.tools.component_tools.SolidMaterial(T: float = None, D: float = None, K_S: float = None, k: float = None)
Represents a solid material used in a component.
- Attributes:
D (float): The Diffusivity of the solid material. K_S (float): The Sievert constant of the solid material.
Fluid Material Class
- class src.TRIOMA.tools.component_tools.FluidMaterial(T: float = None, D: float = None, Solubility: float = None, MS: bool = None, mu: float = None, rho: float = None, k: float = None, cp: float = None)
Represents a fluid material with various properties.
- Attributes:
T (float): Temperature of the fluid material. D (float): Density of the fluid material. Solubility (float): Solubility of the fluid material. MS (float): Molecular weight of the fluid material. mu (float): Viscosity of the fluid material. rho (float): Density of the fluid material. k (float): Thermal conductivity of the fluid material. cp (float): Specific heat capacity of the fluid material.
Breeding Blanket Class
- class src.TRIOMA.tools.component_tools.BreedingBlanket(c_in: float = None, Q: float = None, TBR: float = None, T_out: float = None, T_in: float = None, fluid: Fluid = None, name: str = None, m_coolant: float = None)
Represents a breeding blanket component in a fuel cycle system.
- Attributes:
c_in(float): Inlet concentration of tritium in the breeding blanket component. Q (float): Heat generated by the breeding blanket component. TBR (float): Tritium breeding ratio of the breeding blanket component. T_out (float): Outlet temperature of the breeding blanket component. T_in (float): Inlet temperature of the breeding blanket component. fluid (Fluid): Fluid used in the breeding blanket component.
- connect_to_component(component2: Component | BreedingBlanket | GLC | None = None) None
Connect this component to another component.
Sets the inlet concentration of component2 equal to the outlet of self.
- Args:
self: The TRIOMA component instance. component2: The component to connect to.
- get_cout(print_var: bool = False)
Calculates the outlet concentration of tritium in the breeding blanket component.
- Args:
print_var (bool): If True, prints the intermediate variables.
- Returns:
None
- get_flowrate()
Calculates the flow rate of the coolant in the breeding blanket component.
GLC Class
- class src.TRIOMA.tools.component_tools.GLC(H: float = None, R: float = None, L: float = None, c_in: float = None, eff: float = None, fluid: Fluid = None, membrane: Membrane = None, GLC_gas: GLC_Gas = None, T: float = None, G_L: float = None, c_out: float = None, kla: float = None)
GLC (Gas-Liquid Contact) class represents a gas-liquid contactor component. Args:
H (float): Height of the GLC. R (float): Radius of the GLC. L (float): Characteristic Length of the GLC fluid flow. c_in (float): Inlet concentration of the GLC. eff (float, optional): Efficiency of the GLC. Defaults to None. fluid (Fluid, optional): Fluid object representing the liquid phase. Defaults to None. membrane (Membrane, optional): Membrane object representing the membrane used in the GLC. Not super important. Defaults to None. GLC_gas (GLC_Gas, optional): GLC_Gas object representing the gas phase. Defaults to None.
- Attributes:
H (float): Height of the GLC [m]. R (float): Radius of the GLC [m]. L (float): Length of the GLC [m]. GLC_gas (GLC_Gas): GLC_Gas object representing the gas phase.
- Methods:
get_kla_Ring(): Calculates the mass transfer coefficient (kla) for a Raschig Ring matrix.
- connect_to_component(component2: Component | BreedingBlanket | GLC | None = None) None
Connect this component to another component.
Sets the inlet concentration of component2 equal to the outlet of self.
- Args:
self: The TRIOMA component instance. component2: The component to connect to.
- get_c_out()
Calculates the outlet concentration of the GLC. The outlet concentration is calculated based on the inlet concentration, the efficiency of the GLC, and the fluid properties. Returns:
None
- get_z_from_eff()
Calculates the height of the GLC from the efficiency of the GLC. The height is calculated based on the efficiency of the GLC and the radius of the GLC. Returns:
None