/**************************************************************************/ /**************************************************************************/ /************************** "steric" **********************************/ /**************************************************************************/ /************* Program to calculate ligand cone ********************/ /************* angles as a measure of steric size ********************/ /**************************************************************************/ /**************************************************************************/ /**************************************************************************/ /****************** main calculation routines **************************/ /**************************************************************************/ /****************** This module is **************************/ /****************** system independant **************************/ /**************************************************************************/ #define VOL_UC 1 /* volume limited by unit cell */ #define VOL_RD 2 /* volume limited by sphere of radius Rd */ /**************************************************************************/ /******************* steric calculations ********************************/ /**************************************************************************/ Ster *Get_Steric_Type(Ster *ster, char *name, char type, Set *set); Ster *Which_Ster(char arg, Ster *ster, Set *set); int Get_Theta_Positions(Mol *M); void Set_Projected_XY(Mol *M, double theta, double phi); void Set_Total_SVAngles(Mol *M); double Single_Atom_Solid_Angle(Atms *atoms, unsigned mode); double Cone(Mol *M, Ster *ster); double Solid_Leach(Mol *M, Ster *ster, Set *set, unsigned mode); double Solid_Numerical(Mol *M, Ster *ster, Set *set, double Prad); int Find_Encompassing_Box(Mol *M, int gnum, Vector *min, Vector *max, Vector *d); double Monte_Carlo_Volume(Mol *M, Set *set, int gnum ,Vector *min, Vector *d, unsigned mode); double Fixed_Grid_Volume(Mol *M, Set *set, int gnum, Vector *min, Vector *max ,Vector *d, long *total, unsigned mode); /**************************************************************************/ /******************* main menu options **********************************/ /**************************************************************************/ double Molecular_Volume(Mol *M, Ster *ster, Set *set, Grps *group); int Calc_Total_Steric(Mol *M, Ster *ster, Set *set, unsigned mode); int Calc_Radial_Profile(Mol *M, Ster *ster, Set *set, unsigned mode); int Calc_Angular_Profile(Mol *M, Ster *ster, Set *set); int Calculate_Areas_OneD(Mol *M, Set *set, char mode); int Calculate_Areas_TwoD(Mol *M, Set *set); int Calc_Conformer_Average(Mol *M, Ster *ster, Set *set, unsigned mode); /**************************************************************************/ /****************** The End ... *****************************************/ /**************************************************************************/