namespace phase

Overview

namespace phase {
 
// enums
 
enum GlassKind;
 
// structs
 
struct IceXXIHit;
 
// global functions
 
int openChannelCount(const molSys::PointCloud<molSys::Point<double>, double>& yCloud, const std::vector<std::vector<int>>& nList);
std::uint64_t protonKey(const molSys::PointCloud<molSys::Point<double>, double>& yCloud, int oxygenType, int hydrogenType);
double hydrogenMSD(const molSys::PointCloud<molSys::Point<double>, double>& frame0, const molSys::PointCloud<molSys::Point<double>, double>& frame1, int hydrogenType);
IceXXIHit iceXXILibrary(const molSys::PointCloud<molSys::Point<double>, double>& yCloud);
std::vector<double> localDensity(const molSys::PointCloud<molSys::Point<double>, double>& yCloud, double rcut);
double frameDensity(const molSys::PointCloud<molSys::Point<double>, double>& yCloud);
GlassKind glassFromDensity(double rho, double iceMax, double ldaMax, double mdaMin);
GlassKind glassFromDensity(double rho, double iceMax, double mdaMin);
GlassKind glassFromDensity(double rho);
 
} // namespace phase

Detailed Documentation

Global Functions

int openChannelCount(const molSys::PointCloud<molSys::Point<double>, double>& yCloud, const std::vector<std::vector<int>>& nList)

Open hexagonal channel along z: six-rings stacked, not a closed 512.

std::uint64_t protonKey(const molSys::PointCloud<molSys::Point<double>, double>& yCloud, int oxygenType, int hydrogenType)

64-bit key of donated H directions per oxygen (molID-shared hydrogens).

double hydrogenMSD(const molSys::PointCloud<molSys::Point<double>, double>& frame0, const molSys::PointCloud<molSys::Point<double>, double>& frame1, int hydrogenType)

Mean squared displacement of hydrogenType between two frames.

std::vector<double> localDensity(const molSys::PointCloud<molSys::Point<double>, double>& yCloud, double rcut)

Local number density (1/A^3) in a sphere of radius rcut.

double frameDensity(const molSys::PointCloud<molSys::Point<double>, double>& yCloud)

Bulk mass density in g/cm^3 from nop and the box (18.015 g/mol).

GlassKind glassFromDensity(double rho, double iceMax, double ldaMax, double mdaMin)

HDA/MDA/LDA/ice from local number density (1/A^3). Ice first-shell density is four neighbours in the 3.5 A sphere (~0.022 A^-3). HDA is the dense shell (>= 0.070 A^-3). ldaMax splits LDA from MDA.

GlassKind glassFromDensity(double rho, double iceMax, double mdaMin)

Three-argument form: LDA/MDA split at the midpoint of iceMax and mdaMin.

GlassKind glassFromDensity(double rho)

Literature local-density windows: ice < 0.028, LDA < 0.040, MDA < 0.070, else HDA.