programmer's documentation
cs_cdofb_codits.h
Go to the documentation of this file.
1 #ifndef __CS_CDOFB_CODITS_H__
2 #define __CS_CDOFB_CODITS_H__
3 
4 /*============================================================================
5  * Build an algebraic CDO face-based system for convection/diffusion equation
6  * with source terms
7  *============================================================================*/
8 
9 /*
10  This file is part of Code_Saturne, a general-purpose CFD tool.
11 
12  Copyright (C) 1998-2015 EDF S.A.
13 
14  This program is free software; you can redistribute it and/or modify it under
15  the terms of the GNU General Public License as published by the Free Software
16  Foundation; either version 2 of the License, or (at your option) any later
17  version.
18 
19  This program is distributed in the hope that it will be useful, but WITHOUT
20  ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
21  FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
22  details.
23 
24  You should have received a copy of the GNU General Public License along with
25  this program; if not, write to the Free Software Foundation, Inc., 51 Franklin
26  Street, Fifth Floor, Boston, MA 02110-1301, USA.
27 */
28 
29 /*----------------------------------------------------------------------------*/
30 
31 #include "cs_defs.h"
32 
33 /*----------------------------------------------------------------------------
34  * Standard C library headers
35  *----------------------------------------------------------------------------*/
36 
37 /*----------------------------------------------------------------------------
38  * Local headers
39  *----------------------------------------------------------------------------*/
40 
41 #include "cs_base.h"
42 #include "cs_cdo_connect.h"
43 #include "cs_cdo_quantities.h"
44 #include "cs_param_eq.h"
45 #include "cs_cdo_bc.h"
46 #include "cs_hodge.h"
47 
48 /*----------------------------------------------------------------------------*/
49 
51 
52 /*============================================================================
53  * Macro definitions
54  *============================================================================*/
55 
56 /*============================================================================
57  * Type definitions
58  *============================================================================*/
59 
60 /* Algebraic system for CDO face-based discretization */
61 typedef struct _cdofb_codits_t cs_cdofb_codits_t;
62 
63 /*============================================================================
64  * Public function prototypes
65  *============================================================================*/
66 
67 /*----------------------------------------------------------------------------*/
74 /*----------------------------------------------------------------------------*/
75 
76 void
77 cs_cdofb_codits_create_all(int n_scal_systems);
78 
79 /*----------------------------------------------------------------------------*/
87 /*----------------------------------------------------------------------------*/
88 
89 void
91  const cs_mesh_t *m,
92  int eq_id);
93 
94 /*----------------------------------------------------------------------------*/
98 /*----------------------------------------------------------------------------*/
99 
100 void
102 
103 /*----------------------------------------------------------------------------*/
114 /*----------------------------------------------------------------------------*/
115 
116 void
118  const cs_cdo_connect_t *connect,
119  const cs_cdo_quantities_t *quant,
120  double tcur,
121  int sys_id);
122 
123 /*----------------------------------------------------------------------------*/
132 /*----------------------------------------------------------------------------*/
133 
134 void
136  const cs_cdo_quantities_t *quant,
137  int sys_id);
138 
139 /*----------------------------------------------------------------------------*/
147 /*----------------------------------------------------------------------------*/
148 
149 const double *
151 
152 /*----------------------------------------------------------------------------*/
153 
155 
156 #endif /* __CS_CDOFB_CODITS_H__ */
#define BEGIN_C_DECLS
Definition: cs_defs.h:419
void cs_cdofb_codits_post(const cs_cdo_connect_t *connect, const cs_cdo_quantities_t *quant, int sys_id)
Post-process the solution of a scalar convection/diffusion equation solved with a CDO face-based sche...
Definition: cs_cdofb_codits.c:928
Definition: cs_cdo_connect.h:86
void cs_cdofb_codits_create_all(int n_scal_systems)
Allocate the required number of scalar equations based on a face based discretization.
Definition: cs_cdofb_codits.c:676
Definition: cs_param_eq.h:99
Definition: cs_cdo_quantities.h:94
void cs_cdofb_codits_solve(const cs_mesh_t *m, const cs_cdo_connect_t *connect, const cs_cdo_quantities_t *quant, double tcur, int sys_id)
Solve a scalar convection/diffusion equation with a CDO face-based scheme.
Definition: cs_cdofb_codits.c:849
Definition: cs_mesh.h:62
void cs_cdofb_codits_free_all(void)
Destroy all cs_cdofb_codits_t structures.
Definition: cs_cdofb_codits.c:792
const double * cs_cdofb_codits_get_face_values(int eq_id)
Get the computed values at each face.
Definition: cs_cdofb_codits.c:978
#define END_C_DECLS
Definition: cs_defs.h:420
void cs_cdofb_codits_init(const cs_param_eq_t *eq, const cs_mesh_t *m, int eq_id)
Initialize a cs_cdofb_codits_t.
Definition: cs_cdofb_codits.c:696