OpenMD 3.1
Molecular Dynamics in the Open
|
Calculates the contact angle of a droplet with a surface using a spherical cap approximation for the droplet. More...
#include <ContactAngle1.hpp>
Public Member Functions | |
ContactAngle1 (SimInfo *info, const std::string &filename, const std::string &sele1, const std::string &sele2, RealType solidZ, RealType dropletRadius) | |
virtual void | doFrame (int frame) |
Public Member Functions inherited from OpenMD::SequentialAnalyzer | |
SequentialAnalyzer (SimInfo *info, const std::string &filename, const std::string &sele1, const std::string &sele2) | |
virtual void | doSequence () |
void | setOutputName (const std::string &filename) |
const std::string & | getOutputFileName () const |
void | setStep (int step) |
int | getStep () |
const std::string & | getSequenceType () const |
void | setSequenceType (const std::string &type) |
void | setParameterString (const std::string ¶ms) |
Additional Inherited Members | |
Protected Member Functions inherited from OpenMD::SequentialAnalyzer | |
virtual void | preSequence () |
virtual void | postSequence () |
virtual void | writeSequence () |
Protected Attributes inherited from OpenMD::SequentialAnalyzer | |
SimInfo * | info_ {nullptr} |
Snapshot * | currentSnapshot_ |
std::string | dumpFilename_ |
SelectionManager | seleMan1_ |
std::string | selectionScript1_ |
SelectionEvaluator | evaluator1_ |
SelectionManager | seleMan2_ |
std::string | selectionScript2_ |
SelectionEvaluator | evaluator2_ |
int | step_ |
std::string | outputFilename_ |
int | frame_ |
std::vector< RealType > | times_ |
std::vector< RealType > | values_ |
std::string | sequenceType_ |
std::string | paramString_ |
Calculates the contact angle of a droplet with a surface using a spherical cap approximation for the droplet.
The position of the spherical cap relative to the surface plane is determined by the center-of-mass position of the selection, and this method assumes a uniform density in the droplet. The angle of intersection between the surface of the spherical cap and the plane defines the contact angle, which is related to the center of mass height by:
\( z_\mathrm{cm} = (2)^{-4/3} R_0 \left( \frac{1-\cos\theta}{2+\cos\theta}\right)^{1/3} \frac{3+\cos\theta}{2+\cos\theta} \)
where \(z_\mathrm{cm}\) is measured relative to the planar surface, and \(R_0\) is the radius of the free spherical droplet.
This method was first proposed in:
J. Hautman and M.L. Klein, Phys. Rev. Lett. 67(13), 1763 (1991). DOI: 10.1103/PhysRevLett.67.1763
This Analyzer requires statement of the reference height of the solid surface, solidZ, and \(R_0\), the dropletRadius.
Definition at line 80 of file ContactAngle1.hpp.
OpenMD::ContactAngle1::ContactAngle1 | ( | SimInfo * | info, |
const std::string & | filename, | ||
const std::string & | sele1, | ||
const std::string & | sele2, | ||
RealType | solidZ, | ||
RealType | dropletRadius ) |
Definition at line 59 of file ContactAngle1.cpp.
|
virtual |
Implements OpenMD::SequentialAnalyzer.
Definition at line 75 of file ContactAngle1.cpp.