Streamer fluid modeling - An overview of ARCoS
1.0
Main Page
Related Pages
Data Types List
Files
File List
File Members
All
Classes
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Macros
Pages
include
proto.h
Go to the documentation of this file.
1
5
#ifndef _RZ_ARRAY_H_
6
# include "
rz_array.h
"
7
#endif
8
9
/* rz_array.c */
10
rz_array_t
*
rz_new_3d_a
(
int
r0,
int
z0,
int
r1,
int
z1,
int
ntheta);
11
rz_array_t
*
rz_guest
(
rz_array_t
*host,
int
r0,
int
z0,
int
r1,
int
z1);
12
void
rz_set_zero
(
rz_array_t
*array);
13
void
rz_set_periodic
(
rz_array_t
*array);
14
void
rz_copy_bnd
(
rz_array_t
*from,
rz_array_t
*to,
15
int
sign,
REAL
*start_from,
REAL
*start_to,
16
int
dim0,
int
inout_from,
int
inout_to,
17
int
dim1,
int
dim1_0,
int
dim1_1,
18
int
dim2,
int
dim2_0,
int
dim2_1);
19
void
rz_set_bnd
(
rz_array_t
*array,
int
sign,
REAL
*start,
int
dim0,
int
inout,
20
int
dim1,
int
dim1_from,
int
dim1_to,
21
int
dim2,
int
dim2_from,
int
dim2_to);
22
void
rz_free
(
rz_array_t
*array);
23
void
rz_copy
(
rz_array_t
*fro,
int
rfro,
int
zfro,
24
rz_array_t
*to,
int
rto,
int
zto,
25
int
rn,
int
zn);
26
void
rz_copy_modes
(
rz_array_t
*fro,
int
rfro,
int
zfro,
27
rz_array_t
*to,
int
rto,
int
zto,
28
int
rn,
int
zn,
int
nmode_fro,
int
nmode_to);
29
void
rz_dump
(
rz_array_t
*rz_array,
const
char
*fname,
const
char
*mode,
30
int
r0,
int
z0,
int
r1,
int
z1);
31
void
rz_dump_3d
(
rz_array_t
*rz_array,
const
char
*fname,
const
char
*mode,
32
int
r0,
int
z0,
int
r1,
int
z1,
int
ntheta);
33
void
rz_axis_dump
(
const
char
*fname,
int
x0,
int
x1,
double
delta);
34
35
36
#ifndef _GRID_H_
37
# include "
grid.h
"
38
#endif
39
40
/* grid.c */
41
int
grid_max_depth_r
(
grid_t
*grid);
42
double
grid_rmin_r
(
grid_t
*grid);
43
void
grid_print_r
(
grid_t
*grid,
int
indent);
44
int
grid_contains
(
grid_t
*grid,
int
i
,
int
j,
int
check);
45
int
grid_overlap
(
grid_t
*grid1,
grid_t
*grid2,
int
buff1,
int
buff2,
46
int
*left,
int
*bottom,
int
*right,
int
*top,
47
int
*level_diff);
48
int
grid_overlap_with_shifts
(
grid_t
*grid1,
grid_t
*grid2,
49
int
buff1,
int
buff2,
50
int
*left,
int
*bottom,
int
*right,
int
*top,
51
int
*level_diff,
int
shift_r,
int
shift_z);
52
void
grid_inherit_ext_bound
(
grid_t
*grid);
53
grid_t
*
grid_finest_containing_r
(
grid_t
*grid,
double
r,
double
z);
54
int
grid_howmany_children
(
grid_t
*grid);
55
grid_t
*
grid_get_child
(
grid_t
*grid,
int
n
);
56
57
58
#ifndef _INTERPOL2_H_
59
# include "
interpol2.h
"
60
#endif
61
62
interpol_t
*
interpol_new_a
(
double
Lr,
double
Lz,
interpol_method_t
*method);
63
void
interpol_free
(
interpol_t
*
this
);
64
void
interpol_set_stencil
(
interpol_t
*
this
,
double
r0,
double
z0, ...);
65
void
interpol_set_stencil_at
(
grid_t
*grid,
66
interpol_t
*
this
,
double
r0,
double
z0,
67
rz_array_t
*ar,
68
int
ir,
int
iz,
int
itheta);
69
void
interpol_set_coeffs
(
interpol_t
*
this
);
70
double
interpol_apply
(
interpol_t
*
this
,
double
r,
double
z);
71
72
#ifndef _MAPPER_H_
73
# include "
mapper.h
"
74
#endif
75
76
void
map_grid
(
mapper_t
**mappers,
grid_t
*source,
grid_t
*target,
int
ntheta,
77
int
copy,
int
interpol,
int
coarsen,
int
s_buff,
int
t_buff);
78
void
map_grid_r
(
mapper_t
**mappers,
grid_t
*source,
grid_t
*target,
79
int
ntheta,
int
copy,
int
interpol,
int
coarsen,
80
int
s_buff,
int
t_buff);
81
void
map_trees_r
(
mapper_t
**mappers,
grid_t
*source,
grid_t
*target,
82
int
ntheta,
int
copy,
int
interpol,
int
coarsen,
83
int
s_buff,
int
t_buff);
84
85
#ifndef _CDR_H_
86
# include "
cdr.h
"
87
#endif
88
89
#ifndef _POISSON_H_
90
# include "
poisson.h
"
91
#endif
92
93
/* cdr.c */
94
void
cdr_init
(
void
);
95
void
cdr_end
(
void
);
96
97
cdr_grid_t
*
cdr_new_3d_a
(
int
r0,
int
z0,
int
r1,
int
z1,
int
ntheta);
98
cdr_grid_t
*
cdr_like_a
(
cdr_grid_t
*grid);
99
cdr_grid_t
*
cdr_clone_a
(
cdr_grid_t
*grid);
100
void
cdr_set_periodic
(
cdr_grid_t
*grid);
101
void
cdr_free
(
cdr_grid_t
*grid);
102
void
cdr_free_r
(
cdr_grid_t
*grid);
103
void
cdr_calc_charge
(
cdr_grid_t
*grid);
104
void
cdr_calc_charge_r
(
cdr_grid_t
*root);
105
void
cdr_dft_charge_r
(
cdr_grid_t
*grid,
int
sign);
106
cdr_grid_t
*
cdr_create_coarser_a
(
cdr_grid_t
*grid);
107
cdr_grid_t
*
cdr_add_coarser_grids_a
(
cdr_grid_t
*prev_root,
int
n
);
108
void
cdr_free_coarser_grids
(
cdr_grid_t
*prev_root,
int
n
);
109
void
cdr_add_ext_field
(
cdr_grid_t
*grid);
110
void
cdr_add_ext_field_r
(
cdr_grid_t
*grid);
111
void
cdr_add_inhom_field_r
(
cdr_grid_t
*cdr,
double
q);
112
void
cdr_calc_eabs
(
cdr_grid_t
*grid);
113
void
cdr_calc_eabs_r
(
cdr_grid_t
*grid);
114
void
cdr_nonegative
(
cdr_grid_t
*grid);
115
void
cdr_nonegative_r
(
cdr_grid_t
*grid);
116
pois_grid_t
**
cdr_calc_field_r
(
cdr_grid_t
*grid,
int
return_pois);
117
void
cdr_set_ext_bnd
(
cdr_grid_t
*grid);
118
void
cdr_set_ext_bnd_r
(
cdr_grid_t
*grid);
119
void
cdr_calc_d_dens
(
cdr_grid_t
*grid);
120
void
cdr_calc_d_dens_r
(
cdr_grid_t
*grid);
121
void
cdr_advect_diffu
(
cdr_grid_t
*grid);
122
void
cdr_advect_diffu_r
(
cdr_grid_t
*grid);
123
124
double
cdr_courant
(
cdr_grid_t
*grid);
125
void
cdr_update
(
cdr_grid_t
*orig,
cdr_grid_t
*dest,
double
h);
126
void
cdr_rk2_update
(
cdr_grid_t
*dens_0,
cdr_grid_t
*d_dens_1,
127
cdr_grid_t
*d_dens_2,
cdr_grid_t
*dest,
128
double
h);
129
void
cdr_rk2_update_r
(
cdr_grid_t
*dens_0,
cdr_grid_t
*d_dens_1,
130
cdr_grid_t
*d_dens_2,
cdr_grid_t
*dest,
131
double
h);
132
void
cdr_self_update_r
(
cdr_grid_t
*grid,
double
h);
133
void
cdr_like_update_ar
(
cdr_grid_t
*grid,
cdr_grid_t
*new_grid,
double
h);
134
double
cdr_rk2
(
cdr_grid_t
*grid,
double
h,
double
t);
135
136
void
cdr_update_refined
(
cdr_grid_t
**ptree);
137
void
cdr_calc_maxs
(
cdr_grid_t
*grid);
138
void
cdr_refine
(
cdr_grid_t
*grid);
139
void
cdr_refine_r
(
cdr_grid_t
*grid,
cdr_grid_t
*source);
140
void
cdr_match_r
(
cdr_grid_t
*grid1,
cdr_grid_t
*grid2);
141
void
cdr_set_bnd
(
cdr_grid_t
*grid);
142
void
cdr_set_bnd_r
(
cdr_grid_t
*grid);
143
144
void
cdr_restrict
(
cdr_grid_t
*grid);
145
void
cdr_restrict_r
(
cdr_grid_t
*grid);
146
147
void
cdr_set_dens
(
cdr_grid_t
*cdr,
int
species
,
int
mode,
double
factor,
148
double
(*f) (
double
,
double
,
double
));
149
void
cdr_init_dens
(
cdr_grid_t
*cdr);
150
cdr_grid_t
*
cdr_scratch_init
(
void
);
151
152
mapper_t
**
cdr_mappers_a
(
interpol_method_t
*interp_method);
153
void
cdr_free_mappers
(
mapper_t
**mappers);
154
155
void
cdr_dump
(
cdr_grid_t
*grid,
const
char
*prefix,
const
char
*
name
);
156
void
cdr_dump_r
(
cdr_grid_t
*grid,
const
char
*prefix,
const
char
*
name
,
157
FILE *infp,
double
sim_time);
158
cdr_grid_t
*
cdr_load_tree_r
(
const
char
*prefix,
const
char
*
name
, FILE *infp);
159
void
cdr_dump_frames
(
cdr_grid_t
*grid,
const
char
*prefix,
const
char
*
name
);
160
161
/* poisson.c */
162
void
pois_init
(
void
);
163
pois_grid_t
*
pois_new_a
(
int
r0,
int
z0,
int
r1,
int
z1);
164
pois_grid_t
*
pois_new_3d_a
(
int
r0,
int
z0,
int
r1,
int
z1,
int
ntheta);
165
void
pois_free
(
pois_grid_t
*grid);
166
void
pois_free_r
(
pois_grid_t
*grid);
167
pois_grid_t
*
pois_new_glob_a
(
int
r0,
int
z0,
int
r1,
int
z1,
int
level);
168
pois_grid_t
*
pois_init_tree_a
(
int
r0,
int
z0,
int
r1,
int
z1);
169
REAL
*
pois_boundary_a
(
pois_grid_t
*grid,
int
boundary);
170
void
pois_solve_grid
(
pois_grid_t
*grid,
pois_problem_t
*prob,
171
double
lambda,
double
s);
172
void
pois_set_phi_boundaries
(
pois_grid_t
*grid,
REAL
*boundaries[],
173
int
left_uns,
int
right_neu,
int
bottom_neu,
174
int
top_neu);
175
int
pois_map_charge
(
pois_grid_t
*pois,
cdr_grid_t
*cdr,
int
mode);
176
void
pois_set_error
(
pois_grid_t
*grid);
177
int
pois_refine
(
pois_grid_t
*grid,
double
threshold);
178
pois_grid_t
**
pois_solve_a
(
cdr_grid_t
*cdr,
pois_problem_t
*prob);
179
pois_grid_t
**
pois_gen_solve_a
(
cdr_grid_t
*cdr,
pois_problem_t
*prob,
180
mapper_t
**mappers,
double
es);
181
pois_grid_t
*
pois_solve_mode
(
cdr_grid_t
*tree,
cdr_grid_t
*cdr,
182
pois_problem_t
*prob,
int
mode,
double
es);
183
void
pois_solve_r
(
pois_grid_t
*pois,
cdr_grid_t
*cdr,
pois_problem_t
*prob,
184
int
mode,
double
es,
double
threshold);
185
double
pois_phi_at
(
pois_grid_t
*grid,
double
r,
double
z,
double
theta);
186
void
pois_dump
(
pois_grid_t
*grid,
const
char
*prefix,
const
char
*
name
);
187
void
pois_dump_r
(
pois_grid_t
*grid,
const
char
*prefix,
const
char
*
name
);
188
void
pois_write_error_r
(
pois_grid_t
*grid, FILE *fp);
189
void
pois_error_measures
(
pois_grid_t
*grid,
double
*L1,
double
*L2,
190
double
*Lmax);
191
void
pois_inhom_init
(
void
);
192
double
pois_inhom_phi
(
double
r,
double
z);
193
double
pois_inhom_er
(
double
r,
double
z);
194
double
pois_inhom_ez
(
double
r,
double
z);
195
double
pois_inhom_q_factor
(
pois_grid_t
*pois);
196
void
pois_add_inhom_phi_r
(
pois_grid_t
*grid,
double
q);
197
198
#ifndef _PHOTO_H_
199
# include "
photo.h
"
200
#endif
201
202
/* photo.c */
203
void
photo_init
();
204
void
photo_register
(
double
A,
double
lambda);
205
void
photo_copy_list
(
photo_term_t
*src,
photo_term_t
**dest);
206
void
photo_unregister_all
(
void
);
207
void
photo_dft_r
(
cdr_grid_t
*grid,
int
sign);
208
void
photo_copy_source
(
cdr_grid_t
*grid);
209
void
photo_add_term
(
photo_term_t
*term,
cdr_grid_t
*cdr);
210
void
photo_add_term_r
(
photo_term_t
*term,
cdr_grid_t
*cdr);
211
pois_grid_t
**
photo_calc_term
(
photo_term_t
*term,
cdr_grid_t
*cdr,
int
i
);
212
void
photo_calc
(
photo_term_t
*terms,
cdr_grid_t
*cdr);
213
void
photo_load_file
(
char
*fname);
214
215
/* cstream.c */
216
void
init_parameters
(
void
);
217
void
cstream_init
(
void
);
218
void
cstream_end
(
void
);
219
void
cstream_set_field_at_time
(
double
t);
220
221
/* dft.c */
222
void
dft_transform
(
rz_array_t
*in,
rz_array_t
*out,
int
sign);
223
void
dft_diff
(
grid_t
*grid,
rz_array_t
*f);
224
void
dft_weight
(
cdr_grid_t
*cdr,
rz_array_t
*var,
double
weights[],
225
double
power);
226
void
dft_out_weights
(
cdr_grid_t
*grid,
const
char
*prefix,
double
t);
227
void
dft_perturb
(
cdr_grid_t
*cdr,
rz_array_t
*var,
double
*epsilon_k);
228
void
dft_dens_perturb_r
(
cdr_grid_t
*grid,
int
species,
double
*epsilon_k);
229
230
231
#ifndef _REACTION_H_
232
# include "
reaction.h
"
233
#endif
234
235
/* reaction.c */
236
int
find_species_by_name
(
const
char
*spec_name);
237
void
react_add
(
reaction_t
*react);
238
void
react_init
();
239
void
react_apply_r
(
reaction_t
*react,
cdr_grid_t
*grid,
int
overwrite);
240
void
react_apply_all
(
cdr_grid_t
*grid);
241
242
#ifndef _REACT_TABLE_H_
243
# include "
react_table.h
"
244
#endif
245
246
/* kinetic module (usually minimal.c) */
247
void
kinetic_init
(
void
);
248
249
/* sprites module */
250
double
spr_density_at
(
double
altitude);
251
void
spr_init
();
252
void
spr_hook
(
cdr_grid_t
*grid);
253
void
spr_update
(
double
altitude);
254
double
spr_head_altitude
(
cdr_grid_t
*grid,
int
sign);
255
256
/* rt.c */
257
void
kinetic_init
(
void
);
258
void
read_input_file
(
const
char
*f_kinetic_name,
const
char
*
filename
);
259
260
261
262
263
Generated on Fri Jul 4 2014 15:40:20 for Streamer fluid modeling - An overview of ARCoS by
1.8.2