mus_species_module Module

This module contains mus_species_type and routines to load species table from config file.



Variables

Type Visibility Attributes Name Initial
integer, public, parameter :: Dxx = 1

diffusion tensor index

integer, public, parameter :: Dyy = 2
integer, public, parameter :: Dzz = 3
integer, public, parameter :: Dxy = 4
integer, public, parameter :: Dxz = 5
integer, public, parameter :: Dyz = 6

Derived Types

type, public ::  mus_species_type

this type contains species parameters

Read more…

Components

Type Visibility Attributes Name Initial
real(kind=rk), public :: molWeight

molecular weight of the species

real(kind=rk), public :: molWeightInv

Inverse of molecular weight of the species. This parameter is required to convert mass density to mole density

real(kind=rk), public :: molWeigRatio

ratio of molecular weight \f$ \phi_\sigma = min(M)/M_\sigma i \f$

real(kind=rk), public, allocatable :: diff_coeff(:)

coefficient of diffusivity of the species (size of nspecies)

real(kind=rk), public, allocatable :: resi_coeff(:)

coefficient of resisivity of species which is reciprocal of diffusivity of the species

real(kind=rk), public :: diff_tensor(6)

full diffusion tensor of the species

Read more…
type(mrt_species_type), public :: mrt(globalMaxLevels)

molar fraction of this species in the mixture Volume fraction of is species in the mixture mrt relaxation for each level

real(kind=rk), public :: omBulk

bulk relaxation parameter omBulk_k = (2-phi_k)/3*bulkViscosity

real(kind=rk), public :: ombulkLvl(globalMaxLevels)

bulk relaxation parameter for each level

real(kind=rk), public :: omega

relaxation parameter for Nernst-Planck equation

real(kind=rk), public :: lambda

relaxation parameter for trt scheme

real(kind=rk), public :: chargeNr

charge number of the species

type, private ::  mrt_species_type

MRT species type

Components

Type Visibility Attributes Name Initial
real(kind=rk), public, allocatable :: s_mrt(:,:)

relaxation matrix for mrt size of this matrix is (layout%QQ, layout%QQ)

real(kind=rk), public, allocatable :: omegaMoments(:,:)

transformed relaxation matrix-moments factor omegaMoments = (Moments^-1.s_mrt.Moments) .(I+(Moments^-1.s_mrt.Moments)/2.0)^-1

real(kind=rk), public, allocatable :: omegaMomForce(:,:)

Omega factor for 2nd order force term omegaMomForce = (I+(Moments^-1.s_mrt.Moments)/2.0)^-1


Subroutines

public subroutine mus_load_species(me, conf, parent, minLevel, nFields, physics, cs_lattice)

this routines load species table from config file

Read more…

Arguments

Type IntentOptional Attributes Name
type(mus_species_type), intent(out) :: me
type(flu_State) :: conf
integer, intent(in), optional :: parent
integer, intent(in) :: minLevel
integer, intent(in) :: nFields
type(mus_physics_type), intent(in) :: physics

physics type to convert physics to lattice unit or vice versa

real(kind=rk), intent(in) :: cs_lattice

lattice speed of sound calculated for defined stencil layout required to compute omega from potential diffusivity

public subroutine compute_molWeightRatio(molWeights, molWeigRatios)

This routine computes the molecular weight ratio for all species based asinari model

Read more…

Arguments

Type IntentOptional Attributes Name
real(kind=rk), intent(in) :: molWeights(:)

molecular weight of the species

real(kind=rk), intent(out) :: molWeigRatios(:)

ratio of molecular weight \f$ \phi_\sigma = min(M)/M_\sigma \f$

public subroutine compute_bulkViscOmega(species, bulkvisc, bulkviscLvl, minLevel, maxLevel)

This routine compute bulk viscosity omega for species for all levels omega_bulk = (2-molWeigRatio_k)/(3*bulk_visc)

Arguments

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

contains species information

real(kind=rk), intent(in) :: bulkvisc

bulk viscosity of the mixture

real(kind=rk), intent(in) :: bulkviscLvl(globalMaxLevels)
integer, intent(in) :: minLevel
integer, intent(in) :: maxLevel

public subroutine mus_species_out(me, conf)

writes species propertries into a lua file

Arguments

Type IntentOptional Attributes Name
type(mus_species_type), intent(in) :: me
type(aot_out_type) :: conf