!> Placeholder for external/production radiation physics.
!!
!! Radiation developers should implement their model here or add sibling files
!! named `mod_radiation_<modelname>.f90` under `src/radiation/models/`.
!!
!! Contract:
!! - No MPI calls are required here.
!! - `mesh` is static and globally available.
!! - `state` contains full-domain temperature, pressure, and selected species.
!! - `context%wn_first:context%wn_last` is the wavenumber range for this rank.
!! - Fill `source%qrad(:)` with this rank's partial spectral contribution.
module mod_radiation_external
   use mod_precision, only : zero
   use mod_mesh, only : mesh_t
   use mod_radiation_types, only : radiation_context_t, radiation_state_t, radiation_source_t
   implicit none
   private
   public :: radiation_compute_external
contains
   subroutine radiation_compute_external(mesh, context, state, source)
      type(mesh_t), intent(in) :: mesh
      type(radiation_context_t), intent(in) :: context
      type(radiation_state_t), intent(in) :: state
      type(radiation_source_t), intent(inout) :: source
      associate(dummy_mesh => mesh%ncells, dummy_rank => context%rad_rank, dummy_step => state%step)
      end associate
      source%qrad = zero
   end subroutine radiation_compute_external
end module mod_radiation_external
