SDA (SDA flex)  7.2
Simulation of Diffusional Association
Classes | Public Member Functions | Public Attributes | Private Member Functions | Private Attributes | List of all members
UHBD< T1 > Class Template Reference

#include <UHBDgrd.hpp>

Collaboration diagram for UHBD< T1 >:

Classes

struct  dimensions
 
struct  origin
 dimensions of the grid (number of grid points) More...
 

Public Member Functions

 UHBD (char *, char *, bool, float)
 UHBD constructor - 2. More...
 
 UHBD (char *, float, bool, float)
 UHBD constructor - 1. More...
 
 UHBD (char *)
 UHBD constructor - 3. More...
 
 ~UHBD ()
 UHBD destructor. More...
 
void Generate_Skin (float, int)
 Calculate the molecule skin (molecular interaction field) More...
 
void print_slice_grid (int)
 Print a 2D slice of an excluded volume grid. More...
 

Public Attributes

std::ifstream file
 
float scale
 
int grdflag
 scaling for every value More...
 
int one
 flag for the type of grid: UHBD, DT-Grid, etc. More...
 
float spacing
 
char * Title
 grid spacing/resolution More...
 
float dummy1
 Text header kept in the UHBD file. More...
 
float dummy2
 
float dummy3
 
float dummy4
 
float dummy5
 
float dummy6
 
float dummy7
 
int idummy1
 
int idummy2
 
int idummy3
 
int idummy4
 
int idummy5
 
struct UHBD::dimensions dim
 
struct UHBD::origin o
 
T1 *** Grid
 grid origin coordinates More...
 
bool *** Skin
 Store the grid data in a 3d array. More...
 
float probes
 Boolean for Skin! expanded for other types, though. More...
 

Private Member Functions

void write_uhbd_grid ()
 Exclusion : 1, Non-exclusion : 0. More...
 
void Test_Format_Grid (char *)
 Determine the type of grid: binary or ascii? More...
 
void Read_Header (char *)
 Read the header of an input UHBD file. More...
 
void Read_Data ()
 Read the body of the input UHBD file. More...
 
int excluded_volume (bool ***, double, double, double, double)
 Calculate the excluded volume. More...
 
void make_exclusion_grid ()
 construct the excluded volume grid More...
 
template<typename type >
type *** Allocate ()
 create a 3d array and allocate memory for it. More...
 
template<typename type >
void Deallocate (type ***)
 deallocate the memory for a 3D array More...
 
template<typename type >
void Initialize (type ***)
 initialize values of a given 3D array to zero More...
 

Private Attributes

PDBstructure
 probe size More...
 
int iform
 structure object for the input molecule More...
 
int exclusion_flag
 Binary : 0, ASCII : 1. More...
 

Constructor & Destructor Documentation

◆ UHBD() [1/3]

template<typename T1 >
UHBD< T1 >::UHBD ( char *  pdbfilename,
char *  Input,
bool  pqr_fl,
float  probe_size 
)

UHBD constructor - 2.

Parameters
pdbfilenamename of the input pdb(or pqr) file
InputUHBD file name.
pqr_flflag for pqr file (otherwise pdb)
probe_sizesize of the probe for molecular surface
Note
Overloaded constructor! For UHBD object with an input UHBD file.
Warning
gcc/4.9.2 error. it seems to be not allowed to assign a default value anymore.
UHBD<T1>::UHBD(char * pdbfilename, char * Input, bool pqr_fl, float probe_size = 1.7)

◆ UHBD() [2/3]

template<typename T1 >
UHBD< T1 >::UHBD ( char *  pdbfilename,
float  probe_size,
bool  pqr_fl,
float  spcng 
)

UHBD constructor - 1.

Parameters
pdbfilenamename of the input pdb(or pqr) file
probe_sizesize of the probe for molecular surface
pqr_flflag for pqr file (otherwise pdb)
spcngspacing for the constructed grid
Note
Overloaded constructor! For UHBD object without an input UHBD file.
Here is the call graph for this function:

◆ UHBD() [3/3]

template<typename T1 >
UHBD< T1 >::UHBD ( char *  Input)

UHBD constructor - 3.

Parameters
InputUHBD file name.
Note
Overloaded constructor! When no molecule needs to be associated with the data grid.

◆ ~UHBD()

template<typename T1 >
UHBD< T1 >::~UHBD

UHBD destructor.

Member Function Documentation

◆ Allocate()

template<typename T1 >
template<typename type >
type *** UHBD< T1 >::Allocate
private

create a 3d array and allocate memory for it.

◆ Deallocate()

template<typename T1 >
template<typename type >
void UHBD< T1 >::Deallocate ( type ***  grd)
private

deallocate the memory for a 3D array

Parameters
grdpointer for the 3D array to be deallocated

◆ excluded_volume()

template<typename T1 >
int UHBD< T1 >::excluded_volume ( bool ***  IEV,
double  oex,
double  oey,
double  oez,
double  probep 
)
private

Calculate the excluded volume.

called from function make_exclusion_grid, this function calculates the grid points overlap with the actual excluded volume and store it in a 3d array.

