Lines Matching +full:format +full:- +full:c

1 ## libCEED: Navier-Stokes Example
3 This page provides a description of the Navier-Stokes example for the libCEED library, based on PET…
7 The Navier-Stokes problem solves the compressible Navier-Stokes equations in three dimensions using…
10 The main Navier-Stokes solver for libCEED is defined in [`navierstokes.c`](navierstokes.c) with dif…
21 ./navierstokes -ceed [ceed] -problem [problem type] -degree [degree]
26 <!-- fluids-inclusion -->
28 The Navier-Stokes mini-app is controlled via command-line options.
31 :::{list-table} Common Runtime Options
32 :header-rows: 1
34 * - Option
35 - Description
36 - Default value
38 * - `-ceed`
39 - CEED resource specifier
40 - `/cpu/self/opt/blocked`
42 * - `-test_type`
43- Run in test mode and specify whether solution (`solver`) or turbulent statistics (`turb_spanstat…
44 - `none`
46 * - `-compare_final_state_atol`
47 - Test absolute tolerance
48 - `1E-11`
50 * - `-compare_final_state_filename`
51 - Test filename
52 -
54 * - `-problem`
55- Problem to solve (`advection`, `density_current`, `euler_vortex`, `shocktube`, `blasius`, `chann…
56 - `density_current`
58 * - `-implicit`
59 - Use implicit time integrator formulation
60 -
62 * - `-degree`
63 - Polynomial degree of tensor product basis (must be >= 1)
64 - `1`
66 * - `-q_extra`
67 - Number of extra quadrature points
68 - `0`
70 * - `-ts_monitor_solution`
71 - PETSc output format, such as `cgns:output-%d.cgns` (requires PETSc `--download-cgns`)
72 -
74 * - `-ts_monitor_solution_interval`
75 - Number of time steps between visualization output frames.
76 - `1`
78 * - `-viewer_cgns_batch_size`
79 - Number of frames written per CGNS file if the CGNS file name includes a format specifier (`%d`).
80 - `20`
82 * - `-checkpoint_interval`
83- Number of steps between writing binary checkpoints. `0` has no output, `-1` outputs final state …
84 - `10`
86 * - `-checkpoint_vtk`
87- Checkpoints include VTK (`*.vtu`) files for visualization. Consider `-ts_monitor_solution`instea…
88 - `false`
90 * - `-viz_refine`
91 - Use regular refinement for VTK visualization
92 - `0`
94 * - `-output_dir`
95 - Output directory for binary checkpoints and VTK files (if enabled).
96 - `.`
98 * - `-output_add_stepnum2bin`
99 - Whether to add step numbers to output binary files
100 - `false`
102 * - `-continue`
103 - Continue from previous solution (input is step number of previous solution)
104 - `0`
106 * - `-continue_filename`
107 - Path to solution binary file from which to continue from
108 - `[output_dir]/ns-solution.bin`
110 * - `-continue_time_filename`
111 - Path to time stamp binary file (only for legacy checkpoints)
112 - `[output_dir]/ns-time.bin`
114 * - `-bc_wall`
115 - Use wall boundary conditions on this list of faces
116 -
118 * - `-wall_comps`
119 - An array of constrained component numbers for wall BCs
120 -
122 * - `-bc_slip`
123 - Use weak slip boundary condition on this list of faces
124 -
126 * - `-bc_symmetry_x`
127 - Use symmetry boundary conditions, for the x component, on this list of faces
128 -
130 * - `-bc_symmetry_y`
131 - Use symmetry boundary conditions, for the y component, on this list of faces
132 -
134 * - `-bc_symmetry_z`
135 - Use symmetry boundary conditions, for the z component, on this list of faces
136 -
138 * - `-bc_inflow`
139 - Use inflow boundary conditions on this list of faces
140 -
142 * - `-bc_outflow`
143 - Use outflow boundary conditions on this list of faces
144 -
146 * - `-bc_freestream`
147 - Use freestream boundary conditions on this list of faces
148 -
150 * - `-ts_monitor_turbulence_spanstats_collect_interval`
151 - Number of timesteps between statistics collection
152 - `1`
154 * - `-ts_monitor_turbulence_spanstats_viewer`
155- Sets the PetscViewer for the statistics file writing, such as `cgns:output-%d.cgns` (requires PE…
156 -
158 * - `-ts_monitor_turbulence_spanstats_viewer_interval`
159 - Number of timesteps between statistics file writing (`-1` means only at end of run)
160 - `-1`
162 * - `-ts_monitor_turbulence_spanstats_viewer_cgns_batch_size`
163 - Number of frames written per CGNS file if the CGNS file name includes a format specifier (`%d`).
164 - `20`
166 * - `-ts_monitor_wall_force`
167- Viewer for the force on each no-slip wall, e.g., `ascii:force.csv:ascii_csv` to write a CSV file.
168 -
170 * - `-mesh_transform`
171 - Transform the mesh, usually for an initial box mesh.
172 - `none`
174 * - `-snes_view`
175 - View PETSc `SNES` nonlinear solver configuration
176 -
178 * - `-log_view`
179 - View PETSc performance log
180 -
182 * - `-help`
183 - View comprehensive information about run-time options
184 -
187 …ndices to be used with `-bc_wall`, `bc_inflow`, `bc_outflow`, `bc_freestream` and/or `-bc_symmetr…
189 :::{list-table} 2D Face ID Labels
190 :header-rows: 1
191 * - PETSc Face Name
192 - Cartesian direction
193 - Face ID
195 * - faceMarkerBottom
196 - -z
197 - 1
199 * - faceMarkerRight
200 - +x
201 - 2
203 * - faceMarkerTop
204 - +z
205 - 3
207 * - faceMarkerLeft
208 - -x
209 - 4
212 :::{list-table} 3D Face ID Labels
213 :header-rows: 1
214 * - PETSc Face Name
215 - Cartesian direction
216 - Face ID
218 * - faceMarkerBottom
219 - -z
220 - 1
222 * - faceMarkerTop
223 - +z
224 - 2
226 * - faceMarkerFront
227 - -y
228 - 3
230 * - faceMarkerBack
231 - +y
232 - 4
234 * - faceMarkerRight
235 - +x
236 - 5
238 * - faceMarkerLeft
239 - -x
240 - 6
254 Use `bc_inflow` and see {ref}`example-blasius` and discussion of synthetic turbulence generation fo…
263 …ile the simpler HLL converts thermal structures exiting the domain into grid-scale reflecting acou…
267 …ure`, requires that the flow be a strict outflow (or the problem becomes ill-posed and the solver …
269 The `pressure` variant is retained to facilitate comparison with other codes, such as PHASTA-C, but…
284 The coordinates for such cases are stored as a new field with special cell-based indexing to enable…
298 The `zbox` method uses [Z-ordering](https://en.wikipedia.org/wiki/Z-order_curve) to construct the m…
304 The following additional command-line options are available:
306 :::{list-table} Advection Runtime Options
307 :header-rows: 1
309 * - Option
310 - Description
311 - Default value
312 - Unit
314 * - `-rc`
315 - Characteristic radius of thermal bubble
316 - `1000`
317 - `m`
319 * - `-units_meter`
320 - 1 meter in scaled length units
321 - `1E-2`
322 -
324 * - `-units_second`
325 - 1 second in scaled time units
326 - `1E-2`
327 -
329 * - `-units_kilogram`
330 - 1 kilogram in scaled mass units
331 - `1E-6`
332 -
334 * - `-strong_form`
335 - Strong (1) or weak/integrated by parts (0) residual
336 - `0`
337 -
339 * - `-stab`
340 - Stabilization method (`none`, `su`, or `supg`)
341 - `none`
342 -
344 * - `-stab_tau`
345 - Formulation for $\tau$ in stabilization (`ctau`, `advdiff_shakib`)
346 - `ctau`
347 -
349 * - `-Ctau_t`
350 - Scaling factor on the temporal portion of the $\tau$ formulation
351 - 0.
352 -
354 * - `-Ctau_a`
355 - Scaling factor on the advection portion of the $\tau$ formulation
356 - $P^2$
357 -
359 * - `-CtauS`
360 - Scale coefficient for stabilization tau (nondimensional)
361 - `0`
362 -
364 * - `-wind_type`
365 - Wind type in Advection (`rotation` or `translation`)
366 - `rotation`
367 -
369 * - `-wind_translation`
370 - Constant wind vector when `-wind_type translation`
371 - `1,0,0`
372 -
374 * - `-diffusion_coeff`
375 - Diffusion coefficient
376 - `0`
377 -
379 * - `-E_wind`
380 - Total energy of inflow wind when `-wind_type translation`
381 - `1E6`
382 - `J`
384 * - `-advection_ic_type`
385 - Initial condition type, from `sphere`, `cylinder`, `cosine_hill`, and `skew`
386 - `sphere`
387 -
389 * - `-bubble_continuity`
390- Different shapes for `sphere` and `cylinder` initial conditions, from `smooth`, `back_sharp`, `t…
391 - `smooth`
392 -
398-problem advection -dm_plex_box_faces 10,10,10 -dm_plex_dim 3 -dm_plex_box_lower 0,0,0 -dm_plex_bo…
404-problem advection -dm_plex_box_faces 10,10,10 -dm_plex_dim 3 -dm_plex_box_lower 0,0,0 -dm_plex_bo…
410-problem advection -dm_plex_box_faces 20,20 -dm_plex_box_lower 0,0 -dm_plex_box_upper 1000,1000 -b…
416-problem advection -dm_plex_box_faces 20,20 -dm_plex_box_lower 0,0 -dm_plex_box_upper 1000,1000 -u…
418 Note the lengths in `-dm_plex_box_upper` are given in meters, and will be nondimensionalized accord…
424 For the Isentropic Vortex problem, the following additional command-line options are available:
426 :::{list-table} Isentropic Vortex Runtime Options
427 :header-rows: 1
429 * - Option
430 - Description
431 - Default value
432 - Unit
434 * - `-center`
435 - Location of vortex center
436 - `(lx,ly,lz)/2`
437 - `(m,m,m)`
439 * - `-units_meter`
440 - 1 meter in scaled length units
441 - `1E-2`
442 -
444 * - `-units_second`
445 - 1 second in scaled time units
446 - `1E-2`
447 -
449 * - `-mean_velocity`
450 - Background velocity vector
451 - `(1,1,0)`
452 -
454 * - `-vortex_strength`
455 - Strength of vortex < 10
456 - `5`
457 -
459 * - `-c_tau`
460 - Stabilization constant
461 - `0.5`
462 -
468-problem euler_vortex -dm_plex_box_faces 20,20,1 -dm_plex_box_lower 0,0,0 -dm_plex_box_upper 1000,…
473 For the Shock Tube problem, the following additional command-line options are available:
475 :::{list-table} Shock Tube Runtime Options
476 :header-rows: 1
478 * - Option
479 - Description
480 - Default value
481 - Unit
483 * - `-units_meter`
484 - 1 meter in scaled length units
485 - `1E-2`
486 -
488 * - `-units_second`
489 - 1 second in scaled time units
490 - `1E-2`
491 -
493 * - `-yzb`
494 - Use YZB discontinuity capturing
495 - `none`
496 -
498 * - `-stab`
499 - Stabilization method (`none`, `su`, or `supg`)
500 - `none`
501 -
507-problem shocktube -yzb -stab su -bc_symmetry_z 3,4 -bc_symmetry_y 1,2 -bc_wall 5,6 -dm_plex_dim 3…
512 For the Density Current, Channel, and Blasius problems, the following common command-line options a…
514 :::{list-table} Newtonian Ideal Gas problems Runtime Options
515 :header-rows: 1
517 * - Option
518 - Description
519 - Default value
520 - Unit
522 * - `-units_meter`
523 - 1 meter in scaled length units
524 - `1`
525 -
527 * - `-units_second`
528 - 1 second in scaled time units
529 - `1`
530 -
532 * - `-units_kilogram`
533 - 1 kilogram in scaled mass units
534 - `1`
535 -
537 * - `-units_Kelvin`
538 - 1 Kelvin in scaled temperature units
539 - `1`
540 -
542 * - `-stab`
543 - Stabilization method (`none`, `su`, or `supg`)
544 - `none`
545 -
547 * - `-c_tau`
548 - Stabilization constant, $c_\tau$
549 - `0.5`
550 -
552 * - `-Ctau_t`
553 - Stabilization time constant, $C_t$
554 - `1.0`
555 -
557 * - `-Ctau_v`
558 - Stabilization viscous constant, $C_v$
559 - `36, 60, 128 for degree = 1, 2, 3`
560 -
562 * - `-Ctau_C`
563 - Stabilization continuity constant, $C_c$
564 - `1.0`
565 -
567 * - `-Ctau_M`
568 - Stabilization momentum constant, $C_m$
569 - `1.0`
570 -
572 * - `-Ctau_E`
573 - Stabilization energy constant, $C_E$
574 - `1.0`
575 -
577 * - `-cv`
578 - Heat capacity at constant volume
579 - `717`
580 - `J/(kg K)`
582 * - `-cp`
583 - Heat capacity at constant pressure
584 - `1004`
585 - `J/(kg K)`
587 * - `-gravity`
588 - Gravitational acceleration vector
589 - `0,0,0`
590 - `m/s^2`
592 * - `-lambda`
593 - Stokes hypothesis second viscosity coefficient
594 - `-2/3`
595 -
597 * - `-mu`
598 - Shear dynamic viscosity coefficient
599 - `1.8e-5`
600 - `Pa s`
602 * - `-k`
603 - Thermal conductivity
604 - `0.02638`
605 - `W/(m K)`
607 * - `-newtonian_unit_tests`
608 - Developer option to test properties
609 - `false`
610 - boolean
612 * - `-state_var`
613- State variables to solve solution with. `conservative` ($\rho, \rho \bm{u}, \rho e$), `primitive…
614 - `conservative`
615 - string
617 * - `-idl_decay_time`
618 - Characteristic timescale of the pressure deviance decay. The timestep is good starting point
619 - `-1` (disabled)
620 - `s`
622 * - `-idl_start`
623 - Start of IDL in the x direction
624 - `0`
625 - `m`
627 * - `-idl_length`
628 - Length of IDL in the positive x direction
629 - `0`
630 - `m`
632 * - `-idl_pressure`
633 - Pressure used for IDL reference pressure
634 - `-reference_pressure`
635 - `Pa`
637 * - `-diff_filter_monitor`
638 - Enable differential filter TSMonitor
639 - `false`
640 - boolean
642 * - `-diff_filter_grid_based_width`
643 - Use filter width based on the grid size
644 - `false`
645 - boolean
647 * - `-diff_filter_width_scaling`
648 - Anisotropic scaling for filter width in wall-aligned coordinates (snz)
649 - `1,1,1`
650 - `m`
652 * - `-diff_filter_kernel_scaling`
653 - Scaling to make differential kernel size equivalent to other filter kernels
654 - `0.1`
655 - `m^2`
657 * - `-diff_filter_wall_damping_function`
658 - Damping function to use at the wall for anisotropic filtering (`none`, `van_driest`)
659 - `none`
660 - string
662 * - `-diff_filter_wall_damping_constant`
663 - Constant for the wall-damping function. $A^+$ for `van_driest` damping function.
664 - 25
665 -
667 * - `-diff_filter_friction_length`
668 - Friction length associated with the flow, $\delta_\nu$. Used in wall-damping functions
669 - 0
670 - `m`
675 The Gaussian wave problem has the following command-line options in addition to the Newtonian Ideal…
677 :::{list-table} Gaussian Wave Runtime Options
678 :header-rows: 1
680 * - Option
681 - Description
682 - Default value
683 - Unit
685 * - `-freestream_riemann`
686 - Riemann solver for boundaries (HLL or HLLC)
687 - `hllc`
688 -
690 * - `-freestream_velocity`
691 - Freestream velocity vector
692 - `0,0,0`
693 - `m/s`
695 * - `-freestream_temperature`
696 - Freestream temperature
697 - `288`
698 - `K`
700 * - `-freestream_pressure`
701 - Freestream pressure
702 - `1.01e5`
703 - `Pa`
705 * - `-epicenter`
706 - Coordinates of center of perturbation
707 - `0,0,0`
708 - `m`
710 * - `-amplitude`
711 - Amplitude of the perturbation
712 - `0.1`
713 -
715 * - `-width`
716 - Width parameter of the perturbation
717 - `0.002`
718 - `m`
725 ./navierstokes -options_file gaussianwave.yaml
732 #### Vortex Shedding - Flow past Cylinder
734 The vortex shedding, flow past cylinder problem has the following command-line options in addition …
736 :::{list-table} Vortex Shedding Runtime Options
737 :header-rows: 1
739 * - Option
740 - Description
741 - Default value
742 - Unit
744 * - `-freestream_velocity`
745 - Freestream velocity vector
746 - `0,0,0`
747 - `m/s`
749 * - `-freestream_temperature`
750 - Freestream temperature
751 - `288`
752 - `K`
754 * - `-freestream_pressure`
755 - Freestream pressure
756 - `1.01e5`
757 - `Pa`
761 The initial condition is taken from `-reference_temperature` and `-reference_pressure`.
765 $ make -C examples/fluids/meshes
771 $ make build/fluids-navierstokes
772 $ mpiexec -n 6 build/fluids-navierstokes -options_file examples/fluids/vortexshedding.yaml -{ts,sne…
788 The Density Current problem has the following command-line options in addition to the Newtonian Ide…
790 :::{list-table} Density Current Runtime Options
791 :header-rows: 1
793 * - Option
794 - Description
795 - Default value
796 - Unit
798 * - `-center`
799 - Location of bubble center
800 - `(lx,ly,lz)/2`
801 - `(m,m,m)`
803 * - `-dc_axis`
804 - Axis of density current cylindrical anomaly, or `(0,0,0)` for spherically symmetric
805 - `(0,0,0)`
806 -
808 * - `-rc`
809 - Characteristic radius of thermal bubble
810 - `1000`
811 - `m`
813 * - `-theta0`
814 - Reference potential temperature
815 - `300`
816 - `K`
818 * - `-thetaC`
819 - Perturbation of potential temperature
820 - `-15`
821 - `K`
823 * - `-P0`
824 - Atmospheric pressure
825 - `1E5`
826 - `Pa`
828 * - `-N`
829 - Brunt-Vaisala frequency
830 - `0.01`
831 - `1/s`
837-problem density_current -dm_plex_box_faces 16,1,8 -degree 1 -dm_plex_box_lower 0,0,0 -dm_plex_box…
842 The Channel problem has the following command-line options in addition to the Newtonian Ideal Gas o…
844 :::{list-table} Channel Runtime Options
845 :header-rows: 1
847 * - Option
848 - Description
849 - Default value
850 - Unit
852 * - `-umax`
853 - Maximum/centerline velocity of the flow
854 - `10`
855 - `m/s`
857 * - `-theta0`
858 - Reference potential temperature
859 - `300`
860 - `K`
862 * - `-P0`
863 - Atmospheric pressure
864 - `1E5`
865 - `Pa`
867 * - `-body_force_scale`
868 - Multiplier for body force (`-1` for flow reversal)
869 - 1
870 -
876 ./navierstokes -options_file channel.yaml
882 (example-blasius)=
886 The Blasius problem has the following command-line options in addition to the Newtonian Ideal Gas o…
888 :::{list-table} Blasius Runtime Options
889 :header-rows: 1
891 * - Option
892 - Description
893 - Default value
894 - Unit
896 * - `-velocity_infinity`
897 - Freestream velocity
898 - `40`
899 - `m/s`
901 * - `-temperature_infinity`
902 - Freestream temperature
903 - `288`
904 - `K`
906 * - `-pressure_infinity`
907 - Atmospheric pressure, also sets IDL reference pressure
908 - `1.01E5`
909 - `Pa`
911 * - `-temperature_wall`
912 - Wall temperature
913 - `288`
914 - `K`
916 * - `-delta0`
917 - Boundary layer height at the inflow
918 - `4.2e-3`
919 - `m`
921 * - `-platemesh_modify_mesh`
922 - Whether to modify the mesh using the given options below.
923 - `false`
924 -
926 * - `-platemesh_refine_height`
927 - Height at which `-platemesh_Ndelta` number of elements should refined into
928 - `5.9E-4`
929 - `m`
931 * - `-platemesh_Ndelta`
932 - Number of elements to keep below `-platemesh_refine_height`
933 - `45`
934 -
936 * - `-platemesh_growth`
937 - Growth rate of the elements in the refinement region
938 - `1.08`
939 -
941 * - `-platemesh_top_angle`
942 - Downward angle of the top face of the domain. This face serves as an outlet.
943 - `5`
944 - `degrees`
946 * - `-platemesh_y_node_locs_path`
947 - Path to file with y node locations. If empty, will use mesh warping instead.
948 - `""`
949 -
951 * - `-stg_use`
952 - Whether to use STG for the inflow conditions
953 - `false`
954 -
956 * - `-n_chebyshev`
957 - Number of Chebyshev terms
958 - `20`
959 -
961 * - `-chebyshev_`
962 - Prefix for Chebyshev snes solve
963 -
964 -
971 ./navierstokes -options_file blasius.yaml
980 Using the STG Inflow for the blasius problem adds the following command-line options:
982 :::{list-table} Blasius Runtime Options
983 :header-rows: 1
985 * - Option
986 - Description
987 - Default value
988 - Unit
990 * - `-stg_inflow_path`
991 - Path to the STGInflow file
992 - `./STGInflow.dat`
993 -
995 * - `-stg_rand_path`
996 - Path to the STGRand file
997 - `./STGRand.dat`
998 -
1000 * - `-stg_alpha`
1001 - Growth rate of the wavemodes
1002 - `1.01`
1003 -
1005 * - `-stg_u0`
1006 - Convective velocity, $U_0$
1007 - `0.0`
1008 - `m/s`
1010 * - `-stg_mean_only`
1011 - Only impose the mean velocity (no fluctutations)
1012 - `false`
1013 -
1015 * - `-stg_strong`
1016 - Strongly enforce the STG inflow boundary condition
1017 - `false`
1018 -
1020 * - `-stg_fluctuating_IC`
1021 - "Extrude" the fluctuations through the domain as an initial condition
1022 - `false`
1023 -
1025 * - `-stg_dx`
1026- Set the element size in the x direction. Default is calculated for box meshes, assuming equispac…
1027 -
1028 - `m`
1030 * - `-stg_h_scale_factor`
1031 - Scale element size for cutoff frequency calculation
1032 - $1/p$
1033 -
1040 ./navierstokes -options_file blasius.yaml -stg_use true
1043 Note the added `-stg_use true` flag