This file is indexed.

/usr/include/gpp4/ccp4/ccp4_unitcell.h is in libgpp4-dev 1.3.1-0ubuntu4.

This file is owned by root:root, with mode 0o644.

The actual contents of the file can be viewed below.

  1
  2
  3
  4
  5
  6
  7
  8
  9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 29
 30
 31
 32
 33
 34
 35
 36
 37
 38
 39
 40
 41
 42
 43
 44
 45
 46
 47
 48
 49
 50
 51
 52
 53
 54
 55
 56
 57
 58
 59
 60
 61
 62
 63
 64
 65
 66
 67
 68
 69
 70
 71
 72
 73
 74
 75
 76
 77
 78
 79
 80
 81
 82
 83
 84
 85
 86
 87
 88
 89
 90
 91
 92
 93
 94
 95
 96
 97
 98
 99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
/*
     ccp4_unitcell.h: headers for C library for ccp4_unitcell.c
     Copyright (C) 2001  CCLRC, Martyn Winn  

     This library is free software: you can redistribute it and/or
     modify it under the terms of the GNU Lesser General Public
     License as published by the Free Software Foundation, either
     version 3 of the License, or (at your option) any later version.

     This library is distributed in the hope that it will be useful,
     but WITHOUT ANY WARRANTY; without even the implied warranty of
     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
     Lesser General Public License for more details.

     You should have received a copy of the GNU Lesser General Public
     License along with This library.  If not, see
     <http://www.gnu.org/licenses/>.

*/

/** @file ccp4_unitcell.h
 *  @brief C library for manipulations based on cell parameters.
 *  @author Martyn Winn 
 */

#ifndef __CCP4_UNITCELL
#define __CCP4_UNITCELL

#ifdef  __cplusplus
namespace CCP4uc {
extern "C" {
#endif

#include <math.h>

/** From input cell and orthogonalisation code, find orthogonalisation
   and fractionalisation matrices.
 * @param cell
 * @param ncode
 * @param ro
 * @param rf
 * @return Cell volume
 */
double ccp4uc_frac_orth_mat(const double cell[6], const int ncode, 
			   double ro[3][3], double rf[3][3]);

/** From input cell, find dimensions of reciprocal cell.
 * @param cell
 * @param rcell
 * @return Reciprocal cell volume
 */
double ccp4uc_calc_rcell(const double cell[6], double rcell[6]);

/** Convert orthogonal to fractional coordinates. Translation only if
   deliberate origin shift - does this ever happen? Leave it to the
   application.
 * @param rf
 * @param xo
 * @param xf
 * @return void
 */
void ccp4uc_orth_to_frac(const double rf[3][3], const double xo[3], double xf[3]);

/** Convert fractional to orthogonal coordinates.
 * @param ro
 * @param xf
 * @param xo
 * @return void
 */
void ccp4uc_frac_to_orth(const double ro[3][3], const double xf[3], double xo[3]);

/** Convert orthogonal to fractional u matrix.
 * @param rf
 * @param uo
 * @param uf
 * @return void
 */
void ccp4uc_orthu_to_fracu(const double rf[3][3], const double uo[6], double uf[6]);

/** Convert fractional to orthogonal u matrix.
 * @param ro
 * @param uf
 * @param uo
 * @return void
 */
void ccp4uc_fracu_to_orthu(const double ro[3][3], const double uf[6], double uo[6]);

/** Calculate cell volume from cell parameters.
 * @param cell
 * @return Cell volume.
 */
double ccp4uc_calc_cell_volume(const double cell[6]);

/** Check cells agree within tolerance.
 * @param cell1 First cell.
 * @param cell2 Second cell.
 * @param tolerance A tolerance for agreement.
 * @return 1 if cells differ by more than tolerance, 0 otherwise.
 */
int ccp4uc_cells_differ(const double cell1[6], const double cell2[6], const double tolerance);

/** Check if cell parameters conform to a rhombohedral setting.
 * @param cell Cell parameters. Angles are assumed to be in degrees.
 * @param tolerance A tolerance for agreement.
 * @return 1 if cell parameters conform, 0 otherwise.
 */
int ccp4uc_is_rhombohedral(const float cell[6], const float tolerance);

/** Check if cell parameters conform to a hexagonal setting.
 * @param cell Cell parameters. Angles are assumed to be in degrees.
 * @param tolerance A tolerance for agreement.
 * @return 1 if cell parameters conform, 0 otherwise. 
 */
int ccp4uc_is_hexagonal(const float cell[6], const float tolerance);

#ifdef __cplusplus
} }
#endif

#endif  /*!CCP4_UNITCELL */