ccp4_unitcell.h

Go to the documentation of this file.
00001 /*
00002      ccp4_unitcell.h: headers for C library for ccp4_unitcell.c
00003      Copyright (C) 2001  CCLRC, Martyn Winn  
00004 
00005      This library is free software; you can redistribute it and/or
00006      modify it under the terms of the GNU Lesser General Public
00007      License as published by the Free Software Foundation; either
00008      version 2.1 of the License, or (at your option) any later
00009      version.
00010 
00011      This library is distributed in the hope that it will be useful,
00012      but WITHOUT ANY WARRANTY; without even the implied warranty of
00013      MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
00014      Lesser General Public License for more details.
00015 
00016      You should have received a copy of the GNU Lesser General Public
00017      License along with this library; if not, write to the Free
00018      Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
00019      Boston, MA 02110-1301 USA
00020 
00021 */
00022 
00028 #ifndef __CCP4_UNITCELL
00029 #define __CCP4_UNITCELL
00030 
00031 #ifdef  __cplusplus
00032 namespace CCP4uc {
00033 extern "C" {
00034 #endif
00035 
00036 #include <math.h>
00037 
00038 double ccp4uc_frac_orth_mat(const double cell[6], const int ncode, 
00039                            double ro[3][3], double rf[3][3]);
00040 
00041 double ccp4uc_calc_rcell(const double cell[6], double rcell[6]);
00042 
00043 void ccp4uc_orth_to_frac(const double rf[3][3], const double xo[3], double xf[3]);
00044 
00045 void ccp4uc_frac_to_orth(const double ro[3][3], const double xf[3], double xo[3]);
00046 
00047 void ccp4uc_orthu_to_fracu(const double rf[3][3], const double uo[6], double uf[6]);
00048 
00049 void ccp4uc_fracu_to_orthu(const double ro[3][3], const double uf[6], double uo[6]);
00050 
00051 double ccp4uc_calc_cell_volume(const double cell[6]);
00052 
00053 int ccp4uc_cells_differ(const double cell1[6], const double cell2[6], const double tolerance);
00054 
00055 int ccp4uc_is_rhombohedral(const float cell[6], const float tolerance);
00056 
00057 int ccp4uc_is_hexagonal(const float cell[6], const float tolerance);
00058 
00059 #ifdef __cplusplus
00060 } }
00061 #endif
00062 
00063 #endif  
00065 /*
00066   Local variables:
00067   mode: font-lock
00068   End:
00069 */

Generated on Wed Oct 29 21:14:24 2008 for gpp4 by  doxygen 1.4.7