This file is indexed.

/usr/lib/grass70/include/grass/N_gwflow.h is in grass-dev 7.0.3-1build1.

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
/*****************************************************************************
*
* MODULE:       Grass PDE Numerical Library
* AUTHOR(S):    Soeren Gebbert, Berlin (GER) Dec 2006
* 		soerengebbert <at> gmx <dot> de
*               
* PURPOSE:      groundwater flow in porous media 
* 		part of the gpde library
*
* COPYRIGHT:    (C) 2000 by the GRASS Development Team
*
*               This program is free software under the GNU General Public
*               License (>=v2). Read the file COPYING that comes with GRASS
*               for details.
*
*****************************************************************************/

#ifndef _N_GWFLOW_H_
#define _N_GWFLOW_H_
#include "N_pde.h"
#include <math.h>

#define N_GW_CONFINED 0		/*confined groundwater */
#define N_GW_UNCONFINED 1	/*unconfined groundwater */

#define N_GW_DRY_CELL 0		/*a dry cell */
#define N_GW_SURFACE_CELL 1	/*a surface cell */
#define N_GW_NORMAL_CELL 2	/*a normal wet cell */

/*!
 * \brief This data structure contains all data needed to compute the 
 * groundwater mass balance in three dimension 
 * */
typedef struct
{
    N_array_3d *phead;		/*!piezometric head [m] */
    N_array_3d *phead_start;	/*!start conditions [m] */
    N_array_3d *hc_x;		/*!x part of the hydraulic conductivity tensor  [m/s] */
    N_array_3d *hc_y;		/*!y part of the hydraulic conductivity tensor  [m/s] */
    N_array_3d *hc_z;		/*!z part of the hydraulic conductivity tensor  [m/s] */
    N_array_3d *q;		/*!sources and sinks  [m^3/s] */
    N_array_2d *r;		/*!recharge at the top of the gw leayer  [1/s] */
    N_array_3d *s;		/*!specific yield [1/m] */
    N_array_3d *nf;		/*!effective porosity [-] */

    /*river */
    N_array_3d *river_leak;	/*!Leakage of the river bed [1/s] */
    N_array_3d *river_head;	/*!Waterlevel of the river [m] */
    N_array_3d *river_bed;	/*!Bed of the river [m] */

    /*drainage */
    N_array_3d *drain_leak;	/*!Leakage of the drainage bed [1/s] */
    N_array_3d *drain_bed;	/*!Bed of the drainage [m] */

    N_array_3d *status;		/*!active/inactive/dirichlet cell status */
    N_array_3d *drycells;	/*!array of dry cells */

    double dt;			/*!calculation time [s] */

} N_gwflow_data3d;

/*!
 * \brief This data structure contains all data needed to compute the 
 * groundwater mass balance in two dimension 
 * */
typedef struct
{
    N_array_2d *phead;		/*!piezometric head [m] */
    N_array_2d *phead_start;	/*!start conditions [m] */
    N_array_2d *hc_x;		/*!x part of the hydraulic conductivity tensor [m/s] */
    N_array_2d *hc_y;		/*!y part of the hydraulic conductivity tensor [m/s] */
    N_array_2d *q;		/*!sources and sinks [m^3/s] */
    N_array_2d *r;		/*!recharge at the top of the gw leayer [1/s] */
    N_array_2d *s;		/*!specific yield [1/m] */
    N_array_2d *nf;		/*!effective porosity [-] */

    /*river */
    N_array_2d *river_leak;	/*!Leakage of the river bed [1/s] */
    N_array_2d *river_head;	/*!Waterlevel of the river  [m] */
    N_array_2d *river_bed;	/*!Bed of the river [m] */

    /*drainage */
    N_array_2d *drain_leak;	/*!Leakage of the drainage bed [1/s] */
    N_array_2d *drain_bed;	/*!Bed of the drainage */


    N_array_2d *top;		/*!top surface of the quifer  [m] */
    N_array_2d *bottom;		/*!bottom of the aquifer  [m] */

    N_array_2d *status;		/*!active/inactive/dirichlet cell status */
    N_array_2d *drycells;	/*!array of dry cells */

    double dt;			/*!calculation time */
    int gwtype;			/*!Which type of groundwater, N_GW_CONFINED or N_GW_UNCONFIED */

} N_gwflow_data2d;

extern N_data_star *N_callback_gwflow_3d(void *gwdata, N_geom_data * geom,
					 int col, int row, int depth);
extern N_data_star *N_callback_gwflow_2d(void *gwdata, N_geom_data * geom,
					 int col, int row);
extern void N_gwflow_3d_calc_water_budget(N_gwflow_data3d * data,
        N_geom_data * geom, N_array_3d * budget);
extern void N_gwflow_2d_calc_water_budget(N_gwflow_data2d * data,
        N_geom_data * geom, N_array_2d * balance);
extern N_gwflow_data3d *N_alloc_gwflow_data3d(int cols, int rows, int depths,
					      int river, int drain);
extern N_gwflow_data2d *N_alloc_gwflow_data2d(int cols, int rows, int river,
					      int drain);
extern void N_free_gwflow_data3d(N_gwflow_data3d * data);
extern void N_free_gwflow_data2d(N_gwflow_data2d * data);
#endif