/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *\ * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * ** ** ** ** ** ** ** ** ** ** ** ********* ** ** ** ********** ********** *** *** ** ** ** ********** ** **** **** ** ********** ** ** ** ** ** ** ** ** ** ********** ** ** ** ******** ** ** ** ** ** ** ** ** ****** ******** ** ** ** ** ** ** ** ****** *** ** ** ** ************** ** ** ** *** ** ********** ** ************** ** ** ** *** ***************** ******** ** ** ** *********** ********* ** ********* ** ** ** *********** ** ** ** *** ** ********** ** ** ** ** ** ****** ** ** ********** ** ** ** ** ** ****** ******** ** ** ** * ** ** ********* ** ** ** * ** ** ** ** ** ** ** *** ********** ** ** ** ** ** *** ********** ********** ** ** ********* ** ** ** ** ** ** E N S E M B L E T O O L S ** ** ** ** Version 2.1 ** ** ** ** ** ** Principal Investigator: Julie D. Forman-Kay ** ** ** ** Author: Mickaƫl Krzeminski ** ** ** ** Date: November 2012 ** ** ** ** ** ************************************************************************************* ** ** ** ** ** Copyright (C) The Hospital for Sick Children, 2001 ** ** ** ** Distribution of substantively modified versions of this module is prohibited ** ** without the explicit permission of the copyright holder. ** ** ** ** Any use of this work or derivative works in whole or in part for any ** ** commercial purpose or for monetary gain is prohibited. ** ** ** ** ** ** NO WARRANTY ** ** This software package is provided 'as is' without warranty of any kind, ** ** expressed or implied. ** ** ** ** ** * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * \* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */ #ifndef __CONSTANTS_HEADER__ #define __CONSTANTS_HEADER__ /* Binary Definitions */ #define FALSE 0 #define TRUE 1 /* Mathematics */ #ifndef M_PI #define M_PI 3.141592653589793238462643383279502884197169399375105820974944592307816406286208998628034825342117068 #endif #define max(a,b) \ ({ __typeof__ (a) _a = (a); \ __typeof__ (b) _b = (b); \ _a > _b ? _a : _b; }) #define min(a,b) \ ({ __typeof__ (a) _a = (a); \ __typeof__ (b) _b = (b); \ _a > _b ? _b : _a; }) /* Chemical constants */ #define MASS_C 12.0107 #define MASS_O 15.9994 #define MASS_N 14.0067 #define MASS_S 32.065 #define MASS_P 30.973762 #define MASS_H 1.00794 /* I/O constants */ #define MAX_WARN_MSG 300 #define MAX_PATHWAY_LEN 250 // PDB_LINE_LEN is 82, not 80, because the program will only read lines with fgets (80 for the line, +1 for the \n, +1 for \0) #define PDB_LINE_LEN 82 #define PDB_HEADER_LEN 6 #define PDB_TERM_LEN 3 #define PDB_COORD_LEN 8 #define PDB_X_INDEX 30 #define PDB_Y_INDEX 38 #define PDB_Z_INDEX 46 #define PDB_ATOM_NAME_INDEX 12 #define PDB_MAX_NB_RESIDUES 100 #define PDB_MAX_NB_ATOMS 1000 #define PDB_LIST_MAX_NB 100 #define ATYPE_LINE_LEN 250 #define STRIDE_LINE_LEN 85 #define NTLEN 5 #define TERM_NAME "TTT" /* Constants definition: coord_fact is the factor coordinates (Floating values) are multiplied by to get Integers */ #define COORD_FACT 1.0e3 #define dEpsilon 1E-10 #define fEpsilon 1E-5 #define SSEP printf("\n"); #define LSEP printf("\n\n"); #define VLSEP printf("\n\n\n"); /* Macros definition: __USAGE__ displays some help about an ENSEMBLE tool */ #define __USAGE__ Usage(TP, argv[0]); #endif