Mirrors the 1D config module but for the coexisting euler_2d solver.
Carries grid, physics, time-control, scheme-selection, per-edge
boundary-condition, and 2D initial-condition fields. The time-control and
scheme fields drive the euler_2d solve (flux/reconstruction/time-integration
selection and stop criteria).
| Type | Visibility | Attributes | Name | Initial | |||
|---|---|---|---|---|---|---|---|
| integer, | public, | parameter | :: | n_config_fields_2d | = | 38 |
Frozen ABI schema field count, identical order to
|
| Type | Visibility | Attributes | Name | Initial | |||
|---|---|---|---|---|---|---|---|
| integer, | public | :: | nx | = | 100 | ||
| integer, | public | :: | ny | = | 100 | ||
| real(kind=wp), | public | :: | x_left | = | 0.0_wp | ||
| real(kind=wp), | public | :: | x_right | = | 1.0_wp | ||
| real(kind=wp), | public | :: | y_left | = | 0.0_wp | ||
| real(kind=wp), | public | :: | y_right | = | 1.0_wp | ||
| character(len=32), | public | :: | grid_type | = | 'uniform' | ||
| character(len=256), | public | :: | grid_file | = | '' | ||
| logical, | public | :: | grid_binary | = | .false. | ||
| real(kind=wp), | public | :: | gam | = | 1.4_wp | ||
| real(kind=wp), | public | :: | dt | = | 1.0e-4_wp | ||
| real(kind=wp), | public | :: | cfl | = | 0.5_wp | ||
| real(kind=wp), | public | :: | time_start | = | 0.0_wp | ||
| real(kind=wp), | public | :: | time_stop | = | 0.1_wp | ||
| integer, | public | :: | max_iter | = | 0 | ||
| character(len=64), | public | :: | flux_scheme | = | 'hllc' | ||
| character(len=64), | public | :: | recon_scheme | = | 'weno5' | ||
| character(len=64), | public | :: | time_scheme | = | 'rk3' | ||
| character(len=8), | public | :: | char_proj | = | 'auto' | ||
| character(len=64), | public | :: | method | = | 'fvm' | ||
| character(len=64), | public | :: | problem_type | = | 'isentropic_vortex' | ||
| character(len=32), | public | :: | bc_left | = | 'periodic' | ||
| character(len=32), | public | :: | bc_right | = | 'periodic' | ||
| character(len=32), | public | :: | bc_bottom | = | 'periodic' | ||
| character(len=32), | public | :: | bc_top | = | 'periodic' | ||
| real(kind=wp), | public | :: | rho_inf | = | 1.0_wp | ||
| real(kind=wp), | public | :: | u_inf | = | 0.0_wp | ||
| real(kind=wp), | public | :: | v_inf | = | 0.0_wp | ||
| real(kind=wp), | public | :: | p_inf | = | 1.0_wp | ||
| logical, | public | :: | use_positivity_limiter | = | .true. | ||
| character(len=256), | public | :: | output_file | = | 'result_2d.dat' | ||
| character(len=64), | public | :: | output_format | = | 'dat' | ||
| integer, | public | :: | verbosity | = | 3 | ||
| integer, | public | :: | print_freq | = | 50 | ||
| character(len=256), | public | :: | log_file | = | 'run.log' | ||
| integer, | public | :: | checkpoint_freq | = | 0 | ||
| character(len=256), | public | :: | checkpoint_file | = | 'checkpoint' | ||
| character(len=256), | public | :: | restart_file | = | '' |
Bind the 38-entry field-descriptor table (frozen ensure_schema_2d
order) to cfg. No casefold flags: the 2D reader already stores
lowercased selectors, and the engine's choice compare casefolds the
candidate anyway, preserving the direct-call validate_config_2d
mixed-case tolerance. Help texts are empty (the 2D schema never
published help).
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| type(config_2d_t), | intent(inout), | target | :: | cfg |
Read a namelist file into a config_2d_t and validate it.
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| character(len=*), | intent(in) | :: | filename | |||
| type(config_2d_t), | intent(out) | :: | cfg | |||
| logical, | intent(out) | :: | is_ok | |||
| character(len=*), | intent(out) | :: | message | |||
| character(len=*), | intent(in), | optional | :: | case_dir |
Optional case directory to anchor relative file paths against; when absent/empty the namelist's own directory is used (see path_util). |
Validate ranges and enumerated selectors.
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| type(config_2d_t), | intent(in) | :: | cfg | |||
| logical, | intent(out) | :: | is_valid | |||
| character(len=*), | intent(out) | :: | message |