Code_Saturne
CFD tool
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Pages
cs_lagr_utils.h
Go to the documentation of this file.
1 #ifndef __CS_LAGR_UTILS_H__
2 #define __CS_LAGR_UTILS_H__
3 
4 /*============================================================================
5  * Utilitarian functions for the diphasic lagrangian module
6  *============================================================================*/
7 
8 /*
9  This file is part of Code_Saturne, a general-purpose CFD tool.
10 
11  Copyright (C) 1998-2012 EDF S.A.
12 
13  This program is free software; you can redistribute it and/or modify it under
14  the terms of the GNU General Public License as published by the Free Software
15  Foundation; either version 2 of the License, or (at your option) any later
16  version.
17 
18  This program is distributed in the hope that it will be useful, but WITHOUT
19  ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
20  FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
21  details.
22 
23  You should have received a copy of the GNU General Public License along with
24  this program; if not, write to the Free Software Foundation, Inc., 51 Franklin
25  Street, Fifth Floor, Boston, MA 02110-1301, USA.
26 */
27 
28 /*----------------------------------------------------------------------------*/
29 
30 /*----------------------------------------------------------------------------
31  * Local headers
32  *----------------------------------------------------------------------------*/
33 
34 #include "cs_base.h"
35 
36 /*----------------------------------------------------------------------------*/
37 
39 
40 /*============================================================================
41  * Public function definitions
42  *============================================================================*/
43 
44 /*----------------------------------------------------------------------------
45  * Check the relative localization of two vertices. We want to know if these
46  * two vertices are identical.
47  *
48  * parameters:
49  * p --> X, Y, Z coordinates of the vertex P
50  * q --> X, Y, Z coordinates of the vertex Q
51  *
52  * returns:
53  * 1 if the two vertices are identical otherwise 0
54  *----------------------------------------------------------------------------*/
55 
58  double q[3]);
59 
60 /*----------------------------------------------------------------------------
61  * Look for coordinate system orientation to locate particles in relation to
62  * faces.
63  *
64  * parameters:
65  * p1 --> X, Y, Z coordinate of the first vertex
66  * p2 --> X, Y, Z coordinate of the second vertex
67  * p3 --> X, Y, Z coordinate of the third vertex
68  * p4 --> X, Y, Z coordinate of the fourth vertex
69  * perturbation <-> an indicator if perturbation is used (1: true, 0: false)
70  *
71  * returns:
72  * an indicator on the orientation of the tetrahedron [p1, p2, p3, p4]
73  *----------------------------------------------------------------------------*/
74 
76 cs_lagrang_tetra_orientation(double p1[3],
77  double p2[3],
78  double p3[3],
79  double p4[3],
80  cs_int_t perturbation);
81 
82 /*----------------------------------------------------------------------------*/
83 
85 
86 #endif /* __CS_LAGR_UTILS_H__ */
cs_int_t cs_lagrang_tetra_orientation(double p1[3], double p2[3], double p3[3], double p4[3], cs_int_t perturbation)
Definition: cs_lagr_utils.c:124
#define BEGIN_C_DECLS
Definition: cs_defs.h:365
int cs_int_t
Definition: cs_defs.h:263
#define END_C_DECLS
Definition: cs_defs.h:366
BEGIN_C_DECLS cs_int_t cs_lagrang_check_colocalization(double p[3], double q[3])
Definition: cs_lagr_utils.c:90