~ubuntu-branches/ubuntu/precise/code-saturne/precise

« back to all changes in this revision

Viewing changes to src/base/cs_ale.h

  • Committer: Package Import Robot
  • Author(s): Sylvestre Ledru
  • Date: 2011-11-24 00:00:08 UTC
  • mfrom: (6.1.9 sid)
  • Revision ID: package-import@ubuntu.com-20111124000008-2vo99e38267942q5
Tags: 2.1.0-3
Install a missing file

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
#ifndef __CS_ALE_H__
 
2
#define __CS_ALE_H__
 
3
 
 
4
/*============================================================================
 
5
 * Functions associated to ALE formulation
 
6
 *============================================================================*/
 
7
 
 
8
/*
 
9
  This file is part of Code_Saturne, a general-purpose CFD tool.
 
10
 
 
11
  Copyright (C) 1998-2011 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
 * Standard C library headers
 
32
 *----------------------------------------------------------------------------*/
 
33
 
 
34
/*----------------------------------------------------------------------------
 
35
 * Local headers
 
36
 *----------------------------------------------------------------------------*/
 
37
 
 
38
#include "cs_base.h"
 
39
 
 
40
/*----------------------------------------------------------------------------*/
 
41
 
 
42
BEGIN_C_DECLS
 
43
 
 
44
/*============================================================================
 
45
 * Public function prototypes
 
46
 *============================================================================*/
 
47
 
 
48
/*----------------------------------------------------------------------------
 
49
 * Compute cell and face centre of gravity, cell volume.
 
50
 *
 
51
 * Fortran Interface
 
52
 *
 
53
 * SUBROUTINE ALGRMA
 
54
 * *****************
 
55
 *
 
56
 *----------------------------------------------------------------------------*/
 
57
 
 
58
void
 
59
CS_PROCF (algrma, ALGRMA)(void);
 
60
 
 
61
/*----------------------------------------------------------------------------
 
62
 * Projection on mesh vertices of the displacement (computed on cell center)
 
63
 *
 
64
 * Fortran Interface
 
65
 *
 
66
 * SUBROUTINE ALDEPL
 
67
 * *****************
 
68
 *
 
69
 * INTEGER         IFACEL(2,NFAC)  : --> : Interior faces -> cells connectivity
 
70
 * INTEGER         IFABOR(NFABOR)  : --> : Border faces -> cells connectivity
 
71
 * INTEGER         IPNFAC(NFAC+1)  : --> : Interior faces -> vertices index
 
72
 * INTEGER         NODFAC(LNDFAC)  : --> : Interior faces -> vertices list
 
73
 * INTEGER         IPNFBR(NFABOR+1): --> : Border faces -> vertices index
 
74
 * INTEGER         NODFBR(LNDFBR)  : --> : Border faces -> vertices list
 
75
 * DOUBLE PRECISION UMA(NCELET)    : --> : Mesh velocity along X
 
76
 * DOUBLE PRECISION VMA(NCELET)    : --> : Mesh velocity along Y
 
77
 * DOUBLE PRECISION WMA(NCELET)    : --> : Mesh velocity along Z
 
78
 * DOUBLE PRECISION COEFAU(NCELET) : --> : Boundary condition A for UMA
 
79
 * DOUBLE PRECISION COEFAV(NCELET) : --> : Boundary condition A pour VMA
 
80
 * DOUBLE PRECISION COEFAW(NCELET) : --> : Boundary condition A pour WMA
 
81
 * DOUBLE PRECISION COEFBU(NCELET) : --> : Boundary condition B pour UMA
 
82
 * DOUBLE PRECISION COEFBV(NCELET) : --> : Boundary condition B pour VMA
 
83
 * DOUBLE PRECISION COEFBW(NCELET) : --> : Boundary condition B pour WMA
 
84
 * DOUBLE PRECISION DT(NCELET)     : --> : Time step
 
85
 * DOUBLE PRECISION DEPROJ(NNOD,3)): <-- : Displacement projected on vertices
 
86
 *----------------------------------------------------------------------------*/
 
87
 
 
88
void
 
89
CS_PROCF (aldepl, ALDEPL)(const cs_int_t    i_face_cells[],
 
90
                          const cs_int_t    b_face_cells[],
 
91
                          const cs_int_t    i_face_vtx_idx[],
 
92
                          const cs_int_t    i_face_vtx_lst[],
 
93
                          const cs_int_t    b_face_vtx_idx[],
 
94
                          const cs_int_t    b_face_vtx_lst[],
 
95
                          cs_real_t        *uma,
 
96
                          cs_real_t        *vma,
 
97
                          cs_real_t        *wma,
 
98
                          cs_real_t        *coefau,
 
99
                          cs_real_t        *coefav,
 
100
                          cs_real_t        *coefaw,
 
101
                          cs_real_t        *coefbu,
 
102
                          cs_real_t        *coefbv,
 
103
                          cs_real_t        *coefbw,
 
104
                          cs_real_t        *dt,
 
105
                          cs_real_t        *disp_proj);
 
106
 
 
107
/*----------------------------------------------------------------------------
 
108
 * Destroy the associated fvm_interface_set_t structure if necessary
 
109
 *
 
110
 * Fortran Interface
 
111
 *
 
112
 * SUBROUTINE LBRALE
 
113
 * *****************
 
114
 *----------------------------------------------------------------------------*/
 
115
 
 
116
void
 
117
CS_PROCF (lbrale, LBRALE)(void);
 
118
 
 
119
/*----------------------------------------------------------------------------*/
 
120
 
 
121
END_C_DECLS
 
122
 
 
123
#endif /* __CS_ALE_H__ */
 
124