~asc/fluidity/iceshelfcavity

« back to all changes in this revision

Viewing changes to legacy_reservoir_prototype/tests/CompModel_1d_2Phases_3Components_NonEquilibrium/input.dat

  • Committer: Adam Candy
  • Date: 2011-10-12 20:39:04 UTC
  • Revision ID: adam.candy@imperial.ac.uk-20111012203904-9gwqzs4z798zcw0l
Automatic sync to launchpad

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
 
###
2
 
###  Compositional Model test-case
3
 
### 2 phases (gas / liquid) and 3 components (CH4, CO2 and C10 )
4
 
### (starting under non-equilibrium conditions)
5
 
### First part - before first *** exit *** statement
6
 
### is for scalar variables that will set up the right 
7
 
### size of the arrays
8
 
###
9
 
 
10
 
###
11
 
### Option for debugging: if =357, then all print statements will
12
 
### be sent to the file flog.dat, otherwise to /dev/null
13
 
option_debug          1
14
 
 
15
 
# Problem type: options -2, -1, 0, and 1
16
 
problem               1
17
 
 
18
 
# Number of phases
19
 
nphase                2
20
 
 
21
 
# Number of components
22
 
ncomp                 3
23
 
 
24
 
# total number of elements
25
 
totele               80
26
 
 
27
 
# Dimensionality
28
 
ndim                  1
29
 
 
30
 
# nlev --> controls u_snloc
31
 
nlev                  3
32
 
 
33
 
# Number of velocity nodes
34
 
u_nloc                6
35
 
 
36
 
# Number of spatial nodes associated w velocity 
37
 
xu_nloc               2
38
 
 
39
 
# number of nodes associated with CV
40
 
cv_nloc               3
41
 
 
42
 
# Number of spatial nodes
43
 
x_nloc                3
44
 
 
45
 
# Number of pressure nodes
46
 
p_nloc                3
47
 
 
48
 
# Number of surface nodes associated with CV
49
 
cv_snloc              1
50
 
 
51
 
# Number of surface nodes associated w velocity
52
 
u_snloc              -1
53
 
 
54
 
# Number of surface pressure nodes
55
 
p_snloc               1
56
 
 
57
 
# Number of surface spatial nodes
58
 
x_snloc               1
59
 
 
60
 
# Total number of surface elements
61
 
stotel                2
62
 
 
63
 
# Number of coeffs for polynomial representation for EOS
64
 
ncoef                10
65
 
 
66
 
# Number of coeffs for polynomial representation of permeability/absorption
67
 
nuabs_coefs           1
68
 
 
69
 
# Option for element type: Velocity mesh
70
 
u_ele_type            2
71
 
 
72
 
# Option for element type: Pressure mesh
73
 
p_ele_type            2
74
 
 
75
 
# Option for element type: Material mesh
76
 
mat_ele_type          1
77
 
 
78
 
# Option for element type: CV mesh
79
 
cv_ele_type           2
80
 
 
81
 
# Option for element type: CV surface mesh
82
 
cv_sele_type          1
83
 
 
84
 
# Option for element type: Velocity surface mesh
85
 
u_sele_type           1
86
 
 
87
 
# Total number of time dumps
88
 
#ntime               3
89
 
ntime               2000
90
 
 
91
 
# Frequency in which files will be output into *.d.* files
92
 
ntime_dump           500
93
 
 
94
 
# Total number of non-linear iterations
95
 
nits                  3
96
 
 
97
 
# Total number of non-linear iterations - internal loop
98
 
nits_internal         1
99
 
 
100
 
# noit_dim : dimension of the arrays to be defined in later stage 
101
 
# (e.g., Field_error, Field_relax, Field_relax_diag, Field_relax_row
102
 
# and Field_relax_number_iterations, with 
103
 
# Field = volfra, scalar, velocity, global, pressure, mass_matrix)
104
 
noit_dim 5
105
 
 
106
 
# Maximum number of non-linear iterations for scalar field (saturation /
107
 
# volume fraction (nits_flux_lim_volfra) and composition (nits_flux_lim_comp)
108
 
nits_flux_lim_volfra   1 
109
 
nits_flux_lim_comp     1
110
 
 
111
 
# Option for modified CMC color algorithm(/=0), if <0==>ndpset=cv_nonods 
112
 
ndpset                0
113
 
 
114
 
# Time-step size
115
 
dt                    0.25e-3
116
 
 
117
 
# Reference pressure (not in use)
118
 
patmos                0.
119
 
 
120
 
# Initial pressure (not in use)
121
 
p_ini                 0.
122
 
 
123
 
# Initial temperature (or any scalar field, not in use)
124
 
t_ini                 0.
125
 
 
126
 
# Conservative(1.)/non-conservative(0.) flag for CV discretisation
127
 
t_beta                0.
128
 
 
129
 
# Conservative(1.)/non-conservative(0.) flag for Volfra discretisation
130
 
v_beta                1.
131
 
 
132
 
# Time-stepping discretisation parameter
133
 
t_theta               0.
134
 
 
135
 
# Time-stepping discretisation parameter
136
 
v_theta               1.
137
 
 
138
 
# Time-stepping discretisation parameter (not in use)
139
 
u_theta               1.
140
 
 
141
 
# Disopt: discretisation option in space and time (see cv-adv-dif.f90)
142
 
# = 8: Finite elements in space (Theta = specified;  Limiting: Downwind+)
143
 
t_disopt              1
144
 
 
145
 
# Disopt: discretisation option in space and time (see cv-adv-dif.f90)
146
 
# = 0: 1st order in space (Theta=specified;  Limiting: universal)
147
 
u_disopt              1
148
 
 
149
 
# Disopt: discretisation option in space and time (see cv-adv-dif.f90)
150
 
# = 0: 1st order in space (Theta=specified;  Limiting: universal) - in
151
 
# cv-adv-dif.F90, v_disopt --> cv_disopt
152
 
v_disopt              8
153
 
 
154
 
#  t_dg_vel_int_opt: interface scalar field calculation option between elements
155
 
t_dg_vel_int_opt      0
156
 
 
157
 
#  u_dg_vel_int_opt: interface velocity calculation option between elements
158
 
u_dg_vel_int_opt      4
159
 
 
160
 
#  v_dg_vel_int_opt: interface velocity calculation option between elements
161
 
v_dg_vel_int_opt      4
162
 
 
163
 
#  w_dg_vel_int_opt: interface velocity calculation option between elements
164
 
w_dg_vel_int_opt      0
165
 
 
166
 
# Lump multiphase flow equations
167
 
lump_eqns             F
168
 
 
169
 
# For compositional - work out theta-hat for flux
170
 
comp_get_theta_flux        T
171
 
comp_use_theta_flux        F
172
 
volfra_get_theta_flux        T
173
 
volfra_use_theta_flux        F
174
 
 
175
 
# Domain length
176
 
domain_length         4.
177
 
 
178
 
# Capillary pressure option (for now we just have option = 1)
179
 
capil_pres_opt        0
180
 
 
181
 
# Polynomial representation for the cappilary pressure - order (length of the matrix)
182
 
ncapil_pres_coef      0
183
 
 
184
 
# comp_diffusion_opt: option to allow the diffusion in the multicomponent
185
 
# submodel. =0 disables diffusion calculation
186
 
comp_diffusion_opt    0
187
 
 
188
 
# ncomp_diff_coef: number of coefficients (comp_diff_coef) of the diffusion tensor
189
 
ncomp_diff_coef       1
190
 
 
191
 
 
192
 
###
193
 
### end of scalars variables necessary for the arrays read after
194
 
###
195
 
exit    10
196
 
 
197
 
#############################################################################################
198
 
# To assign variables via external Fortran functions: 
199
 
# If value < -1000, then a pre-defined function may be used, i.e., it is necessary
200
 
#                   to assign the corrected dimension to each array, matrix or 
201
 
#                   tensor IN the external function
202
 
# If value == -1000 then a pre-defined function for ARRAYS (thus not necessary 
203
 
#                   to assign dimension to the array as it will be taken automatically from 
204
 
#                   Multiphase_Prototype.F90)
205
 
# If value == -999 then a pre-defined function for 2x2 MATRIX (thus not necessary 
206
 
#                   to assign dimension to the array as it will be taken automatically from 
207
 
#                   Multiphase_Prototype.F90)
208
 
# If value == -998 then a pre-defined function for 3x3 MATRIX (thus not necessary 
209
 
#                   to assign dimension to the array as it will be taken automatically from 
210
 
#                   Multiphase_Prototype.F90)
211
 
# If value == -997 then a pre-defined function for 4x4 MATRIX (thus not necessary 
212
 
#                   to assign dimension to the array as it will be taken automatically from 
213
 
#                   Multiphase_Prototype.F90)
214
 
# If value == -990 then a pre-defined function for ARRAYS (thus not necessary 
215
 
#                   to assign dimension to the array as it will be taken automatically from 
216
 
#                   Multiphase_Prototype.F90) - temporarily hardcoded to the following 
217
 
#                   fields: COMP and SUF_COMP_BC
218
 
#############################################################################################
219
 
 
220
 
###
221
 
###  Boundary conditions parameters
222
 
###
223
 
 
224
 
# wic_vol_bc( stotel * nphase )
225
 
wic_vol_bc   -1000 InputComp2P3C_wic_vol_bc
226
 
 
227
 
# wic_d_bc( stotel * nphase )
228
 
wic_d_bc    -1000 InputComp2P3C_wic_d_bc
229
 
 
230
 
# wic_u_bc( stotel * nphase )
231
 
wic_u_bc    -1000 InputComp2P3C_wic_vol_bc
232
 
 
233
 
# wic_p_bc( stotel * nphase )
234
 
wic_p_bc    -1000 InputComp2P3C_wic_p_bc
235
 
 
236
 
# wic_t_bc( stotel * nphase )
237
 
wic_t_bc  0   
238
 
 
239
 
# wic_comp_bc( stotel * nphase )
240
 
wic_comp_bc  -1000  InputComp2P3C_wic_vol_bc 
241
 
 
242
 
# suf_vol_bc( stotel * cv_snloc * nphase )
243
 
suf_vol_bc    -1000  InputComp2P3C_suf_vol_bc
244
 
 
245
 
# suf_d_bc( stotel * cv_snloc * nphase )
246
 
suf_d_bc    -1000  InputComp2P3C_suf_vol_bc
247
 
 
248
 
# suf_cpd_bc( stotel * cv_snloc * nphase )
249
 
suf_cpd_bc    0.
250
 
 
251
 
# suf_t_bc( stotel * cv_snloc * nphase )
252
 
### This BC option needs to be generalised later, for now nphase is hard-coded.
253
 
suf_t_bc   -1000 InputComp2P3C_suf_t_bc
254
 
 
255
 
# suf_comp_bc( stotel * cv_snloc * nphase * ncomp )
256
 
suf_comp_bc   -990  InputComp2P3C_suf_comp_bc
257
 
 
258
 
# suf_p_bc ( stotel * p_snloc * nphase )
259
 
suf_p_bc       0.
260
 
 
261
 
# suf_u_bc( stotel * u_snloc * nphase )
262
 
suf_u_bc      -1000  InputComp2P3C_suf_vol_bc
263
 
 
264
 
# suf_v_bc( stotel * u_snloc * nphase )
265
 
suf_v_bc       0.
266
 
  
267
 
# suf_w_bc( stotel * u_snloc * nphase )
268
 
suf_w_bc       0.
269
 
  
270
 
# suf_one_bc( stotel * cv_snloc * nphase )
271
 
suf_one_bc    0.
272
 
suf_one_bc    0.
273
 
 
274
 
# suf_comp_bc_rob1( stotel * cv_snloc * nphase )
275
 
suf_comp_bc_rob1  0.
276
 
 
277
 
# suf_comp_bc_rob2( stotel * cv_snloc * nphase )
278
 
suf_comp_bc_rob2  0.
279
 
 
280
 
# suf_u_bc_rob1( stotel * u_snloc * nphase )
281
 
suf_u_bc_rob1  0.
282
 
 
283
 
# suf_u_bc_rob2( stotel * u_snloc * nphase )
284
 
suf_u_bc_rob2  0.
285
 
 
286
 
# suf_v_bc_rob1( stotel * u_snloc * nphase )
287
 
suf_v_bc_rob1  0.
288
 
 
289
 
# suf_v_bc_rob2( stotel * u_snloc * nphase )
290
 
suf_v_bc_rob2  0.
291
 
 
292
 
# suf_w_bc_rob1( stotel * u_snloc * nphase )
293
 
suf_w_bc_rob1  0.
294
 
 
295
 
# suf_w_bc_rob2( stotel * u_snloc * nphase )
296
 
suf_w_bc_rob2  0.
297
 
 
298
 
# suf_t_bc_rob1( stotel * cv_snloc * nphase )
299
 
