Reduced Units in Tramonto
Reduced units serve two purposes in the molecular theory calculations performed by Tramonto. First, reduced units help to normalize calculations keeping many terms O(1) so that the stability of the nonlinear solve is optimized. Second, from a corresponding states perspective, the results of a calculation in reduced units can be translated to any physical system. Consider a liquid-vapor equilibria calculation. For a single component fluid there is only one possible value for the critical point in reduced units. The molecular energy interaction parameters that are suitable for a given real fluid can be set by converting the theoretical critical point in reduced units to real units using data from the real triple point (temperature and pressure) of the fluid of interest. This is one simple way to set the parameters for a simple single site coarse grained model of some real fluid.
Specific dimensionless groups (reduced units) used in the Tramonto code (some input others output parameters) are provided below. Note that all output from the Tramonto code is reported in dimensionless units even when the input is provided in real dimensions (e.g. Kelvin, Angstroms, etc.). Furthermore note that Tramonto currently solves only for 3-dimensional systems. However, when symmetries are present, the numerical problem may be reduced to a 1-dimensional or 2-dimensional calculation.
- Particle size (input): σ/σref where σ is a particle diameter and σref is a reference distance. Typically, σref will be the particle diameter of the first species in a given problem so that the reduced value for that species will be σ/σref=1.
- Distances (input/output): All distance parameters (e.g. mesh size, mesh spacing, particle diameters) are reduced as Length/σref
- Density (input/output): ρσ3ref. Note that in some polymer calculations (Type_poly=CMS and WJDC3) the reported densities are segment type densities while in other cases (Type_poly=WTC, WJDC, WJDC2) the reported densities are segment densities. Also note that if VERBOSE printing is turned on, both segment and site densities will be output in different files.
- Energy interaction parameters (input): ε/kT where k is the Boltzmann constant (1.380658x10-23J/K), and T is the temperature (in Kelvin).
- Pressure (output and bulk thermodynamics): pσ3/kT
- Chemical potential (output and bulk thermodynamics): μ/kT
- Electrostatic potentials (input/output): φe/kT where e is the elementary charge (1.60217733 x10-23C).
- Poisson's equation: Tramonto solves a dimensionless form of Poisson's equation, given by:
∇2φ* = -4π∑α(qαρ*α/Telec). Here φ* and ρ*α are
the dimensionless electrostatic potential and density of species α, respectively; qα is the charge of species α. The quantity
Telec = 4πkTκε0σref/e2 is a reduced temperature specific to electrostatic problems (in MKS units), κ is the
dielectric constant and &epsilon0 is the permittivity of free space. Note that the Bjerrum length is lB = σref/Telec.
- Adsorption (output): Γ and Γex
- Γσ2/A and Γexσ2/A (adsorption per unit area) if the input parameter "Lper_area"=TRUE (1D, 2D, or 3D numerical problem).
- Γσ/L and Γexσ/L (adsorption per unit length) if the input parameter "Lper_area"=FALSE (2D).
- Γ and Γex (total adsorption=number of fluid particles) if the input parameter "Lper_area"=FALSE (3D).
- Force (output): f
- fσ3/kT (force per unit surface area) if the input parameter "Lper_area"=TRUE (1D, 2D, or 3D numerical problem).
- fσ2/kT (force per unit surface length) if the input parameter "Lper_area"=FALSE (2D numerical problem).
- fσ/kT (total force) if the input parameter "Lper_area"=FALSE (3D numerical problem).
- Free energy (output): Ω and Ωex
- Ωσ2/AkT (free energy per unit surface area) if the input parameter "Lper_area"=TRUE (1D, 2D, or 3D numerical problem).
- Ωσ/LkT (free energy per unit surface length) if the input parameter "Lper_area"=FALSE (2D numerical problem).
- Ω/kT (total free energy) if the input parameter "Lper_area"=FALSE (3D numerical problem).
NOTE: The output values for adsorptions, free energies, and forces can also be affected by the parameter "Lcount_reflect" which automatically multiplies these parameters in the computational domain to account for reflected images of the domain.