source: src/Tesselation/boundary.hpp@ 97dff0

Last change on this file since 97dff0 was ee0032, checked in by Frederik Heber <heber@…>, 13 years ago

Extracted VolumeOfConvexEnvelope() from boundary and placed into class Tesselation.

  • Property mode set to 100755
File size: 2.5 KB
Line 
1#ifndef BOUNDARY_HPP_
2#define BOUNDARY_HPP_
3
4/*********************************************** includes ***********************************/
5
6// include config.h
7#ifdef HAVE_CONFIG_H
8#include <config.h>
9#endif
10
11#include <fstream>
12#include <iosfwd>
13
14// STL headers
15#include <map>
16
17#include "LinearAlgebra/defs.hpp"
18#include "BoundaryMaps.hpp"
19
20/****************************************** forward declarations *****************************/
21
22class BoundaryPointSet;
23class BoundaryLineSet;
24class BoundaryTriangleSet;
25class config;
26class LinkedCell_deprecated;
27class molecule;
28class MoleculeListClass;
29class Tesselation;
30class TesselPoint;
31class Vector;
32
33/********************************************** definitions *********************************/
34
35enum { DEBUG=1 };
36enum { DoSingleStepOutput=0 };
37enum { SingleStepWidth=10 };
38
39/********************************************** declarations *******************************/
40
41double ConvexizeNonconvexEnvelope(class Tesselation *&TesselStruct, const molecule * const mol, const char * const filename);
42void FillBoxWithMolecule(MoleculeListClass *List, molecule *filler, config &configuration, const double MaxDistance, const double distance[NDIM], const double boundary, const double RandomAtomDisplacement, const double RandomMolDisplacement, const bool DoRandomRotation);
43void FillVoidWithMolecule(molecule *&filler, config &configuration, const double distance[NDIM], const double boundary, const double RandomAtomDisplacement, const double RandomMolDisplacement, const double MinDistance, const bool DoRandomRotation);
44void FindConvexBorder(const molecule* const mol, Boundaries *BoundaryPts, Tesselation *&TesselStruct, const LinkedCell_deprecated *LCList, const char *filename);
45Vector* FindEmbeddingHole(MoleculeListClass *mols, molecule *srcmol);
46bool FindNonConvexBorder(molecule* const mol, Tesselation *&TesselStruct, const LinkedCell_deprecated *&LC, const double RADIUS, const char *tempbasename);
47Boundaries *GetBoundaryPoints(const molecule *mol, Tesselation *&TesselStruct);
48double * GetDiametersOfCluster(const Boundaries *BoundaryPtr, const molecule *mol, Tesselation *&TesselStruct, const bool IsAngstroem);
49void PrepareClustersinWater(config *configuration, molecule *mol, double ClusterVolume, double celldensity);
50bool RemoveAllBoundaryPoints(class Tesselation *&TesselStruct, const molecule * const mol, const char * const filename);
51void StoreTrianglesinFile(const molecule * const mol, const Tesselation * const TesselStruct, const char *filename, const char *extraSuffix);
52
53
54#endif /*BOUNDARY_HPP_*/
Note: See TracBrowser for help on using the repository browser.