Dielectric profiles¶
Anisotropic¶
-
class
pcm::dielectric_profile::Anisotropic¶ describes a medium with anisotropy, i.e. liquid crystal
- Author
Roberto Di Remigio
- Date
2014
Public Functions
-
Anisotropic(const Eigen::Vector3d &eigen_eps, const Eigen::Vector3d &euler_ang)¶ - Parameters
[in] eigen_eps: eigenvalues of the permittivity tensors[in] euler_ang: Euler angles in degrees
Private Functions
-
void
build()¶ Initializes some internals: molecule-fixed to lab-fixed frame rotation matrix, permittivity tensor in molecule-fixed frame and its inverse
Private Members
-
Eigen::Vector3d
epsilonLab_¶ Diagonal of the permittivity tensor in the lab-fixed frame.
-
Eigen::Vector3d
eulerAngles_¶ Euler angles (in degrees) relating molecule-fixed and lab-fixed frames.
-
Eigen::Matrix3d
epsilon_¶ Permittivity tensor in molecule-fixed frame.
-
Eigen::Matrix3d
epsilonInv_¶ Inverse of the permittivity tensor in molecule-fixed frame.
-
Eigen::Matrix3d
R_¶ molecule-fixed to lab-fixed frames rotation matrix
-
double
detEps_¶ Determinant of the permittivity tensor.
Yukawa¶
-
struct
Yukawa¶ describes a medium with damping, i.e. ionic liquid
- Author
Roberto Di Remigio
- Date
2015
OneLayerLog¶
-
class
pcm::dielectric_profile::OneLayerLog¶ A dielectric profile based on the Harrison and Fosso-Tande work [3].
- Author
Luca Frediani
- Date
2017
Public Functions
-
std::tuple<double, double>
operator()(const double r) const¶ Returns a tuple holding the permittivity and its derivative
- Parameters
[in] r: evaluation point
Private Functions
-
double
value(double point) const¶ Returns value of dielectric profile at given point
- Parameters
[in] point: where to evaluate the profile
-
double
derivative(double point) const¶ Returns value of derivative of dielectric profile at given point
- Parameters
[in] point: where to evaluate the derivative
Private Members
-
double
epsilon1_¶ Dielectric constant on the left of the interface.
-
double
epsilon2_¶ Dielectric constant one the right of the interface.
-
double
width_¶ Width of the transition layer.
-
double
center_¶ Center of the transition layer.
-
std::pair<double, double>
domain_¶ Domain of the permittivity function This is formally \( [0, +\infty) \), for all practical purposes the permittivity function is equal to the epsilon2_ already at 6.0 * width_ Thus the upper limit in the domain_ is initialized as center_ + 12.0 * width_
OneLayerTanh¶
-
class
pcm::dielectric_profile::OneLayerTanh¶ A tanh dielectric profile as in [4].
- Author
Roberto Di Remigio
- Date
2014
- Note
The parameter given from user input for width_ is divided by 6.0 in the constructor to keep consistency with [4]
Public Functions
-
std::tuple<double, double>
operator()(const double r) const¶ Returns a tuple holding the permittivity and its derivative
- Parameters
[in] r: evaluation point
Private Functions
-
double
value(double point) const¶ Returns value of dielectric profile at given point
- Note
We return epsilon2_ when the sampling point is outside the upper limit.
- Parameters
[in] point: where to evaluate the profile
-
double
derivative(double point) const¶ Returns value of derivative of dielectric profile at given point
- Note
We return 0.0 (derivative of the constant value epsilon2_) when the sampling point is outside the upper limit.
- Parameters
[in] point: where to evaluate the derivative
Private Members
-
double
epsilon1_¶ Dielectric constant on the left of the interface.
-
double
epsilon2_¶ Dielectric constant one the right of the interface.
-
double
width_¶ Width of the transition layer.
-
double
center_¶ Center of the transition layer.
-
std::pair<double, double>
domain_¶ Domain of the permittivity function This is formally \( [0, +\infty) \), for all practical purposes the permittivity function is equal to the epsilon2_ already at 6.0 * width_ Thus the upper limit in the domain_ is initialized as center_ + 12.0 * width_
OneLayerErf¶
-
class
pcm::dielectric_profile::OneLayerErf¶ A erf dielectric profile.
- Author
Roberto Di Remigio
- Date
2015
- Note
The parameter given from user input for width_ is divided by 6.0 in the constructor to keep consistency with [4]
Public Functions
-
std::tuple<double, double>
operator()(const double r) const¶ Returns a tuple holding the permittivity and its derivative
- Parameters
[in] r: evaluation point
Private Functions
-
double
value(double point) const¶ Returns value of dielectric profile at given point
- Note
We return epsilon2_ when the sampling point is outside the upper limit.
- Parameters
[in] point: where to evaluate the profile
-
double
derivative(double point) const¶ Returns value of derivative of dielectric profile at given point
- Note
We return 0.0 (derivative of the constant value epsilon2_) when the sampling point is outside the upper limit.
- Parameters
[in] point: where to evaluate the derivative
Private Members
-
double
epsilon1_¶ Dielectric constant on the left of the interface.
-
double
epsilon2_¶ Dielectric constant one the right of the interface.
-
double
width_¶ Width of the transition layer.
-
double
center_¶ Center of the transition layer.
-
std::pair<double, double>
domain_¶ Domain of the permittivity function This is formally \( [0, +\infty) \), for all practical purposes the permittivity function is equal to the epsilon2_ already at 6.0 * width_ Thus the upper limit in the domain_ is initialized as center_ + 12.0 * width_