Streamer fluid modeling - An overview of ARCoS  1.0
 All Classes Files Functions Variables Typedefs Enumerations Enumerator Macros Pages
poisson.h
Go to the documentation of this file.
1 
5 #ifndef _POISSON_H_
6 
7 #include "cstream.h"
8 #include "rz_array.h"
9 
10 #ifndef _GRID_H_
11 #include "grid.h"
12 #endif
13 
14 typedef struct pois_grid_t pois_grid_t;
15 
16 struct pois_grid_t {
19  int ext_bound;
20 
24 };
25 
31 
33  int max_level;
35  double max_error;
36 
37  int bnd_right;
38  int bnd_top;
40 };
41 
42 typedef struct pois_boundaries_t {
44  int r, z;
46 
54 #define UNCHECK_ER_RZ(grid_, ir_, iz_) \
55  (((RZ(grid_->phi, (ir_) + 1, iz_) - RZ(grid_->phi, ir_, iz_)) \
56  / dr[grid_->level]))
57 
58 #define UNCHECK_EZ_RZ(grid_, ir_, iz_) \
59  (((RZ(grid_->phi, ir_, (iz_) + 1) - RZ(grid_->phi, ir_, iz_)) \
60  / dz[grid_->level]))
61 
67 #define ER_RZ(grid_, ir_, iz_) \
68  (((ir_) < ((grid_)->r1 + 1) && ((ir_) > ((grid_)->r0 - 2)))? \
69  UNCHECK_ER_RZ(grid_, ir_, iz_): 0)
70 
71 #define EZ_RZ(grid_, ir_, iz_) \
72  (((iz_) < ((grid_)->z1 + 1) && ((iz_) > ((grid_)->z0 - 2)))? \
73  UNCHECK_EZ_RZ(grid_, ir_, iz_): 0)
74 
75 #define _POISSON_H_
76 #endif