Note
this function should be similar to that in the SDA7 and PIPSA codes!
Parameters
IEVarray that the excluded volume data is stored
oexorigin coordinate x
oeyorigin coordinate y
oezorigin coordinate z
probepprobe size

◆ Generate_Skin()

template<typename T1 >
void UHBD< T1 >::Generate_Skin ( float  skin,
int  iterate_inside_skin 
)

Calculate the molecule skin (molecular interaction field)

Parameters
skin'thickness' of the skin zone
iterate_inside_skingrid points to be included towards the interior of the molecule. This is to avoid any missing points at the boundary. default is 5, can be changed, though.
Note
gcc/4.9.2 error when: void UHBD<T1>::Generate_Skin(float skin, int iterate_inside_skin = 5)
this function should be similar to that in the PIPSA code!

◆ Initialize()

template<typename T1 >
template<typename type >
void UHBD< T1 >::Initialize ( type ***  grd)
private

initialize values of a given 3D array to zero

Parameters
grdpointer for the 3D array.

◆ make_exclusion_grid()

template<typename T1 >
void UHBD< T1 >::make_exclusion_grid
private

construct the excluded volume grid

This function constructs and stores the excluded volume grid.

Note
this function should be similar to that in the SDA7 and PIPSA codes!

◆ print_slice_grid()

template<typename T1 >
void UHBD< T1 >::print_slice_grid ( int  k)

Print a 2D slice of an excluded volume grid.

This function is used to check the shape of the volume for a slice given by the input index z. Excluded volume points are shown with '*' sign.

Parameters
kindex z for the xy plane to be written to a txt file.

◆ Read_Data()

template<typename T1 >
void UHBD< T1 >::Read_Data
private

Read the body of the input UHBD file.

This function reads the body of the UHBD file where actual grid data is stored.

◆ Read_Header()

template<typename T1 >
void UHBD< T1 >::Read_Header ( char *  Input)
private

Read the header of an input UHBD file.

This function reads the header of the UHBD file and extract grid parameters from it.

Parameters
Inputname of the grid file

◆ Test_Format_Grid()

template<typename T1 >
void UHBD< T1 >::Test_Format_Grid ( char *  Input)
private

Determine the type of grid: binary or ascii?

Parameters
Inputname of the grid file

◆ write_uhbd_grid()

template<typename T1 >
void UHBD< T1 >::write_uhbd_grid
private

Exclusion : 1, Non-exclusion : 0.

Write the excluded volume grid to a file.

This function writes the excluded volume grid into UHBD format file.

Note
To be able to visualize the excluded volume grid with a UHBD file format. Only binary format at the moment!

Member Data Documentation

◆ dim

template<typename T1 >
struct UHBD::dimensions UHBD< T1 >::dim

◆ dummy1

template<typename T1 >
float UHBD< T1 >::dummy1

Text header kept in the UHBD file.

Default dummy variables in UHBD file- start

◆ dummy2

template<typename T1 >
float UHBD< T1 >::dummy2

◆ dummy3

template<typename T1 >
float UHBD< T1 >::dummy3

◆ dummy4

template<typename T1 >
float UHBD< T1 >::dummy4

◆ dummy5

template<typename T1 >
float UHBD< T1 >::dummy5

◆ dummy6

template<typename T1 >
float UHBD< T1 >::dummy6

◆ dummy7

template<typename T1 >
float UHBD< T1 >::dummy7

◆ exclusion_flag

template<typename T1 >
int UHBD< T1 >::exclusion_flag
private

Binary : 0, ASCII : 1.

◆ file

template<typename T1 >
std::ifstream UHBD< T1 >::file

◆ grdflag

template<typename T1 >
int UHBD< T1 >::grdflag

scaling for every value

◆ Grid

template<typename T1 >
T1*** UHBD< T1 >::Grid

grid origin coordinates

◆ idummy1

template<typename T1 >
int UHBD< T1 >::idummy1

◆ idummy2

template<typename T1 >
int UHBD< T1 >::idummy2

◆ idummy3

template<typename T1 >
int UHBD< T1 >::idummy3

◆ idummy4

template<typename T1 >
int UHBD< T1 >::idummy4

◆ idummy5

template<typename T1 >
int UHBD< T1 >::idummy5

◆ iform

template<typename T1 >
int UHBD< T1 >::iform
private

structure object for the input molecule

◆ o

template<typename T1 >
struct UHBD::origin UHBD< T1 >::o

◆ one

template<typename T1 >
int UHBD< T1 >::one

flag for the type of grid: UHBD, DT-Grid, etc.

◆ probes

template<typename T1 >
float UHBD< T1 >::probes

Boolean for Skin! expanded for other types, though.

◆ scale

template<typename T1 >
float UHBD< T1 >::scale

◆ Skin

template<typename T1 >
bool*** UHBD< T1 >::Skin

Store the grid data in a 3d array.

◆ spacing

template<typename T1 >
float UHBD< T1 >::spacing

◆ structure

template<typename T1 >
PDB* UHBD< T1 >::structure
private

probe size

◆ Title

template<typename T1 >
char* UHBD< T1 >::Title

grid spacing/resolution


The documentation for this class was generated from the following file:
Imprint/Privacy