faunus
Public Member Functions | Protected Member Functions | List of all members
Faunus::Geometry::GeometryBase Struct Referenceabstract

An interface for all geometries.Base class for all geometries. More...

#include <geometry.h>

Inheritance diagram for Faunus::Geometry::GeometryBase:
Inheritance graph
[legend]

Public Member Functions

virtual Point setVolume (double, VolumeMethod=VolumeMethod::ISOTROPIC)=0
 Set volume.
 
virtual double getVolume (int=3) const =0
 Get volume.
 
virtual void boundary (Point &) const =0
 Apply boundary conditions.
 
virtual bool collision (const Point &) const =0
 Overlap with boundaries.
 
virtual void randompos (Point &, Random &) const =0
 Generate random position.
 
virtual Point vdist (const Point &a, const Point &b) const =0
 Minimum distance vector b->a.
 
virtual Point getLength () const =0
 Side lengths.
 
virtual void to_json (json &j) const =0
 
virtual void from_json (const json &j)=0
 
BoundaryFunction getBoundaryFunc () const
 Lambda for applying boundary conditions on a point.
 
DistanceFunction getDistanceFunc () const
 Lambda for calculating the (minimum) distance vector between two positions.
 

Protected Member Functions

template<typename T = double>
int anint (T x) const
 Round to int.
 

Detailed Description

An interface for all geometries.Base class for all geometries.


The documentation for this struct was generated from the following files: