xref: /libCEED/examples/fluids/README.md (revision 88626eed6564cd43033d3137230605fb5f962840)
1ccaff030SJeremy L Thompson## libCEED: Navier-Stokes Example
2ccaff030SJeremy L Thompson
3ccaff030SJeremy L ThompsonThis page provides a description of the Navier-Stokes example for the libCEED library, based on PETSc.
4b8962995SJeremy L ThompsonPETSc v3.17 or a development version of PETSc at commit 0e95d842 or later is required.
5ccaff030SJeremy L Thompson
677841947SLeila GhaffariThe Navier-Stokes problem solves the compressible Navier-Stokes equations in three dimensions using an explicit time integration.
777841947SLeila GhaffariThe state variables are mass density, momentum density, and energy density.
8ccaff030SJeremy L Thompson
977841947SLeila GhaffariThe main Navier-Stokes solver for libCEED is defined in [`navierstokes.c`](navierstokes.c) with different problem definitions according to the application of interest.
10ccaff030SJeremy L Thompson
11bc7bbd5dSLeila GhaffariBuild by using:
12ccaff030SJeremy L Thompson
13ccaff030SJeremy L Thompson`make`
14ccaff030SJeremy L Thompson
15bc7bbd5dSLeila Ghaffariand run with:
16ccaff030SJeremy L Thompson
17bc7bbd5dSLeila Ghaffari```
18bc7bbd5dSLeila Ghaffari./navierstokes -ceed [ceed] -problem [problem type] -degree [degree]
19bc7bbd5dSLeila Ghaffari```
20ccaff030SJeremy L Thompson
21bc7bbd5dSLeila Ghaffari## Runtime options
22ccaff030SJeremy L Thompson
23bc7bbd5dSLeila Ghaffari% inclusion-fluids-marker
24ccaff030SJeremy L Thompson
25bc7bbd5dSLeila GhaffariThe Navier-Stokes mini-app is controlled via command-line options.
26bc7bbd5dSLeila GhaffariThe following options are common among all problem types:
27ccaff030SJeremy L Thompson
28bc7bbd5dSLeila Ghaffari:::{list-table} Common Runtime Options
29bc7bbd5dSLeila Ghaffari:header-rows: 1
30ccaff030SJeremy L Thompson
31bc7bbd5dSLeila Ghaffari* - Option
32bc7bbd5dSLeila Ghaffari  - Description
33bc7bbd5dSLeila Ghaffari  - Default value
34ccaff030SJeremy L Thompson
35bc7bbd5dSLeila Ghaffari* - `-ceed`
36bc7bbd5dSLeila Ghaffari  - CEED resource specifier
37bc7bbd5dSLeila Ghaffari  - `/cpu/self/opt/blocked`
38ccaff030SJeremy L Thompson
39bc7bbd5dSLeila Ghaffari* - `-test`
40bc7bbd5dSLeila Ghaffari  - Run in test mode
41bc7bbd5dSLeila Ghaffari  - `false`
42ccaff030SJeremy L Thompson
43bc7bbd5dSLeila Ghaffari* - `-compare_final_state_atol`
44bc7bbd5dSLeila Ghaffari  - Test absolute tolerance
45bc7bbd5dSLeila Ghaffari  - `1E-11`
46ccaff030SJeremy L Thompson
47bc7bbd5dSLeila Ghaffari* - `-compare_final_state_filename`
48bc7bbd5dSLeila Ghaffari  - Test filename
49bc7bbd5dSLeila Ghaffari  -
50ccaff030SJeremy L Thompson
51bc7bbd5dSLeila Ghaffari* - `-problem`
52bc7bbd5dSLeila Ghaffari  - Problem to solve (`advection`, `advection2d`, `density_current`, or `euler_vortex`)
53bc7bbd5dSLeila Ghaffari  - `density_current`
54ccaff030SJeremy L Thompson
55bc7bbd5dSLeila Ghaffari* - `-implicit`
56bc7bbd5dSLeila Ghaffari  - Use implicit time integartor formulation
57bc7bbd5dSLeila Ghaffari  -
58ccaff030SJeremy L Thompson
59bc7bbd5dSLeila Ghaffari* - `-degree`
60bc7bbd5dSLeila Ghaffari  - Polynomial degree of tensor product basis (must be >= 1)
61bc7bbd5dSLeila Ghaffari  - `1`
62ccaff030SJeremy L Thompson
632288fb52SJeremy L Thompson* - `-q_extra`
64bc7bbd5dSLeila Ghaffari  - Number of extra quadrature points
65bc7bbd5dSLeila Ghaffari  - `2`
66ccaff030SJeremy L Thompson
67bc7bbd5dSLeila Ghaffari* - `-viz_refine`
68bc7bbd5dSLeila Ghaffari  - Use regular refinement for visualization
69bc7bbd5dSLeila Ghaffari  - `0`
70ccaff030SJeremy L Thompson
71bc7bbd5dSLeila Ghaffari* - `-output_freq`
72bc7bbd5dSLeila Ghaffari  - Frequency of output, in number of steps
73bc7bbd5dSLeila Ghaffari  - `10`
74ccaff030SJeremy L Thompson
75bc7bbd5dSLeila Ghaffari* - `-continue`
76bc7bbd5dSLeila Ghaffari  - Continue from previous solution
77bc7bbd5dSLeila Ghaffari  - `0`
78ccaff030SJeremy L Thompson
79bc7bbd5dSLeila Ghaffari* - `-output_dir`
80bc7bbd5dSLeila Ghaffari  - Output directory
81bc7bbd5dSLeila Ghaffari  - `.`
82ccaff030SJeremy L Thompson
834534a52eSLeila Ghaffari* - `-bc_wall`
844534a52eSLeila Ghaffari  - Use wall boundary conditions on this list of faces
854534a52eSLeila Ghaffari  -
864534a52eSLeila Ghaffari
874534a52eSLeila Ghaffari* - `-wall_comps`
884534a52eSLeila Ghaffari  - An array of constrained component numbers for wall BCs
894534a52eSLeila Ghaffari  -
904534a52eSLeila Ghaffari
914534a52eSLeila Ghaffari* - `-bc_slip_x`
924534a52eSLeila Ghaffari  - Use slip boundary conditions, for the x component, on this list of faces
934534a52eSLeila Ghaffari  -
944534a52eSLeila Ghaffari
954534a52eSLeila Ghaffari* - `-bc_slip_y`
964534a52eSLeila Ghaffari  - Use slip boundary conditions, for the y component, on this list of faces
974534a52eSLeila Ghaffari  -
984534a52eSLeila Ghaffari
994534a52eSLeila Ghaffari* - `-bc_slip_z`
1004534a52eSLeila Ghaffari  - Use slip boundary conditions, for the z component, on this list of faces
1014534a52eSLeila Ghaffari  -
1024534a52eSLeila Ghaffari
1034534a52eSLeila Ghaffari* - `-bc_inflow`
1044534a52eSLeila Ghaffari  - Use inflow boundary conditions on this list of faces
1054534a52eSLeila Ghaffari  -
1064534a52eSLeila Ghaffari
1074534a52eSLeila Ghaffari* - `-bc_outflow`
1084534a52eSLeila Ghaffari  - Use outflow boundary conditions on this list of faces
1094534a52eSLeila Ghaffari  -
11089d0f5c0SLeila Ghaffari
111bc7bbd5dSLeila Ghaffari* - `-snes_view`
112bc7bbd5dSLeila Ghaffari  - View PETSc `SNES` nonlinear solver configuration
113bc7bbd5dSLeila Ghaffari  -
11489d0f5c0SLeila Ghaffari
115bc7bbd5dSLeila Ghaffari* - `-log_view`
116bc7bbd5dSLeila Ghaffari  - View PETSc performance log
117bc7bbd5dSLeila Ghaffari  -
118ccaff030SJeremy L Thompson
119bc7bbd5dSLeila Ghaffari* - `-help`
120bc7bbd5dSLeila Ghaffari  - View comprehensive information about run-time options
121bc7bbd5dSLeila Ghaffari  -
122bc7bbd5dSLeila Ghaffari:::
123ccaff030SJeremy L Thompson
1244534a52eSLeila GhaffariFor the case of a square/cubic mesh, the list of face indices to be used with `-bc_wall`, `bc_inflow`, `bc_outflow` and/or `-bc_slip_x`, `-bc_slip_y`, and `-bc_slip_z` are:
1254534a52eSLeila Ghaffari
126*88626eedSJames Wright:::{list-table} 2D Face ID Labels
127*88626eedSJames Wright:header-rows: 1
128*88626eedSJames Wright* - PETSc Face Name
129*88626eedSJames Wright  - Cartesian direction
130*88626eedSJames Wright  - Face ID
131*88626eedSJames Wright
132*88626eedSJames Wright* - faceMarkerBottom
133*88626eedSJames Wright  - -z
134*88626eedSJames Wright  - 1
135*88626eedSJames Wright
136*88626eedSJames Wright* - faceMarkerRight
137*88626eedSJames Wright  - +x
138*88626eedSJames Wright  - 2
139*88626eedSJames Wright
140*88626eedSJames Wright* - faceMarkerTop
141*88626eedSJames Wright  - +z
142*88626eedSJames Wright  - 3
143*88626eedSJames Wright
144*88626eedSJames Wright* - faceMarkerLeft
145*88626eedSJames Wright  - -x
146*88626eedSJames Wright  - 4
147*88626eedSJames Wright:::
148*88626eedSJames Wright
149*88626eedSJames Wright:::{list-table} 2D Face ID Labels
150*88626eedSJames Wright:header-rows: 1
151*88626eedSJames Wright* - PETSc Face Name
152*88626eedSJames Wright  - Cartesian direction
153*88626eedSJames Wright  - Face ID
154*88626eedSJames Wright
155*88626eedSJames Wright* - faceMarkerBottom
156*88626eedSJames Wright  - -z
157*88626eedSJames Wright  - 1
158*88626eedSJames Wright
159*88626eedSJames Wright* - faceMarkerTop
160*88626eedSJames Wright  - +z
161*88626eedSJames Wright  - 2
162*88626eedSJames Wright
163*88626eedSJames Wright* - faceMarkerFront
164*88626eedSJames Wright  - -y
165*88626eedSJames Wright  - 3
166*88626eedSJames Wright
167*88626eedSJames Wright* - faceMarkerBack
168*88626eedSJames Wright  - +y
169*88626eedSJames Wright  - 4
170*88626eedSJames Wright
171*88626eedSJames Wright* - faceMarkerRight
172*88626eedSJames Wright  - +x
173*88626eedSJames Wright  - 5
174*88626eedSJames Wright
175*88626eedSJames Wright* - faceMarkerLeft
176*88626eedSJames Wright  - -x
177*88626eedSJames Wright  - 6
178*88626eedSJames Wright:::
1794534a52eSLeila Ghaffari
180bc7bbd5dSLeila GhaffariFor the 2D advection problem, the following additional command-line options are available:
181ccaff030SJeremy L Thompson
182bc7bbd5dSLeila Ghaffari:::{list-table} Advection2D Runtime Options
183bc7bbd5dSLeila Ghaffari:header-rows: 1
18489d0f5c0SLeila Ghaffari
185bc7bbd5dSLeila Ghaffari* - Option
186bc7bbd5dSLeila Ghaffari  - Description
187bc7bbd5dSLeila Ghaffari  - Default value
188bc7bbd5dSLeila Ghaffari  - Unit
18989d0f5c0SLeila Ghaffari
190bc7bbd5dSLeila Ghaffari* - `-rc`
191bc7bbd5dSLeila Ghaffari  - Characteristic radius of thermal bubble
192bc7bbd5dSLeila Ghaffari  - `1000`
193bc7bbd5dSLeila Ghaffari  - `m`
19489d0f5c0SLeila Ghaffari
195bc7bbd5dSLeila Ghaffari* - `-units_meter`
196bc7bbd5dSLeila Ghaffari  - 1 meter in scaled length units
197bc7bbd5dSLeila Ghaffari  - `1E-2`
198bc7bbd5dSLeila Ghaffari  -
19989d0f5c0SLeila Ghaffari
200bc7bbd5dSLeila Ghaffari* - `-units_second`
201bc7bbd5dSLeila Ghaffari  - 1 second in scaled time units
202bc7bbd5dSLeila Ghaffari  - `1E-2`
203bc7bbd5dSLeila Ghaffari  -
20489d0f5c0SLeila Ghaffari
205bc7bbd5dSLeila Ghaffari* - `-units_kilogram`
206bc7bbd5dSLeila Ghaffari  - 1 kilogram in scaled mass units
207bc7bbd5dSLeila Ghaffari  - `1E-6`
208bc7bbd5dSLeila Ghaffari  -
20977841947SLeila Ghaffari
210bc7bbd5dSLeila Ghaffari* - `-strong_form`
211bc7bbd5dSLeila Ghaffari  - Strong (1) or weak/integrated by parts (0) residual
212bc7bbd5dSLeila Ghaffari  - `0`
213bc7bbd5dSLeila Ghaffari  -
21477841947SLeila Ghaffari
215bc7bbd5dSLeila Ghaffari* - `-stab`
216bc7bbd5dSLeila Ghaffari  - Stabilization method (`none`, `su`, or `supg`)
217bc7bbd5dSLeila Ghaffari  - `none`
218bc7bbd5dSLeila Ghaffari  -
21977841947SLeila Ghaffari
220bc7bbd5dSLeila Ghaffari* - `-CtauS`
221bc7bbd5dSLeila Ghaffari  - Scale coefficient for stabilization tau (nondimensional)
222bc7bbd5dSLeila Ghaffari  - `0`
223bc7bbd5dSLeila Ghaffari  -
22477841947SLeila Ghaffari
225bc7bbd5dSLeila Ghaffari* - `-wind_type`
226bc7bbd5dSLeila Ghaffari  - Wind type in Advection (`rotation` or `translation`)
227bc7bbd5dSLeila Ghaffari  - `rotation`
228bc7bbd5dSLeila Ghaffari  -
22977841947SLeila Ghaffari
230bc7bbd5dSLeila Ghaffari* - `-wind_translation`
231bc7bbd5dSLeila Ghaffari  - Constant wind vector when `-wind_type translation`
232bc7bbd5dSLeila Ghaffari  - `1,0,0`
233bc7bbd5dSLeila Ghaffari  -
23489d0f5c0SLeila Ghaffari
235bc7bbd5dSLeila Ghaffari* - `-E_wind`
236bc7bbd5dSLeila Ghaffari  - Total energy of inflow wind when `-wind_type translation`
237bc7bbd5dSLeila Ghaffari  - `1E6`
238bc7bbd5dSLeila Ghaffari  - `J`
239bc7bbd5dSLeila Ghaffari:::
240e43605a5SLeila Ghaffari
241bc7bbd5dSLeila GhaffariAn example of the `rotation` mode can be run with:
242e43605a5SLeila Ghaffari
243bc7bbd5dSLeila Ghaffari```
2444534a52eSLeila Ghaffari./navierstokes -problem advection2d -dm_plex_box_faces 20,20 -dm_plex_box_lower 0,0 -dm_plex_box_upper 1000,1000 -bc_wall 1,2,3,4 -wall_comps 4 -wind_type rotation -implicit -stab supg
245bc7bbd5dSLeila Ghaffari```
246e43605a5SLeila Ghaffari
247bc7bbd5dSLeila Ghaffariand the `translation` mode with:
248e43605a5SLeila Ghaffari
249bc7bbd5dSLeila Ghaffari```
2504534a52eSLeila Ghaffari./navierstokes -problem advection2d -dm_plex_box_faces 20,20 -dm_plex_box_lower 0,0 -dm_plex_box_upper 1000,1000 -units_meter 1e-4 -wind_type translation -wind_translation 1,-.5 -bc_inflow 1,2,3,4
251bc7bbd5dSLeila Ghaffari```
2524534a52eSLeila GhaffariNote the lengths in `-dm_plex_box_upper` are given in meters, and will be nondimensionalized according to `-units_meter`.
253e43605a5SLeila Ghaffari
254bc7bbd5dSLeila GhaffariFor the 3D advection problem, the following additional command-line options are available:
255e43605a5SLeila Ghaffari
256bc7bbd5dSLeila Ghaffari:::{list-table} Advection3D Runtime Options
257bc7bbd5dSLeila Ghaffari:header-rows: 1
258e43605a5SLeila Ghaffari
259bc7bbd5dSLeila Ghaffari* - Option
260bc7bbd5dSLeila Ghaffari  - Description
261bc7bbd5dSLeila Ghaffari  - Default value
262bc7bbd5dSLeila Ghaffari  - Unit
263e43605a5SLeila Ghaffari
264bc7bbd5dSLeila Ghaffari* - `-rc`
265bc7bbd5dSLeila Ghaffari  - Characteristic radius of thermal bubble
266bc7bbd5dSLeila Ghaffari  - `1000`
267bc7bbd5dSLeila Ghaffari  - `m`
268e43605a5SLeila Ghaffari
269bc7bbd5dSLeila Ghaffari* - `-units_meter`
270bc7bbd5dSLeila Ghaffari  - 1 meter in scaled length units
271bc7bbd5dSLeila Ghaffari  - `1E-2`
272bc7bbd5dSLeila Ghaffari  -
273e43605a5SLeila Ghaffari
274bc7bbd5dSLeila Ghaffari* - `-units_second`
275bc7bbd5dSLeila Ghaffari  - 1 second in scaled time units
276bc7bbd5dSLeila Ghaffari  - `1E-2`
277bc7bbd5dSLeila Ghaffari  -
278e43605a5SLeila Ghaffari
279bc7bbd5dSLeila Ghaffari* - `-units_kilogram`
280bc7bbd5dSLeila Ghaffari  - 1 kilogram in scaled mass units
281bc7bbd5dSLeila Ghaffari  - `1E-6`
282bc7bbd5dSLeila Ghaffari  -
283e43605a5SLeila Ghaffari
284bc7bbd5dSLeila Ghaffari* - `-strong_form`
285bc7bbd5dSLeila Ghaffari  - Strong (1) or weak/integrated by parts (0) residual
286bc7bbd5dSLeila Ghaffari  - `0`
287bc7bbd5dSLeila Ghaffari  -
288e43605a5SLeila Ghaffari
289bc7bbd5dSLeila Ghaffari* - `-stab`
290bc7bbd5dSLeila Ghaffari  - Stabilization method (`none`, `su`, or `supg`)
291bc7bbd5dSLeila Ghaffari  - `none`
292bc7bbd5dSLeila Ghaffari  -
293e43605a5SLeila Ghaffari
294bc7bbd5dSLeila Ghaffari* - `-CtauS`
295bc7bbd5dSLeila Ghaffari  - Scale coefficient for stabilization tau (nondimensional)
296bc7bbd5dSLeila Ghaffari  - `0`
297bc7bbd5dSLeila Ghaffari  -
298e43605a5SLeila Ghaffari
299bc7bbd5dSLeila Ghaffari* - `-wind_type`
300bc7bbd5dSLeila Ghaffari  - Wind type in Advection (`rotation` or `translation`)
301bc7bbd5dSLeila Ghaffari  - `rotation`
302bc7bbd5dSLeila Ghaffari  -
303e43605a5SLeila Ghaffari
304bc7bbd5dSLeila Ghaffari* - `-wind_translation`
305bc7bbd5dSLeila Ghaffari  - Constant wind vector when `-wind_type translation`
306bc7bbd5dSLeila Ghaffari  - `1,0,0`
307bc7bbd5dSLeila Ghaffari  -
308e43605a5SLeila Ghaffari
309bc7bbd5dSLeila Ghaffari* - `-E_wind`
310bc7bbd5dSLeila Ghaffari  - Total energy of inflow wind when `-wind_type translation`
311bc7bbd5dSLeila Ghaffari  - `1E6`
312bc7bbd5dSLeila Ghaffari  - `J`
313e43605a5SLeila Ghaffari
314bc7bbd5dSLeila Ghaffari* - `-bubble_type`
315bc7bbd5dSLeila Ghaffari  - `sphere` (3D) or `cylinder` (2D)
316bc7bbd5dSLeila Ghaffari  - `shpere`
317bc7bbd5dSLeila Ghaffari  -
318e43605a5SLeila Ghaffari
319bc7bbd5dSLeila Ghaffari* - `-bubble_continuity`
320bc7bbd5dSLeila Ghaffari  - `smooth`, `back_sharp`, or `thick`
321bc7bbd5dSLeila Ghaffari  - `smooth`
322bc7bbd5dSLeila Ghaffari  -
323bc7bbd5dSLeila Ghaffari:::
324ccaff030SJeremy L Thompson
325bc7bbd5dSLeila GhaffariAn example of the `rotation` mode can be run with:
326ccaff030SJeremy L Thompson
327bc7bbd5dSLeila Ghaffari```
3284534a52eSLeila Ghaffari./navierstokes -problem advection -dm_plex_box_faces 10,10,10 -dm_plex_dim 3 -dm_plex_box_lower 0,0,0 -dm_plex_box_upper 8000,8000,8000 -bc_wall 1,2,3,4,5,6 -wall_comps 4 -wind_type rotation -implicit -stab su
329bc7bbd5dSLeila Ghaffari```
330ccaff030SJeremy L Thompson
331bc7bbd5dSLeila Ghaffariand the `translation` mode with:
332ccaff030SJeremy L Thompson
333bc7bbd5dSLeila Ghaffari```
3344534a52eSLeila Ghaffari./navierstokes -problem advection -dm_plex_box_faces 10,10,10 -dm_plex_dim 3 -dm_plex_box_lower 0,0,0 -dm_plex_box_upper 8000,8000,8000 -wind_type translation -wind_translation .5,-1,0 -bc_inflow 1,2,3,4,5,6
335bc7bbd5dSLeila Ghaffari```
336ccaff030SJeremy L Thompson
337bc7bbd5dSLeila GhaffariFor the Isentropic Vortex problem, the following additional command-line options are available:
338ccaff030SJeremy L Thompson
339bc7bbd5dSLeila Ghaffari:::{list-table} Isentropic Vortex Runtime Options
340bc7bbd5dSLeila Ghaffari:header-rows: 1
341ccaff030SJeremy L Thompson
342bc7bbd5dSLeila Ghaffari* - Option
343bc7bbd5dSLeila Ghaffari  - Description
344bc7bbd5dSLeila Ghaffari  - Default value
345bc7bbd5dSLeila Ghaffari  - Unit
346ccaff030SJeremy L Thompson
347bc7bbd5dSLeila Ghaffari* - `-center`
348bc7bbd5dSLeila Ghaffari  - Location of vortex center
349bc7bbd5dSLeila Ghaffari  - `(lx,ly,lz)/2`
350bc7bbd5dSLeila Ghaffari  - `(m,m,m)`
351ccaff030SJeremy L Thompson
352bc7bbd5dSLeila Ghaffari* - `-units_meter`
353bc7bbd5dSLeila Ghaffari  - 1 meter in scaled length units
354bc7bbd5dSLeila Ghaffari  - `1E-2`
355bc7bbd5dSLeila Ghaffari  -
356ccaff030SJeremy L Thompson
357bc7bbd5dSLeila Ghaffari* - `-units_second`
358bc7bbd5dSLeila Ghaffari  - 1 second in scaled time units
359bc7bbd5dSLeila Ghaffari  - `1E-2`
360bc7bbd5dSLeila Ghaffari  -
361ccaff030SJeremy L Thompson
362bc7bbd5dSLeila Ghaffari* - `-mean_velocity`
363bc7bbd5dSLeila Ghaffari  - Background velocity vector
364bc7bbd5dSLeila Ghaffari  - `(1,1,0)`
365bc7bbd5dSLeila Ghaffari  -
366ccaff030SJeremy L Thompson
367bc7bbd5dSLeila Ghaffari* - `-vortex_strength`
368bc7bbd5dSLeila Ghaffari  - Strength of vortex < 10
369bc7bbd5dSLeila Ghaffari  - `5`
370bc7bbd5dSLeila Ghaffari  -
371932417b3SJed Brown
372932417b3SJed Brown* - `-c_tau`
373932417b3SJed Brown  - Stabilization constant
374504dc8e0SLeila Ghaffari  - `0.5`
375932417b3SJed Brown  -
376bc7bbd5dSLeila Ghaffari:::
377ccaff030SJeremy L Thompson
378bc7bbd5dSLeila GhaffariThis problem can be run with:
379ccaff030SJeremy L Thompson
380bc7bbd5dSLeila Ghaffari```
3814534a52eSLeila Ghaffari./navierstokes -problem euler_vortex -dm_plex_box_faces 20,20,1 -dm_plex_box_lower 0,0,0 -dm_plex_box_upper 1000,1000,50 -dm_plex_dim 3 -bc_inflow 4,6 -bc_outflow 3,5 -bc_slip_z 1,2 -mean_velocity .5,-.8,0.
382bc7bbd5dSLeila Ghaffari```
383ccaff030SJeremy L Thompson
384*88626eedSJames WrightFor the Density Current, Channel, and Blasius problems, the following common command-line options are available:
385ccaff030SJeremy L Thompson
386*88626eedSJames Wright:::{list-table} Newtonian Ideal Gas problems Runtime Options
387bc7bbd5dSLeila Ghaffari:header-rows: 1
388ccaff030SJeremy L Thompson
389bc7bbd5dSLeila Ghaffari* - Option
390bc7bbd5dSLeila Ghaffari  - Description
391bc7bbd5dSLeila Ghaffari  - Default value
392bc7bbd5dSLeila Ghaffari  - Unit
393ccaff030SJeremy L Thompson
394bc7bbd5dSLeila Ghaffari* - `-units_meter`
395bc7bbd5dSLeila Ghaffari  - 1 meter in scaled length units
396*88626eedSJames Wright  - `1`
397bc7bbd5dSLeila Ghaffari  -
398ccaff030SJeremy L Thompson
399bc7bbd5dSLeila Ghaffari* - `-units_second`
400bc7bbd5dSLeila Ghaffari  - 1 second in scaled time units
401*88626eedSJames Wright  - `1`
402bc7bbd5dSLeila Ghaffari  -
403ccaff030SJeremy L Thompson
404bc7bbd5dSLeila Ghaffari* - `-units_kilogram`
405bc7bbd5dSLeila Ghaffari  - 1 kilogram in scaled mass units
406*88626eedSJames Wright  - `1`
407bc7bbd5dSLeila Ghaffari  -
408ccaff030SJeremy L Thompson
409bc7bbd5dSLeila Ghaffari* - `-units_Kelvin`
410bc7bbd5dSLeila Ghaffari  - 1 Kelvin in scaled temperature units
411bc7bbd5dSLeila Ghaffari  - `1`
412bc7bbd5dSLeila Ghaffari  -
413ccaff030SJeremy L Thompson
414bc7bbd5dSLeila Ghaffari* - `-stab`
415bc7bbd5dSLeila Ghaffari  - Stabilization method (`none`, `su`, or `supg`)
416bc7bbd5dSLeila Ghaffari  - `none`
417bc7bbd5dSLeila Ghaffari  -
418ccaff030SJeremy L Thompson
419932417b3SJed Brown* - `-c_tau`
420*88626eedSJames Wright  - Stabilization constant, $c_\tau$
421504dc8e0SLeila Ghaffari  - `0.5`
422932417b3SJed Brown  -
423932417b3SJed Brown
424*88626eedSJames Wright* - `-Ctau_t`
425*88626eedSJames Wright  - Stabilization time constant, $C_t$
426*88626eedSJames Wright  - `1.0`
427*88626eedSJames Wright  -
428ccaff030SJeremy L Thompson
429*88626eedSJames Wright* - `-Ctau_v`
430*88626eedSJames Wright  - Stabilization viscous constant, $C_v$
431*88626eedSJames Wright  - `36.0`
432*88626eedSJames Wright  -
433ccaff030SJeremy L Thompson
434*88626eedSJames Wright* - `-Ctau_C`
435*88626eedSJames Wright  - Stabilization continuity constant, $C_c$
436*88626eedSJames Wright  - `1.0`
437*88626eedSJames Wright  -
438ccaff030SJeremy L Thompson
439*88626eedSJames Wright* - `-Ctau_M`
440*88626eedSJames Wright  - Stabilization momentum constant, $C_m$
441*88626eedSJames Wright  - `1.0`
442*88626eedSJames Wright  -
443*88626eedSJames Wright
444*88626eedSJames Wright* - `-Ctau_E`
445*88626eedSJames Wright  - Stabilization energy constant, $C_E$
446*88626eedSJames Wright  - `1.0`
447*88626eedSJames Wright  -
448ccaff030SJeremy L Thompson
449bc7bbd5dSLeila Ghaffari* - `-cv`
450bc7bbd5dSLeila Ghaffari  - Heat capacity at constant volume
451bc7bbd5dSLeila Ghaffari  - `717`
452bc7bbd5dSLeila Ghaffari  - `J/(kg K)`
453ccaff030SJeremy L Thompson
454bc7bbd5dSLeila Ghaffari* - `-cp`
455bc7bbd5dSLeila Ghaffari  - Heat capacity at constant pressure
456bc7bbd5dSLeila Ghaffari  - `1004`
457bc7bbd5dSLeila Ghaffari  - `J/(kg K)`
458ccaff030SJeremy L Thompson
459bc7bbd5dSLeila Ghaffari* - `-g`
460bc7bbd5dSLeila Ghaffari  - Gravitational acceleration
461bc7bbd5dSLeila Ghaffari  - `9.81`
462bc7bbd5dSLeila Ghaffari  - `m/s^2`
463ccaff030SJeremy L Thompson
464bc7bbd5dSLeila Ghaffari* - `-lambda`
465bc7bbd5dSLeila Ghaffari  - Stokes hypothesis second viscosity coefficient
466bc7bbd5dSLeila Ghaffari  - `-2/3`
467bc7bbd5dSLeila Ghaffari  -
468ccaff030SJeremy L Thompson
469bc7bbd5dSLeila Ghaffari* - `-mu`
470bc7bbd5dSLeila Ghaffari  - Shear dynamic viscosity coefficient
471bc7bbd5dSLeila Ghaffari  - `75`
472bc7bbd5dSLeila Ghaffari  -  `Pa s`
47377841947SLeila Ghaffari
474bc7bbd5dSLeila Ghaffari* - `-k`
475bc7bbd5dSLeila Ghaffari  - Thermal conductivity
476bc7bbd5dSLeila Ghaffari  - `0.02638`
477bc7bbd5dSLeila Ghaffari  - `W/(m K)`
478bc7bbd5dSLeila Ghaffari:::
47977841947SLeila Ghaffari
480*88626eedSJames WrightThe Density Current problem the following command-line options are available in
481*88626eedSJames Wrightaddition to the Newtonian Ideal Gas options:
482*88626eedSJames Wright
483*88626eedSJames Wright:::{list-table} Density Current Runtime Options
484*88626eedSJames Wright:header-rows: 1
485*88626eedSJames Wright
486*88626eedSJames Wright* - Option
487*88626eedSJames Wright  - Description
488*88626eedSJames Wright  - Default value
489*88626eedSJames Wright  - Unit
490*88626eedSJames Wright
491*88626eedSJames Wright* - `-center`
492*88626eedSJames Wright  - Location of bubble center
493*88626eedSJames Wright  - `(lx,ly,lz)/2`
494*88626eedSJames Wright  - `(m,m,m)`
495*88626eedSJames Wright
496*88626eedSJames Wright* - `-dc_axis`
497*88626eedSJames Wright  - Axis of density current cylindrical anomaly, or `(0,0,0)` for spherically symmetric
498*88626eedSJames Wright  - `(0,0,0)`
499*88626eedSJames Wright  -
500*88626eedSJames Wright
501*88626eedSJames Wright* - `-rc`
502*88626eedSJames Wright  - Characteristic radius of thermal bubble
503*88626eedSJames Wright  - `1000`
504*88626eedSJames Wright  - `m`
505*88626eedSJames Wright
506*88626eedSJames Wright* - `-theta0`
507*88626eedSJames Wright  - Reference potential temperature
508*88626eedSJames Wright  - `300`
509*88626eedSJames Wright  - `K`
510*88626eedSJames Wright
511*88626eedSJames Wright* - `-thetaC`
512*88626eedSJames Wright  - Perturbation of potential temperature
513*88626eedSJames Wright  - `-15`
514*88626eedSJames Wright  - `K`
515*88626eedSJames Wright
516*88626eedSJames Wright* - `-P0`
517*88626eedSJames Wright  - Atmospheric pressure
518*88626eedSJames Wright  - `1E5`
519*88626eedSJames Wright  - `Pa`
520*88626eedSJames Wright
521*88626eedSJames Wright* - `-N`
522*88626eedSJames Wright  - Brunt-Vaisala frequency
523*88626eedSJames Wright  - `0.01`
524*88626eedSJames Wright  - `1/s`
525*88626eedSJames Wright:::
526*88626eedSJames Wright
527bc7bbd5dSLeila GhaffariThis problem can be run with:
528ccaff030SJeremy L Thompson
529bc7bbd5dSLeila Ghaffari```
530*88626eedSJames Wright./navierstokes -problem density_current -dm_plex_box_faces 16,1,8 -degree 1 -dm_plex_box_lower 0,0,0 -dm_plex_box_upper 2000,125,1000 -dm_plex_dim 3 -rc 400. -bc_wall 1,2,5,6 -wall_comps 1,2,3 -bc_slip_y 3,4 -mu 75
531*88626eedSJames Wright```
532*88626eedSJames Wright
533*88626eedSJames WrightThe Channel problem the following command-line options are available in
534*88626eedSJames Wrightaddition to the Newtonian Ideal Gas options:
535*88626eedSJames Wright
536*88626eedSJames Wright:::{list-table} Channel Runtime Options
537*88626eedSJames Wright:header-rows: 1
538*88626eedSJames Wright
539*88626eedSJames Wright* - Option
540*88626eedSJames Wright  - Description
541*88626eedSJames Wright  - Default value
542*88626eedSJames Wright  - Unit
543*88626eedSJames Wright
544*88626eedSJames Wright* - `-umax`
545*88626eedSJames Wright  - Maximum/centerline velocity of the flow
546*88626eedSJames Wright  - `10`
547*88626eedSJames Wright  - `m/s`
548*88626eedSJames Wright
549*88626eedSJames Wright* - `-theta0`
550*88626eedSJames Wright  - Reference potential temperature
551*88626eedSJames Wright  - `300`
552*88626eedSJames Wright  - `K`
553*88626eedSJames Wright
554*88626eedSJames Wright* - `-P0`
555*88626eedSJames Wright  - Atmospheric pressure
556*88626eedSJames Wright  - `1E5`
557*88626eedSJames Wright  - `Pa`
558*88626eedSJames Wright:::
559*88626eedSJames Wright
560*88626eedSJames WrightThis problem can be run with the `channel.yaml` file via:
561*88626eedSJames Wright
562*88626eedSJames Wright```
563*88626eedSJames Wright./navierstokes -options_file channel.yaml
564*88626eedSJames Wright```
565*88626eedSJames Wright```{literalinclude} ../../../../../examples/fluids/channel.yaml
566*88626eedSJames Wright:language: yaml
567*88626eedSJames Wright```
568*88626eedSJames Wright
569*88626eedSJames WrightThe Blasius problem the following command-line options are available in
570*88626eedSJames Wrightaddition to the Newtonian Ideal Gas options:
571*88626eedSJames Wright
572*88626eedSJames Wright:::{list-table} Blasius Runtime Options
573*88626eedSJames Wright:header-rows: 1
574*88626eedSJames Wright
575*88626eedSJames Wright* - Option
576*88626eedSJames Wright  - Description
577*88626eedSJames Wright  - Default value
578*88626eedSJames Wright  - Unit
579*88626eedSJames Wright
580*88626eedSJames Wright* - `-Uinf`
581*88626eedSJames Wright  - Freestream velocity
582*88626eedSJames Wright  - `40`
583*88626eedSJames Wright  - `m/s`
584*88626eedSJames Wright
585*88626eedSJames Wright* - `-delta0`
586*88626eedSJames Wright  - Boundary layer height at the inflow
587*88626eedSJames Wright  - `4.2e-4`
588*88626eedSJames Wright  - `m`
589*88626eedSJames Wright
590*88626eedSJames Wright* - `-theta0`
591*88626eedSJames Wright  - Reference potential temperature
592*88626eedSJames Wright  - `288`
593*88626eedSJames Wright  - `K`
594*88626eedSJames Wright
595*88626eedSJames Wright* - `-P0`
596*88626eedSJames Wright  - Atmospheric pressure
597*88626eedSJames Wright  - `1.01E5`
598*88626eedSJames Wright  - `Pa`
599*88626eedSJames Wright
600*88626eedSJames Wright* - `-refine_height`
601*88626eedSJames Wright  - Height at which `-Ndelta` number of elements should refined into
602*88626eedSJames Wright  - `5.9E-4`
603*88626eedSJames Wright  - `m`
604*88626eedSJames Wright
605*88626eedSJames Wright* - `-Ndelta`
606*88626eedSJames Wright  - Number of elements to keep below `-refine_height`
607*88626eedSJames Wright  - `45`
608*88626eedSJames Wright  -
609*88626eedSJames Wright
610*88626eedSJames Wright* - `-growth`
611*88626eedSJames Wright  - Growth rate of the elements in the refinement region
612*88626eedSJames Wright  - `1.08`
613*88626eedSJames Wright  -
614*88626eedSJames Wright
615*88626eedSJames Wright* - `-top_angle`
616*88626eedSJames Wright  - Downward angle of the top face of the domain. This face serves as an outlet.
617*88626eedSJames Wright  - `5`
618*88626eedSJames Wright  - `degrees`
619*88626eedSJames Wright:::
620*88626eedSJames Wright
621*88626eedSJames WrightThis problem can be run with the `blasius.yaml` file via:
622*88626eedSJames Wright
623*88626eedSJames Wright```
624*88626eedSJames Wright./navierstokes -options_file blasius.yaml
625*88626eedSJames Wright```
626*88626eedSJames Wright
627*88626eedSJames Wright```{literalinclude} ../../../../../examples/fluids/blasius.yaml
628*88626eedSJames Wright:language: yaml
629bc7bbd5dSLeila Ghaffari```
630