Radiation coupling driver.
This module owns MPI/data plumbing for radiation so model developers do not
need to touch MPI. Physics kernels live under src/radiation/models/ and
operate on mesh, radiation_context_t, radiation_state_t, and
radiation_source_t only.
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| type(radiation_context_t), | intent(inout) | :: | context |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| type(mesh_t), | intent(in) | :: | mesh | |||
| type(radiation_mpi_t), | intent(in) | :: | rad | |||
| type(case_params_t), | intent(in) | :: | params | |||
| type(radiation_context_t), | intent(inout) | :: | context |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| type(mesh_t), | intent(in) | :: | mesh | |||
| type(bc_set_t), | intent(in) | :: | bc | |||
| type(flow_mpi_t), | intent(inout) | :: | flow | |||
| type(radiation_mpi_t), | intent(in) | :: | rad | |||
| type(radiation_context_t), | intent(inout) | :: | context | |||
| type(case_params_t), | intent(in) | :: | params | |||
| type(energy_fields_t), | intent(inout) | :: | energy | |||
| real(kind=rk), | intent(in), | optional | :: | species_Y(:,:) | ||
| integer, | intent(in) | :: | step | |||
| real(kind=rk), | intent(in) | :: | time | |||
| real(kind=rk), | intent(in) | :: | dt |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| type(flow_mpi_t), | intent(in) | :: | flow | |||
| type(radiation_context_t), | intent(in) | :: | context | |||
| type(radiation_state_t), | intent(in) | :: | state | |||
| real(kind=rk), | intent(out) | :: | debug_T_diff | |||
| real(kind=rk), | intent(out) | :: | debug_Y_diff |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| integer, | intent(in) | :: | n_wavenumbers | |||
| integer, | intent(in) | :: | nprocs | |||
| integer, | intent(in) | :: | rank | |||
| integer, | intent(out) | :: | first | |||
| integer, | intent(out) | :: | last | |||
| integer, | intent(out) | :: | nlocal |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| type(mesh_t), | intent(in) | :: | mesh | |||
| type(flow_mpi_t), | intent(inout) | :: | flow | |||
| type(radiation_context_t), | intent(in) | :: | context | |||
| type(case_params_t), | intent(in) | :: | params | |||
| type(energy_fields_t), | intent(in) | :: | energy | |||
| real(kind=rk), | intent(in), | optional | :: | species_Y(:,:) | ||
| integer, | intent(in) | :: | step | |||
| real(kind=rk), | intent(in) | :: | time | |||
| real(kind=rk), | intent(in) | :: | dt | |||
| type(radiation_state_t), | intent(inout) | :: | state | |||
| real(kind=rk), | intent(out) | :: | debug_T_diff | |||
| real(kind=rk), | intent(out) | :: | debug_Y_diff |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| type(mesh_t), | intent(in) | :: | mesh | |||
| type(radiation_mpi_t), | intent(in) | :: | rad | |||
| type(radiation_context_t), | intent(inout) | :: | context | |||
| type(radiation_state_t), | intent(in) | :: | state | |||
| type(radiation_source_t), | intent(in) | :: | source | |||
| integer, | intent(in) | :: | step | |||
| real(kind=rk), | intent(in) | :: | time | |||
| real(kind=rk), | intent(in) | :: | dt | |||
| real(kind=rk), | intent(in) | :: | gather_time | |||
| real(kind=rk), | intent(in) | :: | compute_time | |||
| real(kind=rk), | intent(in) | :: | reduce_time | |||
| real(kind=rk), | intent(in) | :: | debug_T_diff | |||
| real(kind=rk), | intent(in) | :: | debug_Y_diff |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| type(mesh_t), | intent(in) | :: | mesh | |||
| type(radiation_mpi_t), | intent(in) | :: | rad | |||
| type(case_params_t), | intent(in) | :: | params | |||
| type(radiation_context_t), | intent(inout) | :: | context |