/usr/include/ug/std_domain.h is in libdune-uggrid-dev 2.5.0-1.
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 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 | // -*- tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 2 -*-
// vi: set et ts=4 sw=2 sts=2:
/** \defgroup std The Standard Domain
* \ingroup dom
*/
/*! \file std_domain.h
* \ingroup std
*/
/** \addtogroup std
*
* @{
*/
/****************************************************************************/
/* */
/* File: std_domain.h */
/* */
/* Purpose: standard domain declaration */
/* */
/* Author: Peter Bastian/Klaus Johannsen */
/* Institut fuer Computeranwendungen III */
/* Universitaet Stuttgart */
/* Pfaffenwaldring 27 */
/* 70550 Stuttgart */
/* email: ug@ica3.uni-stuttgart.de */
/* */
/* History: 29.01.92 begin, ug version 2.0 */
/* */
/* Remarks: */
/* */
/****************************************************************************/
/****************************************************************************/
/* */
/* auto include mechanism and other include files */
/* */
/****************************************************************************/
#ifndef __STD_DOMAIN__
#define __STD_DOMAIN__
#include "domain.h"
#include "dimension.h"
#include "namespace.h"
START_UGDIM_NAMESPACE
#undef CORNERS_OF_BND_SEG
#define CORNERS_OF_BND_SEG 2*DIM_OF_BND
/** \todo Please doc me! */
typedef struct {
/** \brief Table subdomain to part */
const INT *sd2part;
/** \brief Table segment to part */
const INT *sg2part;
# ifdef __THREEDIM__
/** \brief Table line to part */
const INT **ln2part;
# endif
/** \brief Table point to part */
const INT *pt2part;
} DOMAIN_PART_INFO;
/*----------- typedef for functions ----------------------------------------*/
/** \brief ???
*
* \todo Please doc me!
*/
typedef INT (*BndSegFuncPtr)(void *,DOUBLE *,DOUBLE *);
/** \brief ???
*
* \todo Please doc me!
*/
typedef INT (*BndCondProcPtr)(void *, void *, DOUBLE *, DOUBLE *, INT *);
/* --- public functions --- */
/* domain definition */
void *CreateDomainWithParts (const char *name, const DOUBLE *MidPoint,
DOUBLE radius, INT segments,
INT corners, INT Convex,
INT nParts, const DOMAIN_PART_INFO *dpi);
void *CreateDomain (const char *name, const DOUBLE *MidPoint,
DOUBLE radius, INT segments,
INT corners, INT Convex);
void RemoveDomain(const char* name);
void *CreateBoundarySegment (const char *name, INT left, INT right,
INT id, enum BoundaryType type, INT res,
const INT *point,
const DOUBLE *alpha, const DOUBLE *beta,
BndSegFuncPtr BndSegFunc,
void *data);
void *CreateBoundarySegment2D (const char *name, int left, int right,
int id, int from, int to, int res,
DOUBLE alpha, DOUBLE beta,
BndSegFuncPtr BndSegFunc,
void *data);
void *CreateLinearSegment (const char *name,
INT left, INT right,INT id,
INT n, const INT *point,
DOUBLE x[CORNERS_OF_BND_SEG][DIM]);
/** \brief Access the id of the segment (used by DUNE) */
UINT GetBoundarySegmentId(BNDS* boundarySegment);
/* problem definition */
void *CreateProblem (const char *domain, const char *name,
int id, ConfigProcPtr config,
int numOfCoefficients,
CoeffProcPtr coeffs[],
int numOfUserFct,
UserProcPtr userfct[]);
void *CreateBoundaryCondition (const char *name, INT id,
BndCondProcPtr theBndCond,
void *Data);
BVP *CreateBoundaryValueProblem (const char *BVPname, BndCondProcPtr theBndCond,
int numOfCoeffFct, CoeffProcPtr coeffs[],
int numOfUserFct, UserProcPtr userfct[]);
BVP *CreateBVP (const char *BVP, const char *Domain, const char *Problem);
const char *GetBVP_DomainName (const BVP *aBVP);
const char *GetBVP_ProblemName (const BVP *aBVP);
BVP *CreateBVP_Problem (const char *BVPName, const char *DomainName, const char *ProblemName);
END_UGDIM_NAMESPACE
/** @} */
#endif
|