Open Qmin  0.8.0
GPU-accelerated Q-tensor-based liquid crystal simulations
Macros | Functions
landauDeGennesLCBoundary.h File Reference
#include "latticeBoundaries.h"
#include "qTensorFunctions.h"
Include dependency graph for landauDeGennesLCBoundary.h:
This graph shows which files directly or indirectly include this file:

Macros

#define HOSTDEVICE   inline __attribute__((always_inline))
 

Functions

HOSTDEVICE void computeBoundaryForce (const dVec &latticeSite, const dVec &boundarySite, const boundaryObject &bObj, dVec &force)
 compute the force on lattice site exerted by the boundary site More...
 
HOSTDEVICE scalar computeBoundaryEnergy (const dVec &latticeSite, const dVec &boundarySite, const boundaryObject &bObj)
 compute the force on lattice site exerted by the boundary site More...
 

Macro Definition Documentation

◆ HOSTDEVICE

#define HOSTDEVICE   inline __attribute__((always_inline))

Function Documentation

◆ computeBoundaryForce()

HOSTDEVICE void computeBoundaryForce ( const dVec &  latticeSite,
const dVec &  boundarySite,
const boundaryObject bObj,
dVec &  force 
)

compute the force on lattice site exerted by the boundary site

these boundary force and energy functions use the information at the boundary site to pass additional information. For instance, given homeotropic anchoring the boundary site should have a q tensor which is Q^B = 3 S_0/2*(\nu^s \nu^s - \delta_{ab}/3), where \nu^s is the locally preferred director. For degenerate planar anchoring the boundary site should be, Q^B[0] = \hat{nu}_x Q^B[1] = \hat{nu}_y Q^B[2] = \hat{nu}_z where \nu^s = {Cos[[Phi]] Sin[[theta]], Sin[[Phi]] Sin[[theta]], Cos[[theta]]} is the direction to which the LC should try to be orthogonal

References boundaryObject::boundary, degeneratePlanar, homeotropic, boundaryObject::P1, boundaryObject::P2, scalar, and UNWRITTENCODE.

Referenced by landauDeGennesLC::computeBoundaryForcesCPU(), and gpu_qTensor_computeBoundaryForcesGPU_kernel().

◆ computeBoundaryEnergy()

HOSTDEVICE scalar computeBoundaryEnergy ( const dVec &  latticeSite,
const dVec &  boundarySite,
const boundaryObject bObj 
)

compute the force on lattice site exerted by the boundary site

References boundaryObject::boundary, degeneratePlanar, homeotropic, boundaryObject::P1, boundaryObject::P2, scalar, TrQ2(), and UNWRITTENCODE.

Referenced by landauDeGennesLC::computeEnergyCPU(), and gpu_energyPerSite_kernel().