mod_species Module

Finite-Volume transport solver for chemical species mass fractions.

This module implements the solution of the transport equation for chemical species mass fractions . The solver supports: 1. Upwind Advection: A 1st-order stable scheme for robust transport of sharp scalar gradients. 2. Corrected Diffusion: Diffusive fluxes are explicitly corrected to ensure the net mass flux sums to zero . 3. Mass Conservation: Enforces and boundedness after every timestep. 4. MPI Synchronization: Efficiently gathers owned-cell updates into the globally replicated mesh field.


Uses

  • module~~mod_species~~UsesGraph module~mod_species mod_species module~mod_bc mod_bc module~mod_species->module~mod_bc module~mod_fields mod_fields module~mod_species->module~mod_fields module~mod_flow_projection mod_flow_projection module~mod_species->module~mod_flow_projection module~mod_input mod_input module~mod_species->module~mod_input module~mod_kinds mod_kinds module~mod_species->module~mod_kinds module~mod_mesh_types mod_mesh_types module~mod_species->module~mod_mesh_types module~mod_mpi_flow mod_mpi_flow module~mod_species->module~mod_mpi_flow module~mod_transport_properties mod_transport_properties module~mod_species->module~mod_transport_properties module~mod_bc->module~mod_input module~mod_bc->module~mod_kinds module~mod_bc->module~mod_mesh_types module~mod_fields->module~mod_bc module~mod_fields->module~mod_input module~mod_fields->module~mod_kinds module~mod_fields->module~mod_mesh_types module~mod_flow_projection->module~mod_bc module~mod_flow_projection->module~mod_fields module~mod_flow_projection->module~mod_input module~mod_flow_projection->module~mod_kinds module~mod_flow_projection->module~mod_mesh_types module~mod_flow_projection->module~mod_mpi_flow module~mod_flow_projection->module~mod_transport_properties module~mod_profiler mod_profiler module~mod_flow_projection->module~mod_profiler mpi_f08 mpi_f08 module~mod_flow_projection->mpi_f08 module~mod_input->module~mod_kinds iso_fortran_env iso_fortran_env module~mod_kinds->iso_fortran_env module~mod_mesh_types->module~mod_kinds module~mod_mpi_flow->module~mod_kinds module~mod_mpi_flow->module~mod_mesh_types module~mod_mpi_flow->mpi_f08 module~mod_transport_properties->module~mod_input module~mod_transport_properties->module~mod_kinds module~mod_transport_properties->module~mod_mesh_types module~mod_transport_properties->module~mod_mpi_flow module~mod_profiler->module~mod_kinds module~mod_profiler->iso_fortran_env module~mod_profiler->mpi_f08

Used by

  • module~~mod_species~~UsedByGraph module~mod_species mod_species module~mod_output mod_output module~mod_output->module~mod_species program~lowmach_react_hex lowmach_react_hex program~lowmach_react_hex->module~mod_species program~lowmach_react_hex->module~mod_output

Derived Types

type, public ::  species_fields_t

Container for multi-species mass fraction fields.

Components

Type Visibility Attributes Name Initial
real(kind=rk), public, allocatable :: Y(:,:)
real(kind=rk), public, allocatable :: Y_old(:,:)
character(len=name_len), public, allocatable :: names(:)
integer, public :: nspecies = 0

Subroutines

public subroutine advance_species_transport(mesh, flow, bc, params, fields, species, transport)

Performs one explicit Euler step for species transport.

Read more…

Arguments

Type IntentOptional Attributes Name
type(mesh_t), intent(in) :: mesh

The computational mesh.

type(flow_mpi_t), intent(inout) :: flow

MPI decomposition data for synchronization.

type(bc_set_t), intent(in) :: bc

Boundary condition settings.

type(case_params_t), intent(in) :: params

Simulation parameters (dt, etc).

type(flow_fields_t), intent(in) :: fields

Flow field (velocity/face fluxes).

type(species_fields_t), intent(inout) :: species

Mass fraction fields to update.

type(transport_properties_t), intent(in) :: transport

Physical properties (diffusivities).

public subroutine finalize_species(species)

Safely deallocates species fields and names.

Arguments

Type IntentOptional Attributes Name
type(species_fields_t), intent(inout) :: species

public subroutine initialize_species(mesh, params, species)

Populates species fields with initial mass fractions and handles naming.

Read more…

Arguments

Type IntentOptional Attributes Name
type(mesh_t), intent(in) :: mesh

The computational mesh.

type(case_params_t), intent(in) :: params

Input configuration.

type(species_fields_t), intent(inout) :: species

The fields to initialize.