suf_t_bc_rob1  0.
300
 
  
301
 
# suf_t_bc_rob2( stotel * cv_snloc * nphase )
302
 
suf_t_bc_rob1  0.
303
 
 
304
 
###
305
 
### Some solvers options -- scalars to be allocated as real arrays 
306
 
### sat_error_relax2_noit, t_error_relax2_noit, gl_error_relax2_noit,
307
 
### u_error_relax2_noit, p_error_relax2_noit and mass_error_relax2_noit
308
 
### with length noit_dim. 
309
 
### All components of the arrays need to be defined as there is NO default
310
 
### value. Components are:
311
 
### (a) Field_error: error associated with Field interations;
312
 
### (b) Field_relax: overall relaxation coefficient associated with Field interations;
313
 
### (c) Field_relax_diag: relaxation coefficient for the diagonal matrix associated with Field interations;
314
 
### (d) Field_relax_row: relaxation coefficient for the sum of the row of the matrix associated with Field interations;
315
 
### (e) Field_relax_number_iterations: maximum number of linear iterations associated with Field interations; 
316
 
### Field: volfra, scalar, velocity, global, pressure, mass_matrix
317
 
###
318
 
 
319
 
# For Volfra (i.e., saturation):
320
 
volfra_error                      1.e-5
321
 
volfra_relax                      1.
322
 
volfra_relax_diag                 0.
323
 
volfra_relax_row                  1.
324
 
volfra_relax_number_iterations    100
325
 
 
326
 
# For Scalar (i.e., T):
327
 
scalar_error                      1.e-5
328
 
scalar_relax                      1.
329
 
scalar_relax_diag                 0.
330
 
scalar_relax_row                  1.
331
 
scalar_relax_number_iterations    100
332
 
 
333
 
# For Global:
334
 
global_error                      1.e-5
335
 
global_relax                      1.
336
 
global_relax_diag                 0.
337
 
global_relax_row                  1.
338
 
global_relax_number_iterations    100
339
 
 
340
 
# For Velocity:
341
 
velocity_error                      1.e-5
342
 
velocity_relax                      1.
343
 
velocity_relax_diag                 0.
344
 
velocity_relax_row                  1.
345
 
velocity_relax_number_iterations    100
346
 
 
347
 
# For Pressure:
348
 
pressure_error                      1.e-3
349
 
pressure_relax                      1.
350
 
pressure_relax_diag                 0.
351
 
pressure_relax_row                  1.
352
 
pressure_relax_number_iterations    4000
353
 
 
354
 
# For Mass Matrix:
355
 
mass_matrix_error                      1.e-5
356
 
mass_matrix_relax                      1.
357
 
mass_matrix_relax_diag                 0.
358
 
mass_matrix_relax_row                  1.
359
 
mass_matrix_relax_number_iterations    100
360
 
 
361
 
###
362
 
### Options for upwind discretisation scheme:
363
 
### in_ele_upwind: coefficient for upwind inside the element
364
 
### dg_ele_upwind: coefficient for upwind between elements
365
 
### = 1: full upwind; = 2: 80% upwind; = 3: optimal;
366
 
### = 4: central difference (more diffusive)
367
 
###
368
 
in_ele_upwind    3
369
 
dg_ele_upwind    3
370
 
  
371
 
###
372
 
### Spatial, grid and velocity parameters
373
 
###
374
 
# x( x_nonods )
375
 
x    0.
376
 
 
377
 
# y( x_nonods )
378
 
y    0.
379
 
 
380
 
# z( x_nonods )
381
 
z    0.
382
 
 
383
 
# xu( xu_nonods )
384
 
xu    0.
385
 
 
386
 
# yu( xu_nonods )
387
 
yu    0.
388
 
 
389
 
# zu( xu_nonods )
390
 
zu    0.
391
 
 
392
 
# nu( u_nonods * nphase )
393
 
nu    1.
394
 
 
395
 
# nv( u_nonods * nphase )
396
 
nv    0.
397
 
 
398
 
# nw( u_nonods * nphase )
399
 
nw    0.
400
 
 
401
 
# ug( u_nonods * nphase )
402
 
ug    0.
403
 
 
404
 
# vg( u_nonods * nphase )
405
 
vg    0.
406
 
 
407
 
# wg( u_nonods * nphase )
408
 
wg    0.
409
 
 
410
 
# u ( u_pha_nonods )
411
 
u    0.
412
 
 
413
 
# v ( u_pha_nonods )
414
 
v    0.
415
 
 
416
 
# w ( u_pha_nonods )
417
 
w     0.
418
 
 
419
 
###
420
 
### Absorption and Source terms (include options for 
421
 
### permeabilities)
422
 
###
423
 
 
424
 
# uabs_option( nphase )
425
 
uabs_option  6
426
 
 
427
 
# Mobility
428
 
Mobility  6.
429
 
# uabs_coefs( nphase, nuabs_coefs )
430
 
uabs_coefs   1.
431
 
 
432
 
# u_abs_stab ( mat_nonods, ndim * nphase, ndim * nphase )
433
 
u_abs_stab    0.
434
 
 
435
 
# u_absorb ( mat_nonods, ndim * nphase, ndim * nphase )
436
 
u_absorb   0.
437
 
 
438
 
# t_absorb ( cv_pha_nonods, nphase, nphase )
439
 
t_absorb    0.
440
 
 
441
 
# v_absorb ( cv_pha_nonods, nphase, nphase )
442
 
v_absorb  0.
443
 
 
444
 
# u_source( u_pha_nonods )
445
 
u_source  0.
446
 
 
447
 
# t_source( cv_pha_nonods )
448
 
t_source   0.
449
 
 
450
 
# v_source( cv_pha_nonods )
451
 
v_source   0.
452
 
 
453
 
# perm ( totele, ndim, ndim )
454
 
perm      -998   InputComp2P3C_permability
455
 
 
456
 
 
457
 
###
458
 
### Diffusion terms
459
 
###
460
 
 
461
 
#  udiffusion( mat_nonods, ndim, ndim, nphase )
462
 
udiffusion   0.
463
 
 
464
 
#  tdiffusion( mat_nonods, ndim, ndim, nphase )
465
 
tdiffusion   0.
466
 
 
467
 
###
468
 
### Scalar fields and pressures
469
 
###
470
 
 
471
 
# satura ( cv_pha_nonods )
472
 
satura   -1000  InputComp2P3C_saturation
473
 
 
474
 
# volfra ( cv_pha_nonods )
475
 
volfra    0.
476
 
 
477
 
# t ( cv_pha_nonods )
478
 
t    0.
479
 
 
480
 
# cv_one( cv_pha_nonods )
481
 
cv_one    0.
482
 
 
483
 
# p ( cv_nonods )
484
 
p     0.
485
 
 
486
 
# cv_p (cv_nonods )
487
 
cv_p    0.
488
 
 
489
 
# Capillary pressure coefficients (for the polynomial representation)
490
 
capil_pres_coef     0
491
 
 
492
 
###
493
 
### Densities, Equations of State and Compositional parameterisations
494
 
###
495
 
 
496
 
# den ( cv_pha_nonods )
497
 
den    1.
498
 
 
499
 
# comp( cv_pha_nonods * ncomp )
500
 
comp    -990 InputComp2P3C_Comp2
501
 
 
502
 
# volfra_pore ( totele )
503
 
volfra_pore   .5
504
 
 
505
 
# eos_option( nphase )
506
 
eos_option   2
507
 
 
508
 
# eos_coefs( nphase, ncoef )
509
 
eos_coefs   -999  InputComp2P3C_EOSCoeff 
510
 
 
511
 
# cp_option( nphase )
512
 
cp_option   0
513
 
  
514
 
# cp_coefs( nphase, ncp_coefs )
515
 
cp_coefs   1.
516
 
 
517
 
# Option to use a sigmoid function in the K-Value Constant as function
518
 
# of the saturation. If false, the non-zero values stored in K_Comp 
519
 
# variable will be inverted, i.e.,  K_Comp = 1. / K_Comp 
520
 
KComp_Sigmoid   T
521
 
 
522
 
# K_Comp( ncomp, nphase, nphase )
523
 
K_Comp      -998  InputComp2P3C_KComp
524
 
 
525
 
# Ensure the sum of the components is equal to one
526
 
Comp_Sum2One    F
527
 
 
528
 
# alpha_beta: parameter for the K partition relation between phases
529
 
alpha_beta  1.
530
 
 
531
 
# ncomp_diff_coef: number of coefficients (comp_diff_coef) of the diffusion tensor
532
 
comp_diff_coef      1.
533
 
 
534
 
# end of the input file 
535
 
exit  10
536
 
 
537