SDA (SDA flex)  7.2
Simulation of Diffusional Association
Classes
DTGrid3Dex.hpp File Reference

Main DT-Grid class to create a boolean-type 3D grid structure. More...

#include <stdlib.h>
#include <string.h>
#include <cstring>
#include <iostream>
#include <fstream>
#include <sstream>
#include <typeinfo>
#include "ArrayReg.hpp"
#include "ArrayPtr.hpp"
#include "ArrayPrs.hpp"
#include "DTGrid2D.hpp"
Include dependency graph for DTGrid3Dex.hpp:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

class  DTGrid3Dex
 

Detailed Description

Main DT-Grid class to create a boolean-type 3D grid structure.

Author
Musa Ozboyaci

DTGrid3Dex class is a modified version of the class DTGrid3D. It is modified for excluded volume type of grids and does not use template structure of C++. It seems that this version is slightly faster than that uses the templates.

Warning
If DT-Grid file IO operations are separated from both DTGrid3D and DTGrid3Dex, the code would be neater and more easy to maintain.
If you find a bug in this code, please do check DTGrid3D.hpp file for a similar one.

DTGRID ORIGINAL PAPER: M. B. Nielsen and K. Museth. Dynamic Tubular Grid: An efficient data structure and algorithms for high resolution level sets. Accepted for publication in Journal of Scientific Computing, January 26, 2005.

DTGRID data structure is created based on three layers:
DTGrid3D, DTGrid2D and DTGrid1D.
DTGrid1D stores the structure for mapping onto DTGrid2D.
DTGrid2D stores the structure for mapping onto DTGrid3D.
DTGrid3D stores the required structure to the numerical values

To be able to make it more structured and more readable the code is divided into separate files inside separate folders, eventhough many of them keep very simple structures (classes). Files that start with "Array" keep header files for basic array types DTGrid1D, DTGrid2D and DTGrid3D / DTGrid3Dex classes keep the three layered dtgrid structure

Note that this dtgrid implementation is aimed to use as a replacement of UHBD type grids UHBD parameters (dimensions, origin, etc.) can be associated to objects

Warning
Check if all UHBD parameters are included!

The current format of the dtgrid cannot be used effectively for "skins" this is because of the vagueness of that the insideconstant (gamma_i) and outsideconstant (gamma_o) variables are returned depending on the sign of the values nearby! This idea could be used for lennard-jones grids since the skin on the surface will most definitely have large positive values due to strong repulsion. However not suitable for electrostatic grid! This has to be considered!!! Another idea to solve the problem would be to define "shaped skin" rather than using the row one! The shape could be an ellipsoid or a sphere. But then the grid cannot be used for exclusion grid!

Iterators and the neighbourfind methods have yet to be implemented in the present version!

Imprint/Privacy