Procedures

ProcedureLocationProcedure TypeDescription
access_bcFricVel_forElement mus_bc_var_module Subroutine

This routine returns friction velocity computed in turbulent_wall bc and stored in mus_turb_wallFunc_data_type routine.

Read more…
access_bcNormal_forElement mus_bc_var_module Subroutine

This routine returns the boundary normal pointing inside the domain

Read more…
access_bcNormDistToBnd_forElement mus_bc_var_module Subroutine

This routine returns normal distance to boundary calculated in mus_init_turbWallFunc and stored in mus_turb_wallFunc_data_type routine.

Read more…
access_bcTurbVisc_forElement mus_bc_var_module Subroutine

This routine returns turbulent viscosity computed in turbulent_wall bc according to RANS formulation and stored in mus_turb_wallFunc_data_type routine.

Read more…
access_bcYPlus_forElement mus_bc_var_module Subroutine

This routine returns yPlus = distToBnd * fric_vel / visc

Read more…
access_kineOmega_forElement mus_material_var_module Subroutine

This routine returns the omega

Read more…
access_kineVisc_forElement mus_material_var_module Subroutine

This routine returns the kinematic viscosity

Read more…
access_pressRef_forElement mus_material_var_module Subroutine

This routine returns the reference pressure

Read more…
access_qVal_forElement mus_bc_var_module Subroutine

This routine returns the boundary qValues

Read more…
access_turbVisc_forElement mus_turbulence_var_module Subroutine

This routine returns the turbulent viscosity

Read more…
allocate_momBuf mus_pdf_module Subroutine
allocateBCList mus_construction_module Subroutine

Allocate BC lists, 2nd step in Build_BClists

applySrc_absorbLayer mus_derQuan_module Subroutine

Update state with source variable "absorb_layer". absorb_layer is used to absorb the flow and gradually reduce the flow quantities like pressure and velocity to a fixed value. It is based on: Xu, H., & Sagaut, P. (2013). Analysis of the absorbing layers for the weakly-compressible lattice Boltzmann methods. Journal of Computational Physics, 245(x), 14–42. Jacob, J.; Sagaut, P. (2019): Solid wall and open boundary conditions in hybrid recursive regularized lattice Boltzmann method for compressible flows. In Physics of Fluids 31 (12), p. 126103.

Read more…
applySrc_absorbLayer_MRT mus_derQuan_module Subroutine

Update state with source variable "absorb_layer". absorb_layer is used to absorb the flow and gradually reduce the flow quantities like pressure and velocity to a fixed value. It is based on: Xu, H., & Sagaut, P. (2013). Analysis of the absorbing layers for the weakly-compressible lattice Boltzmann methods. Journal of Computational Physics, 245(x), 14–42. Jacob, J.; Sagaut, P. (2019): Solid wall and open boundary conditions in hybrid recursive regularized lattice Boltzmann method for compressible flows. In Physics of Fluids 31 (12), p. 126103.

Read more…
applySrc_absorbLayerDyn mus_derQuan_module Subroutine

Update state with source variable "absorb_layer". absorb_layer is used to absorb the flow and gradually reduce the flow quantities like pressure and velocity to a fixed value. It is based on: Xu, H., & Sagaut, P. (2013). Analysis of the absorbing layers for the weakly-compressible lattice Boltzmann methods. Journal of Computational Physics, 245(x), 14–42. Jacob, J.; Sagaut, P. (2019): Solid wall and open boundary conditions in hybrid recursive regularized lattice Boltzmann method for compressible flows. In Physics of Fluids 31 (12), p. 126103.

Read more…
applySrc_absorbLayerDyn_MRT mus_derQuan_module Subroutine

Update state with source variable "absorb_layer". absorb_layer is used to absorb the flow and gradually reduce the flow quantities like pressure and velocity to a fixed value. It is based on: Xu, H., & Sagaut, P. (2013). Analysis of the absorbing layers for the weakly-compressible lattice Boltzmann methods. Journal of Computational Physics, 245(x), 14–42. Jacob, J.; Sagaut, P. (2019): Solid wall and open boundary conditions in hybrid recursive regularized lattice Boltzmann method for compressible flows. In Physics of Fluids 31 (12), p. 126103.

Read more…
applySrc_absorbLayerIncomp mus_derQuanIncomp_module Subroutine

Update state with source variable "absorb_layer". absorb_layer is used to absorb the flow and gradually reduce the flow quantities like pressure and velocity to a fixed value for incompressible model. It is based on: Xu, H., & Sagaut, P. (2013). Analysis of the absorbing layers for the weakly-compressible lattice Boltzmann methods. Journal of Computational Physics, 245(x), 14–42.

Read more…
applySrc_chargeDensity_1stOrd mus_derQuanPoisson_module Subroutine

Update state with source variable "ChargeDensity" with 1st order integration of source Term. Refer to Appendix in PhD Thesis of K. Masilamani "Coupled Simulation Framework to Simulate Electrodialysis Process for Seawater Desalination"

Read more…
applySrc_chargeDensity_2ndOrd mus_derQuanPoisson_module Subroutine

Update state with source variable "ChargeDensity" with 2nd order integration of source Term. Refer to Appendix in PhD Thesis of K. Masilamani "Coupled Simulation Framework to Simulate Electrodialysis Process for

Read more…
applySrc_electricFieldNP mus_derQuanNernstPlanck_module Subroutine

Update state with source variable "electric field"

Read more…
applySrc_electricMSLiquid_1stOrd mus_derQuanMSLiquid_module Subroutine

Update state with source variable "electric_field" Simuilar to derive routine but it updates the state whereas derive is used for tracking

Read more…
applySrc_electricMSLiquid_1stOrd_WTDF mus_derQuanMSLiquid_module Subroutine

Update state with source variable "electric_field" with thermodynamic factor. Simuilar to derive routine but it updates the state whereas derive is used for tracking

Read more…
applySrc_electricMSLiquid_2ndOrd mus_derQuanMSLiquid_module Subroutine

Update state with source variable "electric_field" with 2nd order force integration. Refer to Appendix in PhD Thesis of K. Masilamani "Coupled Simulation Framework to Simulate Electrodialysis Process for Seawater Desalination"

Read more…
applySrc_electricMSLiquid_2ndOrd_WTDF mus_derQuanMSLiquid_module Subroutine

Update state with source variable "electric_field" with 2nd order integration of force term in LBE with thermodynamic factor Refer to Appendix in PhD Thesis of K. Masilamani "Coupled Simulation Framework to Simulate Electrodialysis Process for Seawater Desalination"

Read more…
applySrc_equalInjectionPS mus_derQuanPS_module Subroutine

Update state with source variable "equalInjection" Simuilar to derive routine but it updates the state whereas derive is used for tracking

Read more…
applySrc_force mus_derQuan_module Subroutine

Update state with source variable "force". Force term used here is from: "Discrete lattice effects on the forcing term in the lattice Boltzmann method", Zhaoli Guo, Chugung Zheng and Baochang Shi. In the paper, use force term is referred as Method 2 as: Force must be defined as body force per unit volume KM: If this force formula is used then velocity needs to be computed as u = \sum c_i f_i + \vec{F}/2

Read more…
applySrc_force1stOrd mus_derQuan_module Subroutine

Update state with source variable "force_1stOrd" Force term used here is from: "A D3Q27 multiple-relaxation-time lattice Boltzmann method for turbulent flows", K. Suga, Y. Kuwata, K. Takashima, R. Chikasue

Read more…
applySrc_force_MRT mus_derQuan_module Subroutine

Update state with source variable "force" for MRT collision model. Force term used here is from: Chai, Z., & Zhao, T. (2012). Effect of the forcing term in the multiple-relaxation-time lattice Boltzmann equation on the shear stress or the strain rate tensor. Physical Review E, 86(1), 1–11. Force term for MRT is and

Read more…
applySrc_force_MRT_d2q9 mus_derQuan_module Subroutine

Update state with source variable "force" for d3q19 MRT collision model. Force term used here is from: Chai, Z., & Zhao, T. (2012). Effect of the forcing term in the multiple-relaxation-time lattice Boltzmann equation on the shear stress or the strain rate tensor. Physical Review E, 86(1), 1–11. Force term for MRT is and

Read more…
applySrc_force_MRT_d3q19 mus_derQuan_module Subroutine

Update state with source variable "force" for d3q19 MRT collision model. Force term used here is from: Chai, Z., & Zhao, T. (2012). Effect of the forcing term in the multiple-relaxation-time lattice Boltzmann equation on the shear stress or the strain rate tensor. Physical Review E, 86(1), 1–11. Force term for MRT is and

Read more…
applySrc_force_MRT_d3q27 mus_derQuan_module Subroutine

Update state with source variable "force" for MRT collision model. Force term used here is from: Chai, Z., & Zhao, T. (2012). Effect of the forcing term in the multiple-relaxation-time lattice Boltzmann equation on the shear stress or the strain rate tensor. Physical Review E, 86(1), 1–11. Force term for MRT is and

Read more…
applySrc_forceMSLiquid_1stOrd mus_derQuanMSLiquid_module Subroutine

Update state with source variable "force" with 1st order integration of force in lattice Boltzmann equation. Simuilar to derive routine but it updates the state whereas derive is used for tracking Refer to Appendix in PhD Thesis of K. Masilamani "Coupled Simulation Framework to Simulate Electrodialysis Process for Seawater Desalination"

Read more…
applySrc_forceMSLiquid_1stOrd_WTDF mus_derQuanMSLiquid_module Subroutine

Update state with source variable "force" with thermodynamic factor Simuilar to derive routine but it updates the state whereas derive is used for tracking Refer to Appendix in PhD Thesis of K. Masilamani "Coupled Simulation Framework to Simulate Electrodialysis Process for Seawater Desalination"

Read more…
applySrc_forceMSLiquid_2ndOrd mus_derQuanMSLiquid_module Subroutine

Update state with source variable "force" with 2nd order integration of force in lattice Boltzmann equation. Simuilar to derive routine but it updates the state whereas derive is used for tracking Refer to Appendix in PhD Thesis of K. Masilamani "Coupled Simulation Framework to Simulate Electrodialysis Process for Seawater Desalination"

Read more…
applySrc_forceMSLiquid_2ndOrd_WTDF mus_derQuanMSLiquid_module Subroutine

Update state with source variable "force" with 2nd order integration of force in lattice Boltzmann equation with thermodynamic factor. Simuilar to derive routine but it updates the state whereas derive is used for tracking Refer to Appendix in PhD Thesis of K. Masilamani "Coupled Simulation Framework to Simulate Electrodialysis Process for Seawater Desalination"

Read more…
applySrc_injectionPS mus_derQuanPS_module Subroutine

Update state with source variable "injection" Similar to derive routine but it updates the state whereas derive is used for tracking

Read more…
applySrc_turbChanForce mus_derQuan_module Subroutine

Update state with source variable "turb_channel_force" for BGK.

Read more…
applySrc_turbChanForce_MRT mus_derQuan_module Subroutine

Update state with source variable "force" for generic MRT collision model for turb_channel_force. It uses velocityX average in bulk to adapt the driving force for turbulent channel.

Read more…
applySrc_turbChanForce_MRT_d2q9 mus_derQuan_module Subroutine

Update state with source variable "force" for d3q19 MRT collision model for turb_channel_force. It uses velocityX average in bulk to adapt the driving force for turbulent channel.

Read more…
applySrc_turbChanForce_MRT_d3q19 mus_derQuan_module Subroutine

Update state with source variable "force" for d3q19 MRT collision model for turb_channel_force. It uses velocityX average in bulk to adapt the driving force for turbulent channel.

Read more…
applySrc_turbChanForce_MRT_d3q27 mus_derQuan_module Subroutine

Update state with source variable "force" for generic MRT collision model for turb_channel_force. It uses velocityX average in bulk to adapt the driving force for turbulent channel.

Read more…
assign_intp_fluid mus_interpolate_module Subroutine

Set up interpolation routines for fluid (weakly compressible) scheme

assign_intp_fluidLES mus_interpolate_module Subroutine

Set up interpolation routines for fluid (weakly compressible) scheme and turbulence active

assignBCList mus_construction_module Subroutine

This routine assigns the BC lists Run over all the elements with the property boundary and check each direction. Assign all common boundaries to the level-wise representation 3rd step in build_BCLists

bc_pdf mus_bc_fluid_module Subroutine

Boundary condition for APESMATE that supports pdfs as input variable Makes it possible to use pdf from, for example, the left to the right domain

Read more…
bgk_advRel_d3q19f3_MSGas mus_MSGas_module Subroutine

Optimized Advection relaxation routine for the MSGas BGK model for d3q19 layout with three species.

Read more…
bgk_advRel_d3q19f3_MSLiquid mus_MSLiquid_module Subroutine

Optimized Advection relaxation routine for the MSLiquid BGK model for d3q19 layout with three species.

Read more…
bgk_advRel_d3q19f3_MSLiquid_WTDF mus_MSLiquid_module Subroutine

Semi-optimized Advection relaxation routine for the MSLiquid BGK model for d3q19 layout with three species with thermodynamic factor.

Read more…
bgk_advRel_isotherm_acEq_d3q19 mus_isotherm_acEq_module Subroutine

Advection relaxation routine for the D3Q19 model with BGK for the isothermal acoustic equation.

Read more…
bgk_advRel_MSGas_generic mus_MSGas_module Subroutine

Unoptimized Advection relaxation routine for the multispecies BGK model for testing

Read more…
bgk_advRel_MSLiquid_generic mus_MSLiquid_module Subroutine

Unoptimized Advection relaxation routine for the multispecies BGK model

Read more…
bgk_advRel_MSLiquid_generic_WTDF mus_MSLiquid_module Subroutine

Unoptimized Advection relaxation routine for the multispecies BGK model with thermodynamic factors in Maxwell-Stefan formulation

Read more…
bgk_DualRelaxationTime_RR_d2q9 mus_d2q9_module Subroutine
bgk_DualRelaxationTime_RR_d3q19 mus_d3q19_module Subroutine

Recursive Regularized relaxation routine for the D3Q19 This subroutine interface must match the abstract interface definition kernel in scheme/mus_scheme_type_module.f90 in order to be callable via compute function pointer. works for both d3q19 and d3q27

bgk_DualRelaxationTime_RR_d3q27 mus_d3q27_module Subroutine

Recursive Regularized relaxation routine for the D3Q27 This subroutine interface must match the abstract interface definition kernel in scheme/mus_scheme_type_module.f90 in order to be callable via compute function pointer.

bgk_forcing_advRel_MSLiquid_generic mus_MSLiquid_module Subroutine

Unoptimized Advection relaxation routine for the multispecies BGK model with external forcing term

Read more…
bgk_HybridRecursiveRegularized_d2q9 mus_d2q9_module Subroutine

Hybrid recursive regularization relaxation routine for the BGK model. based on: Feng et al., JCP 2019, "Hybrid recursive regularized thermal lattice Boltzmann model for high subsonic compressible flows"

Read more…
bgk_HybridRecursiveRegularized_d3q19 mus_d3q19_module Subroutine

Projected Recursive Regularized relaxation routine for the D3Q19 This subroutine interface must match the abstract interface definition kernel in scheme/mus_scheme_type_module.f90 in order to be callable via compute function pointer. works for both d3q19 and d3q27

Read more…
bgk_HybridRecursiveRegularized_d3q27 mus_d3q27_module Subroutine

Projected Recursive Regularized relaxation routine for the D3Q19 This subroutine interface must match the abstract interface definition kernel in scheme/mus_scheme_type_module.f90 in order to be callable via compute function pointer. works for both d3q19 and d3q27

Read more…
bgk_HybridRecursiveRegularizedCorr_d2q9 mus_d2q9_module Subroutine

Hybrid recursive regularization relaxation routine for the BGK model. based on: Feng et al., JCP 2019, "Hybrid recursive regularized thermal lattice Boltzmann model for high subsonic compressible flows"

Read more…
bgk_HybridRecursiveRegularizedCorr_d3q19 mus_d3q19_module Subroutine

Projected Recursive Regularized relaxation routine for the D3Q19 This subroutine interface must match the abstract interface definition kernel in scheme/mus_scheme_type_module.f90 in order to be callable via compute function pointer. works for both d3q19 and d3q27

Read more…
bgk_HybridRecursiveRegularizedCorr_d3q27 mus_d3q27_module Subroutine

Projected Recursive Regularized relaxation routine for the D3Q19 This subroutine interface must match the abstract interface definition kernel in scheme/mus_scheme_type_module.f90 in order to be callable via compute function pointer. works for both d3q19 and d3q27

Read more…
bgk_ProjectedRecursiveRegularized_d2q9 mus_d2q9_module Subroutine
bgk_ProjectedRecursiveRegularized_d3q19 mus_d3q19_module Subroutine

Projected Recursive Regularized relaxation routine for the D3Q19 This subroutine interface must match the abstract interface definition kernel in scheme/mus_scheme_type_module.f90 in order to be callable via compute function pointer. works for both d3q19 and d3q27

Read more…
bgk_ProjectedRecursiveRegularized_d3q27 mus_d3q27_module Subroutine

Projected Recursive Regularized relaxation routine for the D3Q27 This subroutine interface must match the abstract interface definition kernel in scheme/mus_scheme_type_module.f90 in order to be callable via compute function pointer.

Read more…
bgk_RecursiveRegularized_d2q9 mus_d2q9_module Subroutine
bgk_RecursiveRegularized_d3q19 mus_d3q19_module Subroutine

Recursive Regularized relaxation routine for the D3Q19 This subroutine interface must match the abstract interface definition kernel in scheme/mus_scheme_type_module.f90 in order to be callable via compute function pointer. works for both d3q19 and d3q27

bgk_RecursiveRegularized_d3q27 mus_d3q27_module Subroutine

Recursive Regularized relaxation routine for the D3Q27 This subroutine interface must match the abstract interface definition kernel in scheme/mus_scheme_type_module.f90 in order to be callable via compute function pointer.

bgk_Regularized_d2q9 mus_d2q9_module Subroutine
bgk_Regularized_d3q19 mus_d3q19_module Subroutine

Regularized relaxation routine for the D3Q19 and 27 model with BGK. This subroutine interface must match the abstract interface definition kernel in scheme/mus_scheme_type_module.f90 in order to be callable via compute function pointer. works for both d3q19 and d3q27

bgk_Regularized_d3q27 mus_d3q27_module Subroutine

Regularized relaxation routine for the D3Q19 and 27 model with BGK. This subroutine interface must match the abstract interface definition kernel in scheme/mus_scheme_type_module.f90 in order to be callable via compute function pointer. works for both d3q19 and d3q27

build_bcLevelPointer mus_construction_module Subroutine
build_BClists mus_construction_module Subroutine

Assemble the level-wise list of elements which adhere to the boundary conditions.

Read more…
calc_MLUPS mus_tools_module Function

Calculate the MLUPS or MFLUPS for the simulation

calc_ms_diff_matrix_from_moledens mus_eNRTL_module Interface

This routine calculates Maxwell-Stefan diffusivity coeffcient Matrix for given mole_frac of all species

calc_ms_diff_matrix_from_molefrac mus_eNRTL_module Interface

This routine calculates Maxwell-Stefan diffusivity coeffcient Matrix for given mole_frac of all species

calc_therm_factor_loc mus_eNRTL_module Interface

This routine calculates thermodynamic factor for given mole_frac of all species

calcDensAndVelsFromPDF mus_bc_species_module Subroutine

This routine returns mass density of all species and mass averaged mixture velocity from given pdf of all species for single element. It is used in Nonequilbrium extrapolation based boundary conditions.

calcTurbWallBndForceAndMoment mus_bc_fluid_turbulent_module Subroutine

This routine computes bndForce on boundary elements using momentum exchange method.

calculate_nElems mus_construction_module Subroutine

Calculate global and sum of levels numbers of elements

Read more…
calcVelSW_unitSW_velTau_tVisc mus_bc_fluid_turbulent_module Subroutine

Calculation stream-wise velocity compononent from wall function and friction velocity, stream-wise unit vector and turbulent viscosity with mixing length formulation.

calcVisc_CS mus_nonNewtonian_module Subroutine

Calculate kinematic viscosity from nonNewtonian Casson model. $\mu = (k0 + k1 * sqrt(shearRate))^2/shearRate$

Read more…
calcVisc_CY mus_nonNewtonian_module Subroutine

Calculate kinematic viscosity from nonNewtonian Carreau-Yasuda model. $\mu = \mu_\inf + (\mu_0-\mu_\inf)(1+(\lambdashearRate)a)^((n-1)/a)$

Read more…
calcVisc_incomp_CS mus_nonNewtonian_module Subroutine

Calculate kinematic viscosity from nonNewtonian Casson model for incompressible model. $\mu = (k0 + k1 * sqrt(shearRate))^2/shearRate$

Read more…
calcVisc_incomp_CY mus_nonNewtonian_module Subroutine

Calculate kinematic viscosity from nonNewtonian Carreau-Yasuda model for incompressible model. $\mu = \mu_\inf + (\mu_0-\mu_\inf)(1+(\lambdashearRate)a)^((n-1)/a)$

Read more…
calcVisc_incomp_PL mus_nonNewtonian_module Subroutine

Calculate kinematic viscosity from nonNewtonian power-law model for incompressible model $\mu = K shearRate^(n-1)$

Read more…
calcVisc_PL mus_nonNewtonian_module Subroutine

Calculate kinematic viscosity from nonNewtonian power-law model. $\mu = K shearRate^(n-1)$. Shear rate is computed from strain rate which is computed from nonEquilibrium PDF which in turn computed from pre-collision PDF

cascaded_d3q27 mus_compute_cumulant_module Subroutine

No comment yet!

Read more…
central_moment mus_compute_cumulant_module Function

Calculating central moment. This follows equations 21 in cumulent paper ( Geier .et al 2015 )

central_moment_split mus_compute_cumulant_module Function

Calculating central moment by spliting among directions. This follows equations 43, 44, 45 in cumulent paper (Geier .et al 2015) We first do x direction for better performance.

check_BCs_preRequisite_MS mus_bc_general_module Subroutine

Check prerequisite for some boundary conditions

check_density mus_tools_module Subroutine

Check the total density for a selected scheme and write to unit

Read more…
check_flow_status mus_aux_module Subroutine

This routine performs several tasks: geometry increment, time updating, tracking, density checking, restart

check_mrt_matrix_d3q19 mus_mrtInit_module Function

Unoptimized explicit implementation

Read more…
check_mrt_matrix_d3q27 mus_mrtInit_module Function

Unoptimized explicit implementation

Read more…
check_potential mus_tools_module Subroutine

Check the total potential for poisson scheme

Read more…
check_solid_in_bc mus_bc_header_module Subroutine

It count valid (non-solid) elements in BC elements list. Input: minLevel, maxLevel LevelPointer LevelDesc nElems - number of BC elements elems - positions of BC elements in tree or levelPointer Output: nValid - number of valid BC elements posInBCElem - positions of valid elements in BC elements list

check_streaming_layout mus_tools_module Subroutine

Check for the streaming layout.

check_varSys_forPdfVar mus_variable_module Subroutine

This function runs over all variable loaded from restart file check if variables loaded are pdf variable or derive variable

Read more…
check_velocityFluid mus_tools_module Subroutine

Check the maximum velocity whether it is above Ma>0.1

check_velocityMS mus_tools_module Subroutine

Check the maximum velocity whether it is above Ma>0.1

cm_to_pdf mus_compute_cumulant_module Function
communicate_property mus_construction_module Subroutine

Initialize the communication buffers for a single level

compute_bulkViscOmega mus_species_module Subroutine

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

compute_fricVel mus_turb_wallFunc_module Subroutine

This routine computes friction velocity from wall model profile using Newton iteration method

compute_molWeightRatio mus_species_module Subroutine

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

Read more…
compute_weight mus_interpolate_module Subroutine

This routine computes weights for weighted_average interpolation.

computeStreamWiseVel mus_turb_wallFunc_module Subroutine

This routines computes streamWise velocity component from friction velocity and distance to boundary using any wall function profile.

convPrePost mus_derivedQuantities_module2 Function

Conversion factor betwen the pre- and post-collision quantity for the shear stress.

Read more…
countnBnds mus_construction_module Subroutine

Identify the number of boundary condition elements of each BC type and number of elements with multiple BC types. This is 1st step in Build_BClists

cumulant_d3q27 mus_compute_cumulant_module Subroutine

No comment yet!

Read more…
cumulant_d3q27_extended_fast mus_compute_cumulant_module Subroutine

Cumulant kernel based on Geier2017 and optimized. Just omega(2) is given in input. omega(2)=-1 means omega2=omegaBulk. Limiters read from input. lim(N)=10^10 means unlimited. lim(N) is for omega(N+2). Just omega(3:5) are limited as in the paper. omega(6:10) = 1._rk

Read more…
cumulant_d3q27_extended_generic mus_compute_cumulant_module Subroutine

Cumulant based on Geier2017 paper. With all modifications and limiters. All omegas are given in input. When omega(N) = -1 means adjusted in this routine. omega(2)=-1 means omega2=omegaBulk. Limiters read from input. lim(N)=10^10 means unlimited. lim(N) is for omega(N+2). Just omega(3:5) are limited as in the paper.

Read more…
cumulant_omega_check mus_cumulantInit_module Subroutine

Checking the stability regions of omegas for the parametrized Cumulant Just omega(2) is given in input. omega(2)=-1 means omega2=omegaBulk. Limiters read from input. lim(N)=10^10 means unlimited. lim(N) is for omega(N+2). Just omega(3:5) are limited as in the paper. omega(6:10) = 1._rk

debug_connectivity mus_debug_module Subroutine

Detailed Debug output to the PDF neighbor (connectivity) list

Read more…
debug_dependencies mus_interpolate_tools_module Subroutine

check the dependencies from Finer

debug_dependenciesFromCoarser mus_debug_module Subroutine

Interpolation routine that is based on a simple weighted average of source nodes. This is the interpolation coarse-> fine. Weights are needed here, as the distances source <-> target are different for the source nodes.

debug_dependenciesFromFiner mus_debug_module Subroutine

Debug the dependencies for the ghostFromFiner elements

debug_glob_boundary_type mus_bc_header_module Subroutine
debug_normals mus_debug_module Subroutine

D u m p

t h e

n e i g h b o r s

f o u n d

f o r

t h e

b o u n d a r i e s

w i t h

n e i g h b o r

e l e m e n t s

Read more…
derDensityIsothermAcEq mus_derQuanIsothermAcEq_module Subroutine

Calculate the density of a given set of elements (sum up all links).

Read more…
derEquilIsothermAcEq mus_derQuanIsothermAcEq_module Subroutine

Calculate the equlibrium of given elements with the given input state array.

Read more…
derEquilIsothermAcEq_fromIndex mus_derQuanIsothermAcEq_module Subroutine

Initiates the calculation of equilibrium. This routine sets the function Pointer for equilibrium calcualtion and calls the generice get Value of Index routine

Read more…
derive_absorbLayer mus_derQuan_module Subroutine

Derive absorb layer variable defined as a source term.

derive_absorbLayerIncomp mus_derQuanIncomp_module Subroutine

Derive absorb layer variable defined as a source term.

derive_equalInjectionPS mus_derQuanPS_module Subroutine

Derive injection variable defined as a source term for lbm passive scalar. It evaluates spacetime function defined in lua file for injection variable and convert it to state value which is to be added to the state

derive_force1stOrd mus_derQuan_module Subroutine

Derive external force variable defined as a source term. It evaluates spacetime function defined in lua file for force variable and convert it to state value which is to be added to the state

Read more…
derive_force_MRT mus_derQuan_module Subroutine

Derive external force variable defined as a source term. It evaluates spacetime function defined in lua file for force variable and convert it to state value which is to be added to the state

derive_HRRCorrection_d2q9 mus_derQuan_module Subroutine

Derive external force variable defined as a source term. It evaluates spacetime function defined in lua file for force variable and convert it to state value which is to be added to the state

derive_HRRCorrection_d3q19 mus_derQuan_module Subroutine

Derive external force variable defined as a source term. It evaluates spacetime function defined in lua file for force variable and convert it to state value which is to be added to the state

derive_HRRCorrection_d3q27 mus_derQuan_module Subroutine

Derive external force variable defined as a source term. It evaluates spacetime function defined in lua file for force variable and convert it to state value which is to be added to the state

derive_injectionPS mus_derQuanPS_module Subroutine

Derive injection variable defined as a source term for lbm passive scalar. It evaluates spacetime function defined in lua file for injection variable and convert it to state value which is to be added to the state

deriveAux_fromState mus_derQuan_module Subroutine

This routine computes auxField from state array

Read more…
deriveAuxMSGas_fromState mus_derQuanMSGas_module Subroutine

This routine computes auxField 'density and velocity' of given field from state array. velocity of original PDF is computed in this routine by solving LSE

Read more…
deriveAuxMSLiquid_fromState mus_derQuanMSLiquid_module Subroutine

This routine computes auxField 'density and velocity' of given field from state array. velocity of original PDF is computed in this routine by solving LSE.

Read more…
deriveAuxMSLiquid_fromState_WTDF mus_derQuanMSLiquid_module Subroutine

This routine computes auxField 'density and velocity' of given field from state array with thermodynamic factot. velocity of original PDF is computed in this routine by solving LSE.

Read more…
deriveAuxNP_fromState mus_derQuanNernstPlanck_module Subroutine

subroutine to add derive variables for weakly compressible PB (schemekind = 'nernstPlanck') to the varsys. A Coupled Lattice Boltzmann Method to Solve Nernst-Planck Model for Simulating Electro-Osmotic flows author> Xuguang yang This routine computes auxField 'mole_density' from state array

Read more…
deriveAuxPoisson_fromState mus_derQuanPoisson_module Subroutine

This routine computes auxField 'potential' from state array

Read more…
deriveAuxPS_fromState mus_derQuanPS_module Subroutine

This routine computes auxField from state array

Read more…
deriveBndForce mus_derQuan_module Subroutine

Calculate the force on the boundary of a given set of elements

Read more…
deriveBndMoment mus_derQuan_module Subroutine

Calculate the moment on the boundary of a given set of elements

Read more…
deriveChargeDensity mus_derQuanMSLiquid_module Subroutine

Calculate charge density of a given element for mixture. Charge density is mixture quantity to it returns same value for all species charge_density = Faraday * \sum_i z_i*density_i/molecularWeight_i

deriveChargeDensity_fromIndex mus_derQuanMSLiquid_module Subroutine

Calculate charge density from species concentration

Read more…
deriveChargeDensityBoltzAppr_forElement mus_derQuanPoisson_module Subroutine

Calculate charge density from potential field using Boltzmann approximation

Read more…
deriveChargeDensityBoltzAppr_fromIndex mus_derQuanPoisson_module Subroutine

Calculate charge density from potential field using Boltzmann approximation from given index

Read more…
deriveChargeDensityPhy mus_derQuanPhysics_module Subroutine

Calculate the charge density of a given set of elements

Read more…
deriveChargeDensityPhy_fromIndex mus_derQuanPhysics_module Subroutine

Calculate the charge density of a given idx

Read more…
deriveCurrentDensity mus_derQuanMSLiquid_module Subroutine

Current density is computed from species momentum stored in auxField array. Current density, J = charge_density*velocity = \rho_e * u = \sum_k z_k F p_k / M_k where p_k is the species momentum

deriveCurrentDensity_fromIndex mus_derQuanMSLiquid_module Subroutine

Calculate current density from species momentum

Read more…
deriveCurrentDensityPhy mus_derQuanPhysics_module Subroutine

Calculate the current density of a given set of elements

Read more…
deriveCurrentDensityPhy_fromIndex mus_derQuanPhysics_module Subroutine

Calculate the current density of a given idx (sum up all links).

Read more…
deriveDensity mus_derQuan_module Subroutine

Initiates the calculation of density This routine sets the function Pointer for density calcualtion and calls the generice get Element from PDF routine

Read more…
deriveDensity_fromIndex mus_derQuan_module Subroutine

Initiates the calculation of density. This routine sets the function Pointer for density calcualtion and calls the generice get Value of Index routine

Read more…
deriveDensityPhy mus_derQuanPhysics_module Subroutine

Calculate the density of a given set of elements (sum up all links).

Read more…
deriveDensityPhy_fromIndex mus_derQuanPhysics_module Subroutine

Calculate the density of a given idx (sum up all links).

Read more…
deriveElectric_FieldPhy mus_derQuanPhysics_module Subroutine

Calculate the electric_field of a given set of elements

Read more…
deriveElectric_FieldPhy_fromIndex mus_derQuanPhysics_module Subroutine

Calculate the electrical field of a given idx

Read more…
deriveElectricfield_forElement mus_derQuanPoisson_module Subroutine

Calculate the electric field of a given set of elements (sum up all links). This routine is used to compute electric field for all scheme kinds

Read more…
deriveElectricfield_fromIndex mus_derQuanPoisson_module Subroutine

Calculate the electric field of a given set of elements (sum up all links). This routine is used to compute electric field for all scheme kinds

Read more…
deriveEq_FromState mus_derQuan_module Subroutine

This routine computes velocity from state array

Read more…
deriveEq_FromState_IsothermAcEq mus_derQuanIsothermAcEq_module Subroutine

This routine computes equil from state array

Read more…
deriveEqMSGas_FromState mus_derQuanMSGas_module Subroutine

This routine computes equilibrium from state array

Read more…
deriveEqMSLiquid_FromState mus_derQuanMSLiquid_module Subroutine

This routine computes equilibrium from state array

Read more…
deriveEquil mus_derQuan_module Subroutine

Initiates the calculation of equlibrium This routine sets the function Pointer for equlibrium calcualtion and calls the generice get Element from PDF routine

Read more…
deriveEquil_fromAux mus_derQuan_module Subroutine

This routine computes equilbrium from auxField

Read more…
deriveEquil_fromIndex mus_derQuan_module Subroutine

Initiates the calculation of equilibrium. This routine sets the function Pointer for equilibrium calcualtion and calls the generice get Value of Index routine

Read more…
deriveEquil_FromMacro mus_derQuan_module Subroutine

This routine computes equilbrium from density and velocity This must comply with interface in mus_variable_module derive_FromMacro

Read more…
deriveEquil_FromMacro_IsothermAcEq mus_derQuanIsothermAcEq_module Subroutine

This routine computes equilbrium from density and velocity This must comply with interface in mus_variable_module derive_FromMacro

Read more…
deriveEquilIsoThermAcEq_fromAux mus_derQuanIsothermAcEq_module Subroutine

This routine computes equilbrium from auxField

Read more…
deriveEquilMSGas mus_derQuanMSGas_module Subroutine

Calculate the equlibrium of a given element number with the given input state vector.

Read more…
deriveEquilMSGas_fromAux mus_derQuanMSGas_module Subroutine

This routine computes equilbrium from auxField

Read more…
deriveEquilMSGas_FromMacro mus_derQuanMSGas_module Subroutine

This routine computes equilbrium from density and velocity This must comply with mus_variable_module%derive_FromMacro

Read more…
deriveEquilMSLiquid mus_derQuanMSLiquid_module Subroutine

Equilibrium from density and momentum stored in auxField

deriveEquilMSLiquid_fromAux mus_derQuanMSLiquid_module Subroutine

This routine computes equilbrium from auxField

Read more…
deriveEquilMSLiquid_FromMacro mus_derQuanMSLiquid_module Subroutine

This routine computes equilbrium from density and velocity This must comply with mus_variable_module%derive_FromMacro

Read more…
deriveEquilNP_fromAux mus_derQuanNernstPlanck_module Subroutine

This routine computes equilbrium from auxField

Read more…
deriveEquilPoisson_fromAux mus_derQuanPoisson_module Subroutine

This routine computes equilbrium from auxField

Read more…
deriveEquilPS2ndOrder_FromMacro mus_derQuanPS_module Subroutine

This routine computes 2nd order equilbrium from density and velocity This must comply with mus_variable_module%derive_FromMacro

Read more…
deriveEquilPS_fromAux mus_derQuanPS_module Subroutine

This routine computes equilbrium from auxField

Read more…
deriveEquilPS_FromMacro mus_derQuanPS_module Subroutine

This routine computes equilbrium from density and velocity This must comply with mus_variable_module%derive_FromMacro

Read more…
deriveEquilVelMSGas mus_derQuanMSGas_module Subroutine

Equilibrium velocity from state Calculate the momentum of a given element for single species or mixture from the cptr scheme state vector for gas mixture (Asinari model). Need to solve the system of equations to compute this momentum since first order moments gives only moments of transformed pdfs. Hence to obtain the first order moments of actual pdfs we need to solve system of equation of size = nSpecies for each velocity components

Read more…
deriveEquilVelMSLiquid mus_derQuanMSLiquid_module Subroutine

Equilibrium velocity from density and momentum in auxField.

deriveEquilVelWTDF_MSLiquid mus_derQuanMSLiquid_module Subroutine

Equilibrium velocity from density and momentum in auxField with thermodynamic factor

deriveEquilWTDF_MSLiquid mus_derQuanMSLiquid_module Subroutine

Equilibrium from density and momentum in auxField with thermodynamic factor

deriveForcePhy mus_derQuanPhysics_module Subroutine

Compute and convert following variable force into physical units

Read more…
deriveForcePhy_fromIndex mus_derQuanPhysics_module Subroutine

Calculate the bnd_force of a given idx

Read more…
deriveKE mus_derQuan_module Subroutine

Calculate kinetic energy from density and velocity in auxField This routine sets the function Pointer for kinetic energy calcualtion and calls the generice get Element from PDF routine

Read more…
deriveKE_forPoint mus_derQuan_module Subroutine

Calculates Kinetic energy from density and velocity for given set of points.

Read more…
deriveKe_fromIndex mus_derQuan_module Subroutine

Initiates the calculation of kinetic_energy. This routine sets the function Pointer for kinetic_energy calcualtion and calls the generice get Value of Index routine

Read more…
deriveKineEnerPhy mus_derQuanPhysics_module Subroutine

Calculate the kinetic energy in physical units The interface has to comply to the abstract interface tem_varSys_proc_element.

deriveKineEnerPhy_fromIndex mus_derQuanPhysics_module Subroutine

Calculate the kinetic energy of a given idx

Read more…
deriveKinePressMSLiquid mus_derQuanMSLiquid_module Subroutine

Calculate mixture kinematic pressure. This routine requires initial total mole density which is defined in mixture table. Formula to compute kinematic pressure here, - species density, \ - species molecular weight ratio, \ - reference mixture number density,\ - reference density. In tracking,

Read more…
deriveKinePressPhy mus_derQuanPhysics_module Subroutine

Calculate the kinematic mixture pressure in physical of a given set of elements (sum up all links).

Read more…
deriveKinePressPhy_fromIndex mus_derQuanPhysics_module Subroutine

Calculate the kinematic pressure of a given idx

Read more…
deriveMachNr mus_derQuan_module Subroutine

Calculate the mach number of a given set of elements (sum up all links).

Read more…
deriveMachNr_forPoint mus_derQuan_module Subroutine

Calculates Mach nr for given set of points.

Read more…
deriveMachNr_fromIndex mus_derQuan_module Subroutine

Initiates the calculation of mach number. This routine sets the function Pointer for pressure calcualtion and calls the generice get Value of Index routine

Read more…
deriveMassFracMS mus_derQuanMSLiquid_module Subroutine

mass fraction from density stored in auxField

deriveMixVelMS mus_derQuanMSLiquid_module Subroutine

Calculate mixture velocity of a given element from the momentum and density stored in auxField array for liquid mixture. auxField was updated with momentum of untransformed PDF which was computed by solving LSE in compute kernel.

deriveMixVelMS_fromIndex mus_derQuanMSLiquid_module Subroutine

Calculate mixture velocity from density from species momentum

Read more…
deriveMoleDensity_forElement mus_derQuanNernstPlanck_module Subroutine

Calculate the potential of a given set of elements (sum up all links). This routine is used to compute potential for all scheme kinds

Read more…
deriveMoleDensity_fromIndex mus_derQuanNernstPlanck_module Subroutine

Calculate the potential of a given set of elements (sum up all links). This routine is used to compute potential for all scheme kinds

Read more…
deriveMoleDensityMS mus_derQuanMSLiquid_module Subroutine

Calculate the number density of a given element for single species from the density stored in auxField array. Mixture number density is computed by summing species number density using tem_evalAdd_forElement Number density = density/molecular weight mixture number density = sum(number_density)

deriveMoleDensityMS_fromIndex mus_derQuanMSLiquid_module Subroutine

Calculate mole density from species concentration for getValOfIndex

Read more…
deriveMoleDensityPhy mus_derQuanPhysics_module Subroutine

Calculate the density of a given set of elements (sum up all links).

Read more…
deriveMoleDensityPhy_fromIndex mus_derQuanPhysics_module Subroutine

Calculate the mole density of a given idx

Read more…
deriveMoleFluxMS mus_derQuanMSLiquid_module Subroutine

Compute mole flux from momentum stored in auxField. mole flux = numDens_i*velocity_i = momentum / molWeight

deriveMoleFluxMS_fromIndex mus_derQuanMSLiquid_module Subroutine

Calculate mole flux from species momentum for getValOfIndex

Read more…
deriveMoleFluxPhy mus_derQuanPhysics_module Subroutine

Calculate the density of a given set of elements (sum up all links).

Read more…
deriveMoleFluxPhy_fromIndex mus_derQuanPhysics_module Subroutine

Calculate the mole flux of a given idx

Read more…
deriveMoleFracMS mus_derQuanMSLiquid_module Subroutine

mole fraction from density stored in auxField

deriveMoment mus_derQuan_module Subroutine

Initiates the calculation of moment for 2D This routine sets the function Pointer for moment for 2D calcualtion and calls the generice get Element from PDF routine

Read more…
deriveMomentaMSGas_FromState mus_derQuanMSGas_module Subroutine

This routine computes momentum from state array

Read more…
deriveMomentaMSLiquid_FromState mus_derQuanMSLiquid_module Subroutine

This routine computes momentum of all species from state array

Read more…
deriveMomentPhy mus_derQuanPhysics_module Subroutine

Compute and convert following variable moment into physical units

Read more…
deriveMomentPhy_fromIndex mus_derQuanPhysics_module Subroutine

Calculate the bnd_moment of a given idx

Read more…
deriveMomentum mus_derQuan_module Subroutine

Calculate momentum from density and velocity stored in auxField

Read more…
deriveMomentum_forPoint mus_derQuan_module Subroutine

Calculates momentum from density and velocity for given set of points.

Read more…
deriveMomentum_fromIndex mus_derQuan_module Subroutine

Calculate Momentum from density and velocity in auxField.

Read more…
deriveMomentumPhy mus_derQuanPhysics_module Subroutine

Calculate the momentum of a given element number with the given input vector (sum up all values)

Read more…
deriveMomentumPhy_fromIndex mus_derQuanPhysics_module Subroutine

Calculate the momentum of a given idx

Read more…
deriveMomMSGas_FromState mus_derQuanMSGas_module Subroutine

This routine computes momentum from state array

Read more…
deriveMomMSLiquid_FromState mus_derQuanMSLiquid_module Subroutine

This routine computes momentum from state array

Read more…
deriveNonEquil mus_derQuan_module Subroutine

Initiates the calculation of NonEquil This routine sets the function Pointer for NonEquil calcualtion and calls the generice get Element from PDF routine

Read more…
deriveNonEquil_fromIndex mus_derQuan_module Subroutine

Initiates the calculation of non_equilibrium. This routine sets the function Pointer for non_equilibrium calcualtion and calls the generice get Value of Index routine

Read more…
derivePDFMomentsPhy mus_derQuanPhysics_module Subroutine

Calculate the momentum of a given element number with the given input vector (sum up all values)

Read more…
derivePDFMomentsPhy_fromIndex mus_derQuanPhysics_module Subroutine

Calculate the momentum of a given idx

Read more…
derivePotentialPhy mus_derQuanPhysics_module Subroutine

Calculate the potential of a given set of elements

Read more…
derivePotentialPhy_fromIndex mus_derQuanPhysics_module Subroutine

Calculate the potential of a given idx

Read more…
derivePressure mus_derQuan_module Subroutine

Calculate the pressure of a given set of elements (sum up all links).

Read more…
derivePressure_forPoint mus_derQuan_module Subroutine

Calculates pressure for given set of points.

Read more…
derivePressure_fromIndex mus_derQuan_module Subroutine

Initiates the calculation of pressure. This routine sets the function Pointer for pressure calcualtion and calls the generice get Value of Index routine

Read more…
derivePressureMS mus_derQuanMSLiquid_module Subroutine

Calculate species pressure both for gas and liquid model In case of gas mixture, it is partial pressure where as in liquid mixture this is not valid. However, it is used to compute mixture pressure and then the kinematic_pressure from the mixture pressure. Formula to calculate pressure: here, - species density, \ - species molecular weight ratio, \

derivePressurePhy mus_derQuanPhysics_module Subroutine

Compute and convert following variable pressure/shear_stress/wss/shear_mag into physical units

Read more…
derivePressurePhy_fromIndex mus_derQuanPhysics_module Subroutine

Calculate the pressure of a given idx

Read more…
deriveQCriterionPhy mus_derQuanPhysics_module Subroutine

Convert lattice q-criterion to physical unit i.e strainRate**2

Read more…
deriveRho_FromState mus_derQuan_module Subroutine

This routine computes density from state array

Read more…
deriveShearMag mus_derQuan_module Subroutine

Calculate the shear stress magnitude of a given element number with the given

Read more…
deriveShearRate mus_derQuan_module Subroutine

Calculate the shear rate

Read more…
deriveShearStress mus_derQuan_module Subroutine

Calculate the deviatoric shear stress for Newtonian fluid (exclude pressure) (no mixtures).\n Shear Stress depends on variable: nonEquilibirium

Read more…
deriveSrc_chargeDensity mus_derQuanPoisson_module Subroutine

Calculate charge density source variable referred in config file

Read more…
deriveStrainRate mus_derQuan_module Subroutine

Initiates the calculation of StrainRate This routine sets the function Pointer for StrainRate calcualtion and calls the generice get Element from PDF routine

Read more…
deriveStrainRate_fromIndex mus_derQuan_module Subroutine

Initiates the calculation of kinetic_energy. This routine sets the function Pointer for kinetic_energy calcualtion and calls the generice get Value of Index routine

Read more…
deriveStrainRatePhy mus_derQuanPhysics_module Subroutine

Calculate the strain rate (or called rate of strain)

Read more…
deriveStrainRatePhy_fromIndex mus_derQuanPhysics_module Subroutine

Calculate the strain rate of a given idx

Read more…
deriveTemp mus_derQuan_module Subroutine

Calculate the temperature of a given set of elements (sum up all links).

Read more…
deriveTempPhy mus_derQuanPhysics_module Subroutine

Calculate the velocity magnitude of a given element number with the given input vector (sum up all values)

Read more…
deriveTempPhy_fromIndex mus_derQuanPhysics_module Subroutine

Calculate the temperature of a given idx

Read more…
deriveVel_FromPreColState mus_derQuan_module Subroutine

This routine computes velocity from pre collision state array using Fetch

Read more…
deriveVel_FromState mus_derQuan_module Subroutine

This routine computes velocity from state array

Read more…
deriveVelMSGas_FromState mus_derQuanMSGas_module Subroutine

This routine computes velocity from state array

Read more…
deriveVelMSLiquid_FromState mus_derQuanMSLiquid_module Subroutine

This routine computes velocity from state array

Read more…
deriveVelocitiesMSGas_FromState mus_derQuanMSGas_module Subroutine

This routine computes velocity from state array

Read more…
deriveVelocitiesMSLiquid_FromState mus_derQuanMSLiquid_module Subroutine

This routine computes velocities of all species from state array

Read more…
deriveVelocity_FromState_IsothermAcEq mus_derQuanIsothermAcEq_module Subroutine

This routine computes velocity from state array

Read more…
deriveVelocityMS mus_derQuanMSLiquid_module Subroutine

Calculate the velocity of a given element for single species. from the momentum and density stored in auxField array for liquid mixture. auxField was updated with momentum of untransformed PDF which was computed by solving LSE in compute kernel.

deriveVelocityMS_fromIndex mus_derQuanMSLiquid_module Subroutine

Calculate velocity from species density and momentum in auxField for getValOfIndex

Read more…
deriveVelocityPhy mus_derQuanPhysics_module Subroutine

Calculate the velocity of a given element number with the given input vector (sum up all values)

Read more…
deriveVelocityPhy_fromIndex mus_derQuanPhysics_module Subroutine

Calculate the velocity of a given idx

Read more…
deriveViscosityPhy mus_derQuanPhysics_module Subroutine

Convert lattice viscosity to physical viscosity

Read more…
deriveWSS2D mus_derQuan_module Subroutine
deriveWSS3D mus_derQuan_module Subroutine

Calculate the wall shear stress (WSS) of a given element with the given input

Read more…
derPressureIsothermAcEq mus_derQuanIsothermAcEq_module Subroutine

Calculate the pressure of a given set of elements (sum up all links).

Read more…
derVelocityIsothermAcEq mus_derQuanIsothermAcEq_module Subroutine

Initiates the calculation of velocity This routine sets the function Pointer for velocity calcualtion and calls the generice get Element from PDF routine

Read more…
do_benchmark mus_control_module Subroutine
do_fast_singleLevel mus_control_module Subroutine

Control routine for an optimized workflow with reduced functionality.

Read more…
do_intpCoarserAndExchange mus_control_module Subroutine

This routine utilizes fluid elements on my level (L) to fill finer ghost elements on next level (L+1). Then it exchanges the datas of finer ghost elements (L+1) between process.

do_intpFinerAndExchange mus_control_module Subroutine

This routine does: 1. interpolate my coarse ghost element (iLevel) from finer level (iLevel+1) 2. exchange the data of my coarse ghost elements between process

do_nothing mus_bc_fluid_wall_module Subroutine

No comment yet!

Read more…
do_nothing mus_interpolate_debug_module Subroutine

Fill GhostFromFiner elements on my level with debug value

Read more…
do_nothing_arbi mus_interpolate_debug_module Subroutine

Fill GhostFromFiner elements on my level with debug value

Read more…
do_recursive_multiLevel mus_control_module Subroutine

Main control routine: Update the time step for all levels. Main steps: * if iLevel < maxLevel do recursive at iLevel+1 * do BC at iLevel * do auxField calculation at iLevel * do compute kernel at iLevel * do apply source at iLevel * do do_IntpFinerAndExchange at iLevel if iLevel < maxLevel * intp My Coarser ghost (iLevel) from Finer (iLevel+1) * do exchange bufferFromFiner at iLevel * exchange buffer at iLevel * exchange bufferFromCoarser at iLevel if iLevel > minLevel * do do_intpCoarserAndExchange at iLevel if iLevel < maxLevel * intp Finer Ghost (iLevel+1) from my coarser (iLevel) * exchange bufferFromCoarser at iLevel+1

dump_bc_timing mus_tools_module Subroutine

This routine dump compute and BC timing for all ranks rank nFluids tCompute nBCElems tBC tCPU tMainLoop

dump_debug_info mus_debug_module Subroutine

Dump pdf values into debug files

dump_elemDep mus_interpolate_tools_module Subroutine

dump dependencies for one element

dump_FinerGhostsFromMe mus_interpolate_tools_module Subroutine

check the dependencies from Coarser

dump_FinerGhostsFromMeBuffer mus_interpolate_tools_module Subroutine

check the dependencies from Coarser

dump_intpList mus_interpolate_tools_module Subroutine

check the dependencies from Finer and write them out so we can compare

dump_intpLists mus_interpolate_tools_module Subroutine

check the dependencies from Finer

dump_level_timing mus_program_module Subroutine
dump_linear_partition mus_tools_module Subroutine
dump_MyGhostsFromFiner mus_interpolate_tools_module Subroutine

check the dependencies from Finer and write them out so we can compare

dump_timing mus_tools_module Subroutine

Performance results (MLUPs) are written to a file for statistical review The file-format is simple can be evaluated with gnuplot

dumpPdfAll mus_debug_tools_module Subroutine

write all pdf entries of a all elements of the pdf array for a given level to the debug unit

equilFromMacro mus_derQuanMSLiquid_module Function

derive equilibrium from macro

equilFromMacroWTDF mus_derQuanMSLiquid_module Function

derive equilibrium from macro

equilVelFromMacro mus_derQuanMSLiquid_module Function

Equlibrium velocity from macro

equilVelFromMacroWTDF mus_derQuanMSLiquid_module Function

Equlibrium velocity from macro with thermodynamic factor

exchange_tree_bc mus_dynLoadBal_module Subroutine
f_f_eq_regularized_2nd_ord_d2q9 mus_d2q9_module Subroutine
f_f_eq_regularized_2nd_ord_d3q19 mus_d3q19_module Subroutine
f_f_eq_regularized_2nd_ord_d3q27 mus_d3q27_module Subroutine
f_f_eq_regularized_4th_ord_d2q9 mus_d2q9_module Subroutine
f_f_eq_regularized_4th_ord_d3q19 mus_d3q19_module Subroutine
f_f_eq_regularized_4th_ord_d3q27 mus_d3q27_module Subroutine
fill_bcBuffer mus_bc_general_module Subroutine

Transfer pdf of boundary elements into bcBuffer which is used by all boundary routines.

fill_neighBuffer mus_bc_general_module Subroutine

Transfer pre- and post-collision PDF of neighbors of boundary elements into neighBufferPre and neighBufferPost. Access to state array

Read more…
fillArbiFinerGhostsFromMe_linear mus_interpolate_linear_module Subroutine

Interpolate auxiliary field from coarse source to fine target

Read more…
fillArbiFinerGhostsFromMe_linear2D mus_interpolate_linear_module Subroutine

Interpolate auxiliary field from coarse source to fine target

Read more…
fillArbiFinerGhostsFromMe_quad mus_interpolate_quadratic_module Subroutine

Interpolate auxiliary field from coarse source to fine target

Read more…
fillArbiFinerGhostsFromMe_quad2D mus_interpolate_quadratic_module Subroutine

Interpolate auxiliary field from coarse source to fine target

Read more…
fillArbiFinerGhostsFromMe_weighAvg mus_interpolate_average_module Subroutine

Interpolate auxiliary field from coarse source to fine target

Read more…
fillArbiMyGhostsFromFiner_avg mus_interpolate_average_module Subroutine

Interpolate auxiliary field from fine source to coarse target

Read more…
fillFinerGhostsFromMe_linear2D_feq_fneq mus_interpolate_linear_module Subroutine

Fill fine ghost from coarse fluid by linear interpolation for D2Q9 stencil. 1. Compute moments for all source elements, save in momBuf 2. For each target, interpolate moments (den, vel, tau) (10 moments for 3D and 6 moments for 2D) 3. calculate fEq and use it to calculate high order moments 4. convert moments to PDF This routine is used by acoustic linear interpolation.

Read more…
fillFinerGhostsFromMe_linear_feq_fneq mus_interpolate_linear_module Subroutine

Fill fine ghost from coarse fluid by linear interpolation for D2Q9 stencil. 1. Compute moments for all source elements, save in momBuf 2. For each target, interpolate moments (den, vel, tau) (10 moments for 3D and 6 moments for 2D) 3. calculate fEq and use it to calculate high order moments 4. convert moments to PDF This routine is used by acoustic linear interpolation.

Read more…
fillFinerGhostsFromMe_linearLES_feq_fneq mus_interpolate_linear_module Subroutine

Fill fine ghost from coarse fluid by linear interpolation for D2Q9 stencil. 1. Compute moments for all source elements, save in momBuf 2. For each target, interpolate moments (den, vel, tau) (10 moments for 3D and 6 moments for 2D) 3. calculate fEq and use it to calculate high order moments 4. convert moments to PDF This routine is used by acoustic linear interpolation.

Read more…
fillFinerGhostsFromMe_quad2D_feq_fneq mus_interpolate_quadratic_module Subroutine

Fill fine ghost from coarse fluid by quadratic interpolation for D2Q9 stencil. 1. Compute moments for all source elements, save in momBuf 2. For each target, interpolate moments (den, vel, tau) (10 moments for 3D and 6 moments for 2D) 3. calculate fEq and use it to calculate high order moments 4. convert moments to PDF This routine is used by acoustic quadratic interpolation.

Read more…
fillFinerGhostsFromMe_quad_feq_fneq mus_interpolate_quadratic_module Subroutine

Fill fine ghost from coarse fluid by quadratic interpolation for D2Q9 stencil. 1. Compute moments for all source elements, save in momBuf 2. For each target, interpolate moments (den, vel, tau) (10 moments for 3D and 6 moments for 2D) 3. calculate fEq and use it to calculate high order moments 4. convert moments to PDF This routine is used by acoustic quadratic interpolation.

Read more…
fillFinerGhostsFromMe_quadLES_feq_fneq mus_interpolate_quadratic_module Subroutine

Fill fine ghost from coarse fluid by quadratic interpolation for D2Q9 stencil. 1. Compute moments for all source elements, save in momBuf 2. For each target, interpolate moments (den, vel, tau) (10 moments for 3D and 6 moments for 2D) 3. calculate fEq and use it to calculate high order moments 4. convert moments to PDF This routine is used by acoustic quadratic interpolation.

Read more…
fillFinerGhostsFromMe_weighAvg2D_feq_fneq mus_interpolate_average_module Subroutine

Linear interpolation of ghostFromFiner 1. Calculate Equilibrium and nonEquilibrium 2. Compute scaling factor 3. calculate target: Eq + Scale * nonEquilibrium

Read more…
fillFinerGhostsFromMe_weighAvg_feq_fneq mus_interpolate_average_module Subroutine

Linear interpolation of ghostFromFiner 1. Calculate Equilibrium and nonEquilibrium 2. Compute scaling factor 3. calculate target: Eq + Scale * nonEquilibrium

Read more…
fillFinerGhostsFromMe_weighAvgLES_feq_fneq mus_interpolate_average_module Subroutine

Linear interpolation of ghostFromFiner 1. Calculate Equilibrium and nonEquilibrium 2. Compute scaling factor 3. calculate target: Eq + Scale * nonEquilibrium

Read more…
fillHelperElementsCoarseToFine mus_flow_module Subroutine

Recursively fill all the helper elements (i.e. ghost, halo) with valid information from the fluid elements.

Read more…
fillHelperElementsFineToCoarse mus_flow_module Subroutine

Recursively fill all the helper elements (i.e. ghost, halo) with valid information from the fluid elements.

Read more…
fillMyGhostsFromFiner_avg2D_feq_fneq mus_interpolate_average_module Subroutine

Fill coarse target ghost from fine source fluid by average interpolation. 1. Calculate Equilibrium and nonEquilibrium 2. Compute scaling factor 3. calculate target: Eq + Scale * nonEquilibrium

Read more…
fillMyGhostsFromFiner_avg_feq_fneq mus_interpolate_average_module Subroutine

Average interpolation of ghostFromFiner The interpolation procedure used in this routine is:\n 1. Calculate Equilibrium and nonEquilibrium 2. Compute scaling factor 3. calculate target: Eq + Scale * nonEquilibrium

Read more…
fillMyGhostsFromFiner_avgLES_feq_fneq mus_interpolate_average_module Subroutine

Average interpolation of ghostFromFiner The interpolation procedure used in this routine is:\n 1. Calculate Equilibrium and nonEquilibrium 2. Compute scaling factor 3. calculate target: Eq + Scale * nonEquilibrium

Read more…
finalize_BClist mus_construction_module Subroutine
find_possIntpOrderAndUpdateMySources mus_interpolate_module Subroutine

Find maximum possible interpolation order which can be used for fillFinerFromMe by comparing nFoundSources with nMaxSources of different interpolation order starting from interpolation order defined by user

fixedPoint_method mus_turb_wallFunc_module Function

This routine computes friction velocity from wall model profile using fixed-point iterative method

fricVel_Schmitt mus_turb_wallFunc_module Subroutine

This routine computes friction velocity from Schmitt wall model.

get_auxTime mus_timer_module Interface
get_auxTime_atLevel mus_timer_module Function
get_auxTime_total mus_timer_module Function
get_bcBufferRatio mus_timer_module Interface
get_bcBufferRatio_atLevel mus_timer_module Function
get_bcBufferRatio_total mus_timer_module Function
get_bcBufferTime mus_timer_module Interface
get_bcBufferTime_atLevel mus_timer_module Function
get_bcBufferTime_total mus_timer_module Function
get_boundaryRatio mus_timer_module Function
get_boundaryTime mus_timer_module Interface
get_boundaryTime_byID mus_timer_module Function
get_boundaryTime_total mus_timer_module Function
get_communicateRatio mus_timer_module Function
get_communicateTime mus_timer_module Function
get_computeRatio mus_timer_module Interface
get_computeRatio_atLevel mus_timer_module Function
get_computeRatio_total mus_timer_module Function
get_computeTime mus_timer_module Interface
get_computeTime_atLevel mus_timer_module Function
get_computeTime_total mus_timer_module Function
get_d_uPlus_d_uTau mus_wall_function_musker_module Function

function to get the derivative of uPlus with respect to uTau

get_d_uPlus_d_uTau mus_wall_function_reichardt_module Function

function to get the derivative of uPlus with respect to uTau

get_d_uPlus_d_uTau mus_wall_function_schmitt_module Function

function to get the derivative of uPlus with respect to uTau

get_d_uPlus_d_uTau_interface mus_wall_function_abstract_module Interface
get_intpFromCoarserRatio mus_timer_module Interface
get_intpFromCoarserRatio_atLevel mus_timer_module Function
get_intpFromCoarserRatio_total mus_timer_module Function
get_intpFromCoarserTime mus_timer_module Interface
get_intpFromCoarserTime_atLevel mus_timer_module Function
get_intpFromCoarserTime_total mus_timer_module Function
get_intpFromFinerRatio mus_timer_module Interface
get_intpFromFinerRatio_atLevel mus_timer_module Function
get_intpFromFinerRatio_total mus_timer_module Function
get_intpFromFinerTime mus_timer_module Interface
get_intpFromFinerTime_atLevel mus_timer_module Function
get_intpFromFinerTime_total mus_timer_module Function
get_intpRatio mus_timer_module Function
get_intpTime mus_timer_module Function
get_kineticEnergy_from_vel_dens_compressible mus_scheme_derived_quantities_module Function

function pointer to get kineticEnergy from vel and density for any stencil

get_kineticEnergy_from_vel_dens_incompressible mus_scheme_derived_quantities_module Function

function pointer to get kineticEnergy from vel and density for any stencil

get_mainLoopTime mus_timer_module Function
get_moment mus_moments_module Function

Calculate the moment of a centain order The moment of a distribution is defined as:\n The fucntion argument expX is array of size 3, which contains the values of \f$p, q, r\f$

get_momentum_from_vel_dens_compressible mus_scheme_derived_quantities_module Function

function pointer to get momentum from vel and density for any stencil

get_momentum_from_vel_dens_incompressible mus_scheme_derived_quantities_module Function

function pointer to get momentum from vel and density for any stencil

get_momentVector mus_moments_module Function

get the moment vector to calculate the moment from the pdf

get_pdfEq_compressible mus_scheme_derived_quantities_module Function

function pointer to get pdf equilibrium from vel and density along a

get_pdfEq_compressible_iDir mus_scheme_derived_quantities_module Function

function pointer to get pdf equilibrium from vel and density along a

get_pdfEq_d2q9 mus_scheme_derived_quantities_module Function

This function computes the equilibrium pdf from velocity

get_pdfEq_d3q19 mus_scheme_derived_quantities_module Function

This function computes the equilibrium pdf from velocity

get_pdfEq_d3q27 mus_scheme_derived_quantities_module Function

This function computes the equilibrium pdf from velocity

get_pdfEq_incomp_d2q9 mus_scheme_derived_quantities_module Function

This function computes the incompressible equilibrium pdf from velocity

get_pdfEq_incomp_d3q19 mus_scheme_derived_quantities_module Function

This function computes the incompressible equilibrium pdf from velocity

get_pdfEq_incomp_d3q27 mus_scheme_derived_quantities_module Function

This function computes the incompressible equilibrium pdf from velocity

get_pdfEq_incompressible mus_scheme_derived_quantities_module Function

function pointer to get pdf equilibrium from vel and density along a

get_pdfEq_incompressible_iDir mus_scheme_derived_quantities_module Function

function pointer to get pdf equilibrium from vel and density along a

get_relaxTime mus_timer_module Interface
get_relaxTime_atLevel mus_timer_module Function
get_relaxTime_total mus_timer_module Function
get_rho0Inv_compressible mus_scheme_derived_quantities_module Function

function pointer to get kineticEnergy from vel and density for any stencil

get_rho0Inv_incompressible mus_scheme_derived_quantities_module Function

function pointer to get kineticEnergy from vel and density for any stencil

get_sigma_d2q9 mus_scheme_derived_quantities_module Function

This function computes the sigma vector necessary to get the

get_sigma_d3q19 mus_scheme_derived_quantities_module Function

This function computes the sigma vector necessary to get the

get_sigma_d3q27 mus_scheme_derived_quantities_module Function

This function computes the sigma vector necessary to get the

get_stageRatio mus_timer_module Function
get_stageTime mus_timer_module Function
get_uPlus mus_wall_function_musker_module Function

function to get uPlus

get_uPlus mus_wall_function_reichardt_module Function

function to get uPlus

get_uPlus mus_wall_function_schmitt_module Function

function to get uPlus

get_uPlus_interface mus_wall_function_abstract_module Interface
get_uTau_logLayer mus_wall_function_schmitt_module Function
get_uTau_subVisousLayer mus_wall_function_schmitt_module Function
get_vel_from_pdf_compressible mus_scheme_derived_quantities_module Function

function pointer to get pdf equilibrium from vel and density for any stencil

get_vel_from_pdf_compressible_vectorized mus_scheme_derived_quantities_module Function

function pointer to get pdf equilibrium from vel and density for any stencil

get_vel_from_pdf_d2q9 mus_scheme_derived_quantities_module Function

function pointer to get pdf equilibrium from vel and density for d2q9 stencil

get_vel_from_pdf_d2q9_incompressible mus_scheme_derived_quantities_module Function

function pointer to get pdf equilibrium from vel and density for d2q9 stencil

get_vel_from_pdf_d2q9_vectorized mus_scheme_derived_quantities_module Function

function pointer to get pdf equilibrium from vel and density for any stencil

get_vel_from_pdf_d2q9_vectorized_incompressible mus_scheme_derived_quantities_module Function

function pointer to get pdf equilibrium from vel and density for any stencil

get_vel_from_pdf_d3q19 mus_scheme_derived_quantities_module Function

function pointer to get pdf equilibrium from vel and density for d3q19 stencil

get_vel_from_pdf_d3q19_incompressible mus_scheme_derived_quantities_module Function

function pointer to get pdf equilibrium from vel and density for d3q19 stencil

get_vel_from_pdf_d3q19_vectorized mus_scheme_derived_quantities_module Function

function pointer to get pdf equilibrium from vel and density for any stencil

get_vel_from_pdf_d3q19_vectorized_incompressible mus_scheme_derived_quantities_module Function

function pointer to get pdf equilibrium from vel and density for any stencil

get_vel_from_pdf_d3q27 mus_scheme_derived_quantities_module Function

function pointer to get pdf equilibrium from vel and density for d3q27 stencil

get_vel_from_pdf_d3q27_incompressible mus_scheme_derived_quantities_module Function

function pointer to get pdf equilibrium from vel and density for d3q27 stencil

get_vel_from_pdf_d3q27_vectorized mus_scheme_derived_quantities_module Function

function pointer to get pdf equilibrium from vel and density for any stencil

get_vel_from_pdf_d3q27_vectorized_incompressible mus_scheme_derived_quantities_module Function

function pointer to get pdf equilibrium from vel and density for any stencil

get_vel_from_pdf_incompressible mus_scheme_derived_quantities_module Function

function pointer to get pdf equilibrium from vel and density for any stencil

get_vel_from_pdf_incompressible_vectorized mus_scheme_derived_quantities_module Function

function pointer to get pdf equilibrium from vel and density for any stencil

getConversionFac mus_solSpecHelpers_module Function

Get the conversion factor variable from physics table from a given solver specific character handle.

getDensity mus_derivedQuantities_module2 Interface
getDensity_forElemFromState mus_derivedQuantities_module2 Function

Calculate the density of a given element number with the given state vector (sum up all values)

getDensity_forPdfSubset mus_derivedQuantities_module2 Function

Calculate the density of a given subset of pdfs vector (sum up all values)

getEqByDensVel mus_derivedQuantities_module2 Function

Calculate the equilibrium distribution function in all directions

Read more…
getEquilibrium mus_derivedQuantities_module2 Interface
getEquilibrium_forElemfromState mus_derivedQuantities_module2 Function

Calculate the equilibrium distribution function in all directions

Read more…
getEquilibrium_forPdfSubset mus_derivedQuantities_module2 Function

Calculate the equilibrium distribution function in all directions

Read more…
getEquilibriumIncomp mus_derivedQuantities_module2 Function

Calculate the equilibrium distribution function in all directions This is the incompressible formulation with reference density rho0

Read more…
getFieldPrefixes mus_solSpecHelpers_module Function

Get the right field prefixes from a given solver specific character handle.

getFieldVariable mus_solSpecHelpers_module Interface
getFieldVariable_array mus_solSpecHelpers_module Function

Get the field variable name for given field type from a given solver specific character handle.

getFieldVariable_scalar mus_solSpecHelpers_module Function

Get the field variable name for given field type from a given solver specific character handle.

getGradRhoU3_1D mus_gradData_module Function

This function computes gradient of rho * velocity^3 from gradient, density and veleocity data. Just derivatives u_x, v_y and w_z. Gradient is computed using central difference. if an element has an boundary then neighbor refers to current element then forward difference is used.

getGradRhoU3_2D mus_gradData_module Function

This function computes gradient of rho * velocity^3 from gradient, density and veleocity data. Just derivatives u_x, v_y and w_z. Gradient is computed using central difference. if an element has an boundary then neighbor refers to current element then forward difference is used.

getGradRhoU3_3D mus_gradData_module Function

This function computes gradient of rho * velocity^3 from gradient, density and veleocity data. Just derivatives u_x, v_y and w_z. Gradient is computed using central difference. if an element has an boundary then neighbor refers to current element then forward difference is used.

getGradRhoUVZ_3D mus_gradData_module Function

This function computes gradient of rho * velocity^3 from gradient, density and veleocity data. Just derivatives u_x, v_y and w_z. Gradient is computed using central difference. if an element has an boundary then neighbor refers to current element then forward difference is used.

getGradU_1D mus_gradData_module Function

This function computes gradient of velocity from gradient and veleocity data. Gradient is computed using central difference. if an element has an boundary then neighbor refers to current element then forward difference is used

getGradU_2D mus_gradData_module Function

This function computes gradient of velocity from gradient and veleocity data. Gradient is computed using central difference. if an element has an boundary then neighbor refers to current element then forward difference is used

getGradU_3D mus_gradData_module Function

This function computes gradient of velocity from gradient and veleocity data. Gradient is computed using central difference. if an element has an boundary then neighbor refers to current element then forward difference is used

getGradXXU_1D mus_gradData_module Function

This function computes gradient of velocity from gradient and veleocity data. Gradient is computed using central difference. if an element has an boundary then neighbor refers to current element then forward difference is used

getGradXXU_2D mus_gradData_module Function

This function computes gradient of velocity from gradient and veleocity data. Gradient is computed using central difference. if an element has an boundary then neighbor refers to current element then forward difference is used

getGradXXU_3D mus_gradData_module Function

This function computes gradient of velocity from gradient and veleocity data. Gradient is computed using central difference. if an element has an boundary then neighbor refers to current element then forward difference is used

getHermitepolynomials mus_hrrInit_module Subroutine

This function computes Hermite polinomial. It gives in output minimum

getHermitepolynomials_D3Q19 mus_hrrInit_module Subroutine

This function computes Hermite polinomial. It gives in output minimum

getIdentifyChar mus_solSpecHelpers_module Function

Get a character from the identify table using a given solver specific character handle and a given key word.

getNEq_acoustic mus_derivedQuantities_module2 Function

Setting the non-equilibrium part based on the acoustic scaling

Read more…
getNEq_diffusive mus_derivedQuantities_module2 Function

Calculate the non-equilibrium part of pdf from strain rate tensor based on the diffusive scaling

Read more…
getNFields mus_solSpecHelpers_module Function

Get the number of fields from a given solver specific character handle.

getNonEqFac_intp mus_derivedQuantities_module2 Function

Calculate the conversion factor to convert nonEq moments between fine and coarser.

getNonEqFac_intp_coarse_to_fine mus_derivedQuantities_module2 Function

Calculate the conversion factor to convert nonEq pdfs from coarse to fine.

getNonEqFac_intp_fine_to_coarse mus_derivedQuantities_module2 Function

Calculate the conversion factor to convert nonEq pdfs from fine to coarse.

getShearRate mus_derivedQuantities_module2 Function

Calculate the Shear Rate

Read more…
getVariable_FromTable mus_solSpecHelpers_module Function

Get the value of variable inside the table name 'key' in scheme @note Todo extent it for vectors

getVelocity mus_derivedQuantities_module2 Interface
getVelocity_forElemFromState_noForce mus_derivedQuantities_module2 Function

Calculate the velocity in all 3 directions from the element indicated (elem), reading the pdf (state information) from the state array. state array includes all the pdfs of all elements. The access to the state array has to be done via the generic access macro IDX, as we want to access post-collision values.

getVelocity_forPdfSubset mus_derivedQuantities_module2 Function

Calculate the velocity in all 3 directions from a subset given, ordered according to the stencil

getVelocity_forPdfSubset_incomp mus_derivedQuantities_module2 Function

Calculate the velocity in all 3 directions from a subset given, ordered according to the stencil

getVelocity_incomp mus_derivedQuantities_module2 Interface
getWeights mus_solSpecHelpers_module Function

Get the the weights of a used stencil from a given solver specific character handle.

getWSS mus_derQuan_module Function

Calculate wss from shear stress (tau) tau: x, y, z, xy, yz, xz

HRR_Correction_d2q9 mus_hrrInit_module Subroutine
HRR_Correction_d3q19 mus_hrrInit_module Subroutine
HRR_Correction_d3q27 mus_hrrInit_module Subroutine
init_advRel mus_flow_module Subroutine

Choose the relaxation model

init_boundary_single mus_bc_general_module Subroutine

This subroutine sets the right boundary conditions for the different boundaries.

Read more…
init_cxDirWeightedAvg mus_interpolate_header_module Function

Initialize stencil for weighted average interpolation

init_enrtl_loc mus_eNRTL_module Interface

This function initialize eNRTL model by loading liquid mixture property from filename

init_intpArraysPerLevel mus_interpolate_module Subroutine
init_levelBuffers mus_construction_module Subroutine

Initialize the communication buffers for a single level

init_momentsBC mus_bc_general_module Subroutine

Initialize the values required for the moments BC

init_nrbc mus_bc_general_module Subroutine

Initialize the values required for the characteristic boundary conditions

Read more…
init_qVals mus_bc_general_module Subroutine

assign qVal to corresponding BC and level-wise if qVal not provided by seeder. qVal from seeder are assigned in assignBCList in mus_construction_module, So set qVal from config only when it is not provided by seeder.

init_recvBuffers mus_construction_module Subroutine

Create the communication buffers

Read more…
init_sendBuffers mus_construction_module Subroutine

Create the communication buffers

Read more…
init_transformation_matrix_fluid mus_moments_module Subroutine

Initialize Moments transformation matrix for LBM compressible and incompressible fluid model. This matrix must be consistent with the relaxation matrix used in compute kernel and interpolation routines

init_transformation_matrix_MS mus_moments_module Subroutine

Intialize the moment transformation matrix for multispecies. This matrix must be consistent with relaxation matrix used for multispecies MRT collision routines

inlet_nrbc mus_bc_fluid_module Subroutine

Characteristic-based non-reflective inlet boundary conditions

Read more…
inlet_nrbc_incomp mus_bc_fluid_module Subroutine

Characteristic-based non-reflective inlet boundary conditions for incompressible flows

Read more…
inlet_pasScal mus_bc_passiveScalar_module Subroutine

Inlet boundary conditions for passive scalar transport (Flekkoy).

Read more…
interpolate_dump mus_interpolate_header_module Subroutine

Dump interpolation method to logUnit

kpc_i_bg mus_compute_cumulant_module Function

Back to central moment This follows equations 57-59 in cumulent paper (Geier .et al 2017)

kpc_ij_g mus_compute_cumulant_module Function

Back to central moment This follows equations 60-62 in cumulent paper (Geier .et al 2017)

kpc_ijk mus_compute_cumulant_module Function

Back to central moment This follows equations 63-65 in cumulent paper (Geier .et al 2017)

kum_abg mus_compute_cumulant_module Function

Calculating central moment This follows equations 12-14 in cumulent paper (Geier .et al 2017)

kum_i_bg mus_compute_cumulant_module Function

Calculating central moment This follows equations 9-11 in cumulent paper (Geier .et al 2017)

kum_ij_g mus_compute_cumulant_module Function

Calculating central moment This follows equations 6-8 in cumulent paper (Geier .et al 2017)

load_iterativeMethod mus_turb_wallFunc_module Subroutine

Load the iterativeMethod to use in the turbulent wall model from the user configuration.

load_relaxation_header mus_scheme_header_module Subroutine

Load relaxation options from a table

load_turbChanForce mus_source_type_module Subroutine

Load shape, bulk velocity and height for turbulent channel force

load_wall_function mus_turb_wallFunc_module Subroutine

Load the iterativeMethod to use in the turbulent wall model from the user configuration.

mfr_bounceback mus_bc_fluid_module Subroutine

Inlet Velocity Bounce Back boundary condition with mass flow rate as input

Read more…
mfr_eq mus_bc_fluid_module Subroutine

Inlet Velocity Equilibrium type boundary conditions with mass flow rate as input

Read more…
moleDens_neumann mus_bc_nernstPlanck_module Subroutine

No comment yet!

Read more…
moleDens_neumann_curved mus_bc_nernstPlanck_module Subroutine

No comment yet!

Read more…
moleDens_nonEqExpol mus_bc_nernstPlanck_module Subroutine

No comment yet!

Read more…
moleDens_nonEqExpol_curved mus_bc_nernstPlanck_module Subroutine

No comment yet!

Read more…
moments_inflow mus_bc_fluid_experimental_module Subroutine

Moment based velocity boundary condition from Sam Bennent PhD thesis "A Lattice Boltzmann Model for Diffusion of Binary Gas Mixtures"

Read more…
moments_outflow mus_bc_fluid_experimental_module Subroutine

Moment based velocity boundary condition from Sam Bennent PhD thesis "A Lattice Boltzmann Model for Diffusion of Binary Gas Mixtures"

Read more…
moments_wall mus_bc_fluid_module Subroutine

Moment based wall boundary condition from Sam Bennent PhD thesis "A Lattice Boltzmann Model for Diffusion of Binary Gas Mixtures" Usage

Read more…
momentumFromMacroLSE mus_derQuanMSLiquid_module Function

derive untransformed pdf velocity of species by solving system of equations of nSpecies

momentumFromMacroLSE_WTDF mus_derQuanMSLiquid_module Function

derive untransformed pdf velocity of species by solving system of equations of nSpecies

mrt_advRel_d3q19f3_MSLiquid mus_MSLiquid_module Subroutine

Optimized Advection relaxation routine for the multispecies mrt model for d3q19 with 3 species

Read more…
mrt_advRel_d3q19f3_MSLiquid_WTDF mus_MSLiquid_module Subroutine

Optimized Advection relaxation routine for the multispecies mrt model for d3q19 with 3 species with thermodynamic factor

Read more…
mrt_advRel_MSLiquid_generic mus_MSLiquid_module Subroutine

Unoptimized Advection relaxation routine for the multispecies BGK model

Read more…
mrt_advRel_MSLiquid_generic_WTDF mus_MSLiquid_module Subroutine

Unoptimized Advection relaxation routine for the multispecies BGK model with thermodynamic factors in Maxwell-Stefan formulation

Read more…
mrt_bgk mus_mrtRelaxation_module Function

set all relaxation parameter to same omega, results in bgk collision

mrt_d2q9 mus_mrtRelaxation_module Function

This function returns mrt relaxation diagonal matrix for d2q9 layout Parameters are taken from: Lallemand, P., & Luo, L. (2000). Theory of the lattice boltzmann method: dispersion, dissipation, isotropy, galilean invariance, and stability. Physical Review. E, Statistical Physics, Plasmas, Fluids, and Related Interdisciplinary Topics, 61(6 Pt A), 6546–62.

Read more…
mrt_d2q9_incomp mus_mrtRelaxation_module Function

This function returns mrt relaxation diagonal matrix for d2q9 layout Parameters are taken from: Lallemand, P., & Luo, L. (2000). Theory of the lattice boltzmann method: dispersion, dissipation, isotropy, galilean invariance, and stability. Physical Review. E, Statistical Physics, Plasmas, Fluids, and Related Interdisciplinary Topics, 61(6 Pt A), 6546–62.

Read more…
mrt_d3q15 mus_mrtRelaxation_module Function

This function returns mrt relaxation diagonal matrix for d3q15 layout Parameters are taken from: D’Humières, D., Ginzburg, I., Krafczyk, M., Lallemand, P., & Luo, L.-S. (2002). Multiple-relaxation-time lattice Boltzmann models in three dimensions. Philosophical Transactions. Series A, Mathematical, Physical, and Engineering Sciences, 360(1792), 437–51.

mrt_d3q19 mus_mrtRelaxation_module Function

This function returns mrt relaxation diagonal matrix for d3q19 layout Parameters are taken from: D’Humières, D., Ginzburg, I., Krafczyk, M., Lallemand, P., & Luo, L.-S. (2002). Multiple-relaxation-time lattice Boltzmann models in three dimensions. Philosophical Transactions. Series A, Mathematical, Physical, and Engineering Sciences, 360(1792), 437–51.

mrt_d3q27 mus_mrtRelaxation_module Function

This function returns mrt relaxation diagonal matrix for d3q27 layout

mus_abortCriteria_load mus_abortCriteria_module Subroutine

Loading Musubi specific abort criteria from the abort_criteria table.

Read more…
mus_access_auxFieldVar_forElement mus_auxFieldVar_module Subroutine

Return the solver aux variable for a given set of elements

Read more…
mus_access_state_forElement mus_stateVar_module Subroutine

Return the solver state variable for a given set of elements

Read more…
mus_access_stateFetch_forElement mus_stateVar_module Subroutine

Return the solver state variable for a given set of elements by using FETCH macro for nNext

Read more…
mus_access_stateFetch_now_forElement mus_stateVar_module Subroutine

Return the solver state variable for a given set of elements by using FETCH macro for nNow

Read more…
mus_accessVar_setupIndices mus_stateVar_module Subroutine

This routine takes points coordinates, stores them in the method_data and return indices where points are located in the growing array of points or values ( sometimes we do not need to store the points ) It is need to setup points for every variable. Points will be provided by boundaries or sources depends on what uses the variable. This points do not change with time . This indices will be stored in corresponding boundary or source to evaluate a value on that point later using tem_varSys_proc_getValOfIndex.

mus_adapt_refine mus_mesh_adaptation_module Subroutine

Wrap up the routines required for dynamic load balancing

mus_add_BcghostElem mus_construction_module Subroutine
mus_add_internal_source_var mus_source_var_module Subroutine

Routine load musubi source terms for given key. key is glob_source or source

mus_addDynSponFldToAuxField_fluid mus_auxFieldVar_module Subroutine

This routine add sponge density and velocity field to density and velocity in auxField. Density and velocity in far field are computed by time average.

Read more…
mus_addElectricToAuxField_MSL mus_auxFieldVar_module Subroutine

This routine add electric force to momentum in auxField for multispecies liquid model Refer to Appendix in PhD Thesis of K. Masilamani "Coupled Simulation Framework to Simulate Electrodialysis Process for Seawater Desalination"

mus_addElectricToAuxField_MSL_WTDF mus_auxFieldVar_module Subroutine

This routine add electric force to momentum in auxField for multispecies liquid model with thermodynamic factor Refer to Appendix in PhD Thesis of K. Masilamani "Coupled Simulation Framework to Simulate Electrodialysis Process for Seawater Desalination"

mus_addForceToAuxField_fluid mus_auxFieldVar_module Subroutine

This routine add body force to velocity in auxField for weakly-compressible model.

mus_addForceToAuxField_fluidIncomp mus_auxFieldVar_module Subroutine

This routine add force to velocity in auxField for incompressible model

mus_addForceToAuxField_MSL mus_auxFieldVar_module Subroutine

This routine add body force to momentum in auxField for multispecies liquid model Refer to Appendix in PhD Thesis of K. Masilamani "Coupled Simulation Framework to Simulate Electrodialysis Process for Seawater Desalination"

mus_addForceToAuxField_MSL_WTDF mus_auxFieldVar_module Subroutine

This routine add body force to momentum in auxField for multispecies liquid model with thermodynamic factor Refer to Appendix in PhD Thesis of K. Masilamani "Coupled Simulation Framework to Simulate Electrodialysis Process for Seawater Desalination"

mus_addHRRCorrToAuxField_fluid_2D mus_auxFieldVar_module Subroutine

This routine add sponge density and velocity field to density and velocity in auxField. Density and velocity in far field are computed by time average.

Read more…
mus_addHRRCorrToAuxField_fluid_3D mus_auxFieldVar_module Subroutine

This routine add sponge density and velocity field to density and velocity in auxField. Density and velocity in far field are computed by time average.

Read more…
mus_addSponFldToAuxField_fluid mus_auxFieldVar_module Subroutine

This routine add sponge density and velocity field to density and velocity in auxField for weakly-compressible model. Reference: Jacob, J.; Sagaut, P. (2019): Solid wall and open boundary conditions in hybrid recursive regularized lattice Boltzmann method for compressible flows. In Physics of Fluids 31 (12), p. 126103.

mus_addSrcToAuxField_dummy mus_source_type_module Subroutine

Dummy routine for add source to auxField

mus_addSrcToAuxField_poisson mus_auxFieldVar_module Subroutine

This routine add source term with charge density in the Poisson equation to the potential. Refer to Appendix in PhD Thesis of K. Masilamani "Coupled Simulation Framework to Simulate Electrodialysis Process for Seawater Desalination"

mus_addTurbChanForceToAuxField_fluid mus_auxFieldVar_module Subroutine

This routine add dynamic force to velocity in auxField for weakly-compressible model for turbulent channel test case. Force definition: Force = rhou_tau^2/H + rho(u_bulk_ref-uX_bulk_avg)*u_bulk_ref/H Reference: 1) https://www.wias-berlin.de/people/john/ELECTRONIC_PAPERS/JR07.IJNMF.pdf 2) Haussmann, Marc; BARRETO, Alejandro CLARO; KOUYI, Gislain LIPEME; Rivière, Nicolas; Nirschl, Hermann; Krause, Mathias J. (2019): Large-eddy simulation coupled with wall models for turbulent channel flows at high Reynolds numbers with a lattice Boltzmann method — Application to Coriolis mass flowmeter. In Computers & Mathematics with Applications 78 (10), pp. 3285–3302. DOI: 10.1016/j.camwa.2019.04.033.

mus_advRel_kCFD_rBGK_vStd_lD3Q27 mus_d3q27_module Subroutine

Advection relaxation routine for the D3Q27 model with BGK with standard equilibrium function

Read more…
mus_advRel_kCFD_rBGK_vStdNoOpt_l mus_bgk_module Subroutine

Advection relaxation routine for the BGK model with an explicit calculation of all equilibrium quantities. Slow and simple. This routine should only be used for testing purposes

Read more…
mus_advRel_kCFD_rMRT_vStdNoOpt_l mus_mrt_d3q19_module Subroutine

Unoptimized explicit implementation

Read more…
mus_advRel_kCFD_rMRT_vStdNoOpt_lD3Q27 mus_mrt_d3q27_module Subroutine

Unoptimized explicit implementation

Read more…
mus_advRel_kFluid_rBGK_vBlock_lD3Q19 mus_d3q19_module Subroutine

No comment yet!

Read more…
mus_advRel_kFluid_rBGK_vImproved_lD2Q9 mus_d2q9_module Subroutine

Improved BGK model (with Galilean correction term) taken from Martin Geier cumulent paper 2015 Geier, M., Schönherr, M., Pasquali, A., & Krafczyk, M. (2015). The cumulant lattice Boltzmann equation in three dimensions : Theory and validation. Computers and Mathematics with Applications.

Read more…
mus_advRel_kFluid_rBGK_vImproved_lD3Q27 mus_d3q27_module Subroutine

Improved BGK model (with Galilean correction term) taken from Martin Geier cumulent paper 2015 Geier, M., Schönherr, M., Pasquali, A., & Krafczyk, M. (2015). The cumulant lattice Boltzmann equation in three dimensions : Theory and validation. Computers and Mathematics with Applications.

Read more…
mus_advRel_kFluid_rBGK_vStd_lD2Q9 mus_d2q9_module Subroutine

No comment yet!

Read more…
mus_advRel_kFluid_rBGK_vStd_lD3Q19 mus_d3q19_module Subroutine

Advection relaxation routine for the D3Q19 model with BGK.

Read more…
mus_advRel_kFluid_rMRT_vStd_lD2Q9 mus_d2q9_module Subroutine

Advection relaxation routine for the D2Q9 MRT model f( x+c, t+1 ) = f(x,t) - M^(-1)S( m - meq )

Read more…
mus_advRel_kFluid_rMRT_vStd_lD3Q19 mus_mrt_d3q19_module Subroutine

Advection relaxation routine for the MRT model. This routine has roughly 260 FLOPS per elements.

Read more…
mus_advRel_kFluid_rMRT_vStd_lD3Q27 mus_mrt_d3q27_module Subroutine

Semi-optimized explicit implementation

Read more…
mus_advRel_kFluid_rMRT_vStdNoOpt_lD3Q19 mus_mrt_d3q19_module Subroutine

No comment yet!

Read more…
mus_advRel_kFluid_rTRT_vStd_lD3Q19 mus_d3q19_module Subroutine

Advection relaxation routine for the D3Q19 model with TRT collision operator In TRT, there are two relaxation parameters one can choose. They have a relationship, which is so-called magic number: Lambda = ( 1/omegaP - 1/2 ) * ( 1/omegaN - 1/2 ) Different value of Lambda results different error: Lambda = 1/4 is the best stability for the LBE. As well, this number gives the solution for the steady-state case dependant only on the equilibirium funciton. Lambda = 1/12 removes the third-order advection error Lambda = 1/6 removes fourth-order diffusion errors Lambda = 3/16 gives exact location of bounce-back walls for the Poiseuille flow. omegaP is usually fixed by viscosity, another one is fixed through the above magic number combination.

Read more…
mus_advRel_kFluid_rTRT_vStd_lD3Q27 mus_d3q27_module Subroutine

No comment yet!

Read more…
mus_advRel_kFluidIncomp_rBGK_vStd_lD2Q9 mus_d2q9_module Subroutine

No comment yet!

Read more…
mus_advRel_kFluidIncomp_rBGK_vStd_lD3Q19 mus_d3q19_module Subroutine

Advection relaxation routine for the D3Q19 model with BGK for incompressible lbm model

Read more…
mus_advRel_kFluidIncomp_rMRT_vStd_lD2Q9 mus_d2q9_module Subroutine

Advection relaxation routine for the D2Q9 MRT model f( x+c, t+1 ) = f(x,t) - M^(-1)S( m - meq )

Read more…
mus_advRel_kFluidIncomp_rMRT_vStd_lD3Q19 mus_mrt_d3q19_module Subroutine

Advection relaxation routine for the MRT model. This routine has roughly 205 FLOPS per element.

Read more…
mus_advRel_kFluidIncomp_rMRT_vStd_lD3Q27 mus_mrt_d3q27_module Subroutine

Semi-optimized explicit implementation

Read more…
mus_advRel_kFluidIncomp_rMRT_vStdNoOpt_lD3Q19 mus_mrt_d3q19_module Subroutine

No comment yet!

Read more…
mus_advRel_kFluidIncomp_rTRT_vStd_lD3Q19 mus_d3q19_module Subroutine

Advection relaxation routine for the D3Q19 model with TRT collision operator.

Read more…
mus_advRel_kPS_rBGK_v1st_l mus_compute_passiveScalar_module Subroutine

Advection relaxation routine for the flekkoy diffusion model.

Read more…
mus_advRel_kPS_rBGK_v2nd_l mus_compute_passiveScalar_module Subroutine

Advection relaxation routine for the 2nd order diffusion model. A comparison to the previous flekkoy model can be found in Chopard, B., Falcone, J. & Latt, J. "The lattice Boltzmann advection -diffusion model revisited." Eur. Phys. J. Spec. Top. 171, 245–249 (2009). https://doi.org/10.1140/epjst/e2009-01035-5

Read more…
mus_advRel_kPS_rTRT_vStdNoOpt_l mus_compute_passiveScalar_module Subroutine

Advection relaxation routine for the TRT diffusion model.

Read more…
mus_alloc_bouzidi mus_bc_header_module Subroutine
mus_alloc_fieldBC mus_bc_header_module Subroutine
mus_append_auxField mus_variable_module Subroutine

Append auxiliary variables which are computed from state and stored in auxField array using calcAuxField function

mus_append_bcVar mus_bc_var_module Subroutine

This routine adds boundary variables for tracking

mus_append_derLiquidMixVar mus_derQuanMSLiquid_module Subroutine

Append mixture variables for multicomponent liquid models

mus_append_derMixVar_MS mus_derQuanMSLiquid_module Subroutine

Append mixture variables for multicomponent models

mus_append_derVar_fluid mus_derQuan_module Subroutine

subroutine to add derive variables for weakly compressible LBM (schemekind = 'fluid') to the varsys.

mus_append_derVar_fluidIncomp mus_derQuanIncomp_module Subroutine

subroutine to add derive variables for incompressible LBM (schemekind = 'fluid_incompressible') to the varsys.

mus_append_derVar_isotherm_acEq mus_derQuanIsothermAcEq_module Subroutine

subroutine to add derive variables for isothermal acoustic equations (schemekind = 'isotherm_acEq') to the varsys.

mus_append_derVar_lbmPS mus_derQuanPS_module Subroutine

subroutine to add derive variables for weakly compressible LBM (schemekind = 'passive_scalar') to the varsys. for passive scalar contains only one derive variable: density

mus_append_derVar_MSGas mus_derQuanMSGas_module Subroutine

subroutine to add derive variables for multispecies-liquid (schemekind = 'multispecies_gas') to the varsys.

mus_append_derVar_MSLiquid mus_derQuanMSLiquid_module Subroutine

subroutine to add derive variables for multispecies-liquid (schemekind = 'multispecies_liquid') to the varsys.

Read more…
mus_append_derVar_physics mus_derQuanPhysics_module Subroutine

subroutine to add derive variables for weakly compressible LBM (schemekind = 'lbm') to the varsys.

mus_append_derVar_poisson mus_derQuanPoisson_module Subroutine

subroutine to add derive variables for weakly compressible PB (schemekind = 'poisson') to the varsys. A Coupled Lattice Boltzmann Method to Solve Nernst-Planck Model for Simulating Electro-Osmotic flows author> Xuguang yang

mus_append_materialVar mus_material_var_module Subroutine

subroutine to add material variable

mus_append_readVarAsStateVar mus_variable_module Subroutine

Append variable read from restart file as state variables

mus_append_sourceVar mus_variable_module Subroutine

Build a variable system of all possible source terms for the given schemeKind

mus_append_stateVar mus_variable_module Subroutine

Append state variable depends on the scheme kind

Read more…
mus_append_turbVar mus_turbulence_var_module Subroutine

subroutine to add variables for turbulence model

mus_apply_sourceTerms mus_source_module Subroutine

Apply all source terms i.e field specific source and global source on all fields.

mus_applyForce_X mus_IBM_module Subroutine

This subroutine applies the force calculated to the eulerian elements.

mus_applySrc_dummy mus_source_type_module Subroutine

Dummy routine for apply source

mus_assign_calcAuxField_ptr mus_auxFieldVar_module Subroutine

This routine assign function pointer to compute auxField var

mus_assign_derived_functions_ptr mus_scheme_derived_quantities_module Function

This function assigns the pointers for the respective derived function in

mus_assign_GradCalculation_ptr mus_gradData_module Function

This function returns function pointer of nonEquilibrium scaling for interpolation according to scheme definition

mus_assign_mrt_ptr mus_mrtRelaxation_module Subroutine

This function returns mrt function pointer according to scheme definition. In Jonas Toelke paper (2006) about MRT, the following notions are used:\n s(a) = s(2) s(b) = s(3) s(c) = s(5) = s(7) = s(9) s(d) = s(11) = s(13 s(e) = s(17) = s(18) = s(19) s(w) = s(10) = s(12) = s(14) = s(15) = s(16) It is suggested that, for D3Q19, s(a) = s(b) = s(c) = s(d) = s(e) = max( s(w), -1.0 ) Notice that the collision matrix S used in this papar corresponds to -omega in BGK model, because it express the LB equation is slightly different way.

mus_assign_nNwtnVisc_ptr mus_nonNewtonian_module Subroutine

This routine assigns function pointer to compute non-Newtonian viscosity

mus_assign_turbVisc_ptr mus_turb_viscosity_module Subroutine

This routine assigns function pointer to compute turbulence viscosity based on turbulence model and scheme header definition

mus_auxFieldVar_forPoint mus_auxFieldVar_module Subroutine

Auxilary field variable for a given set of points using linear interpolation. Unlike mus_deriveVar_forPoint which does not consider ghost and halo elements, this routine considers them because auxField vars on ghost elements are interpolated and halo elements are exchanged. The interface has to comply to the abstract interface tem_varSys_proc_point.

mus_auxFieldVar_fromIndex mus_auxFieldVar_module Subroutine

Routine to get the actual value for a given array of indices. The indices belong to the grwarray of points storing levelwise in Pointdata%pntLvl(iLevel). Hence this routines takes the indeices as input, can refer to the pointData and evaluate the variable and returns the values

mus_balance mus_dynLoadBal_module Subroutine

This routine performs the load balancing for multilevel simulations. The weights are calculated on the basis of levelwise run time, which are then fed to sparta for calculation of splitting positions. Restart files are saved and the simulation is restarted with the newly distributed mesh

mus_banner mus_aux_module Subroutine

Initialize musubi solverHead and print musubi banner to screen

mus_BC_timing mus_tools_module Subroutine

Output the min and max time across all ranks, which are spent on each boundary condition.

mus_build_BCStencils mus_construction_module Subroutine

subroutine to find neighbours of element with individual (for each element) stencil definitions. Unique stencil label for boundary stencils are created with boundary label and stencil%cxDir therefore each stencil is limited to one boundary type

mus_build_IBMStencils mus_construction_module Subroutine

This routine build and append IBM stencils to scheme stencil array

mus_build_minBcID mus_geom_module Subroutine

This routine build minBcID for boundary elements, it is required if a element has more than one boundary in its directions. if a element has more than one boundary then use minBcID which depends on boundary order in seeder configuration

mus_build_posInProp mus_geom_module Subroutine

This routine builds mapping between elements in tree to to propery list

mus_build_varSys mus_variable_module Subroutine

Build global variable system for Musubi

mus_buildBuffIBM mus_IBM_module Subroutine
mus_calc_commAmount mus_statistics_module Subroutine

Calculate the number of links to be communicated

mus_calc_MS_DiffMatrix mus_eNRTL_module Interface
mus_calc_MS_DiffMatrix mus_eNRTL_module Interface
mus_calc_MS_DiffMatrix_single mus_eNRTL_module Subroutine

Dummy routine which sets diffusivity coeff matrix to diagonal matrix

mus_calc_MS_DiffMatrix_single mus_eNRTL_module Subroutine

This routine calculates Diffusivity coefficients matrix for given mole_frac of all species for single element

mus_calc_nElems mus_pdf_module Subroutine

Compute nElems for different types

mus_calc_thermFactor mus_eNRTL_module Interface
mus_calc_thermFactor mus_eNRTL_module Interface
mus_calc_thermFactor_single mus_eNRTL_module Subroutine

Dummy routine which sets thermodynamic factor matrix to diagonal matrix

mus_calc_thermFactor_single mus_eNRTL_module Subroutine

This routine calculates thermodynamic factor for given mole_frac of all species for single element

mus_calcAuxField_dummy mus_auxFieldVar_module Subroutine

Dummy routine for calcAuxField

mus_calcAuxField_fluid mus_auxFieldVar_module Subroutine

This routine compute auxFields density and velocity for compressible model for fluid and nGhostFromCoarser elements

mus_calcAuxField_fluid_d2q9 mus_auxFieldVar_module Subroutine

This routine compute auxFields density and velocity for compressible d2q9 model for fluid and nGhostFromCoarser elements

mus_calcAuxField_fluid_d3q19 mus_auxFieldVar_module Subroutine

This routine compute auxFields density and velocity for compressible d3q19 model for fluid and nGhostFromCoarser elements

mus_calcAuxField_fluid_d3q27 mus_auxFieldVar_module Subroutine

This routine compute auxFields density and velocity for compressible d3q27 model for fluid and nGhostFromCoarser elements

mus_calcAuxField_MS mus_auxFieldVar_module Subroutine

This routine compute auxField density and momentum for each species for multicomponent models. The momentum computed here is only momentum of transformed PDF. The momentum of original PDF is computed by solving linear equation system in compute kernel and the momentum in auxField is updated there.

mus_calcAuxField_nernst_planck mus_auxFieldVar_module Subroutine

This routine compute zeroth moment (mole density) from state for each species and store in auxField.

mus_calcAuxField_zerothMoment mus_auxFieldVar_module Subroutine

This routine compute zeroth moment from state and store in auxField. use this routine only for models which requires only zeroth-order moment as auxField

mus_calcAuxFieldAndExchange mus_auxField_module Subroutine

This routine compute auxField variable from pre-collision pdf and exchange halos

mus_calcBndForce mus_bndForce_module Subroutine

This routine computes force on boundary elements which are used to compute lift and drag coefficient on boundary

mus_calcBndForce_dummy mus_bndForce_module Subroutine

Dummy routine for calcBndForce

mus_calcBndForce_turbWall mus_bndForce_module Subroutine

This routine access bndForce from turbulent wall function boundary elements

mus_calcBndForce_wall mus_bndForce_module Subroutine

This routine computes bndForce on wall boundary elements

mus_calcBndForce_wall_libb mus_bndForce_module Subroutine

This routine computes bndForce on wall_libb boundary elements

mus_calcForce_X mus_IBM_module Subroutine

This subroutine fills the force array for the X (neighbors). (Inamuro paper: step 1, fill g_l(X))

Read more…
mus_calcOmegaFromVisc mus_relaxationParam_module Function

This function compute relaxation paramter omega from viscosity

mus_calculate_speed_of_sound mus_scheme_layout_module Function

Calculate lattice speed of sound for given stencil

mus_check_allWall mus_field_module Function

Check if a BC is wall or symmetry for all fields

mus_check_omegaKine mus_relaxationParam_module Subroutine

This routine checks whether omega is within the stability limit. If not it will terminate the simulation with error message. Using limits given in Tölke, J., Freudiger, S., & Krafczyk, M. (2006). An adaptive scheme using hierarchical grids for lattice Boltzmann multi-phase flow simulations. Computers & Fluids, 35(8–9), 820–830. For BGK: 2/3 < omega < 1.976 For MRT: 2/3 < omega < 1.999

mus_construct mus_construction_module Subroutine

Initialize Musubi data strucutres based on data provided by Treelm

Read more…
mus_construct_connectivity mus_connectivity_module Subroutine

Construct the propagation list for each element of 1st field.

Read more…
mus_corrForce_Xk mus_IBM_module Subroutine
mus_corrVel_X mus_IBM_module Subroutine

This subroutine corrects the velocity values according to the force on X (neighbors). (Inamuro paper: step 2, correct u_l(X))

Read more…
mus_create_funcStr mus_physics_module Subroutine

This routine creates musubi specific lua function to compute dx and dt.

mus_create_poss_srcVar mus_source_type_module Subroutine

Routine initialize possible source variable depends on scheme kind

mus_create_poss_transVar mus_transport_var_module Subroutine

Routine initialize possible transport variable depends on scheme kind

mus_createSrcElemInTreeForGetPoint mus_varSys_module Subroutine

This routine creates srcElemInTree in pointData. It is called all in getPoint routine when first time the get point routine in called.

mus_define_d1q3 mus_scheme_layout_module Subroutine

This subroutine sets the parameters for the predefined d2q9 stencil.

mus_define_d2q5 mus_scheme_layout_module Subroutine

This subroutine sets the parameters for the predefined d2q5 stencil.

mus_define_d2q9 mus_scheme_layout_module Subroutine

This subroutine sets the parameters for the predefined d2q9 stencil.

mus_define_d3q13 mus_scheme_layout_module Subroutine

This subroutine sets the parameters for the predefined d3q13 stencil.

mus_define_d3q19 mus_scheme_layout_module Subroutine

This subroutine sets the parameters for the predefined d3q19 stencil.

mus_define_d3q27 mus_scheme_layout_module Subroutine

This subroutine sets the parameters for the predefined d3q27 stencil.

mus_define_d3q6 mus_scheme_layout_module Subroutine

This subroutine sets the parameters for the predefined d3q6 layout%fStencil, used by the Flekkoy model of passive scalar transport.

mus_define_d3q7 mus_scheme_layout_module Subroutine

This subroutine sets the parameters for the predefined d3q7 stencil.

mus_define_layout mus_scheme_layout_module Subroutine

This routine defines layout for predefined stencils

mus_derEquilIsothermAcEq mus_derQuanIsothermAcEq_module Subroutine

Calculate the equlibrium of given elements with the given input state array.

Read more…
mus_derive_FromMacro_dummy mus_derVarPos_module Subroutine
mus_derive_FromPreColState_dummy mus_derVarPos_module Subroutine
mus_derive_FromState_dummy mus_derVarPos_module Subroutine
mus_derivedensity mus_derQuan_module Subroutine

Calculate the density of a given set of elements (sum up all links). This routine is used to compute density for all scheme kinds For multispecies, it can compute both species density and mixture density

Read more…
mus_deriveElectricField mus_derQuanPoisson_module Subroutine

Calculate the electric_field of a given pre-collision pdfs i.e fetch_pdf_now

Read more…
mus_deriveEquil mus_derQuan_module Subroutine

Calculate the equlibrium of given elements with the given input state array.

Read more…
mus_deriveMoleDensity mus_derQuanNernstPlanck_module Subroutine

Calculate the potential of a given set of pdfs of elements

Read more…
mus_deriveMoment mus_derQuan_module Subroutine

For 2D only!

Read more…
mus_deriveNonEquil mus_derQuan_module Subroutine

Calculate the Non-Equlibrium

mus_deriveStrainRate mus_derQuan_module Subroutine

Calculate the strain rate ( or rate of strain, or rate of deformation)

Read more…
mus_deriveVar_forPoint mus_varSys_module Subroutine

Derive variable for a given set of points using linear interpolation. This is a generic routine for any variable. Limitation: If neighbor is halo element then its not considered for interpolation, only the fluid (non-ghost) elements in the local process are used for interpolation.

Read more…
mus_derVar_intpOnPoint mus_varSys_module Subroutine
mus_derVelocityIsothermAcEq mus_derQuanIsothermAcEq_module Subroutine

Calculate the velocity of a given element number with the given input vector (sum up all values)

Read more…
mus_destroy_stencil mus_scheme_layout_module Subroutine

Destroy the stencil

mus_dump_levelDescIntp_nElems mus_interpolate_module Subroutine

This routine dumps global nElems in intpFromCoarser, intpFromFiner, sourcesFromCoarser ans sourcesFromFiner

mus_dump_moments mus_moments_module Subroutine

Dump moments matrix: toPDF and toMoment

mus_dumpData mus_aux_module Subroutine

This routine dumps tracking and restart when timeControl is active

mus_dumpWeights mus_weights_module Subroutine

Dump weights to a file.

mus_field_cleanup mus_field_module Subroutine

This routines act as a destructor for field type. Only allocatable arrays which are allocated in mus_construct routine are deallocated. KM: DO NOT DESTROY FIELD ARRAY AS IT CONTAINS ALL CONFIG INFO

mus_field_getSymmetricBCs mus_field_module Subroutine

This routine checks for the existence of symmetric boundaries and returns the boundary IDs which are defined as symmetry

mus_field_out_scal mus_field_module Subroutine

write single field into a lua file

mus_field_prop_out mus_field_prop_module Subroutine

write field prop into a lua file

mus_fieldBC_cleanup mus_bc_header_module Subroutine

This routines deallocates allocatables in field%bc boundary_type for dynamic load balancing

mus_fields_out mus_field_module Interface

Interface for dumping a single field or a set of fields in a file in lua format.

mus_fields_out_vec mus_field_module Subroutine

write array of fields into a lua file

mus_fillNeigh_surfData mus_IBM_module Subroutine

This routine builds the neighbor lists for Xk -> x (neigh_Xk) and x->Xk (neigh_x) as well as the send and receive buffers for the eulerian elements.

mus_finalize mus_program_module Subroutine

Do final check on check on total density, Close auxiliary stuff such as restart and the tracker, finalize treelm, dump timing and finialize mpi with fin_env

mus_finalize_layout mus_scheme_layout_module Subroutine

This routine finialize grwStencil by truncating stencil elem arrays and set stencil%nElems

mus_finishIBM mus_IBM_module Subroutine

This routine dumps the timings%timedat to disc

mus_fluid_cleanup mus_fluid_module Subroutine

This routines act as a destructor for fluid type

mus_fluid_dump mus_fluid_module Subroutine
mus_fluid_save2lua mus_fluid_module Subroutine

write fluid prop into a lua file

mus_free_IBMData mus_IBM_module Subroutine

This routine frees all temporary variables and destroys growing arrays as well as the communicators.

mus_generic_fromPDF_forElement mus_varSys_module Subroutine

This routine prepares the data for variable derivation or operators. It gathers all input variables from the variable system, calls the function with the actual calculation.

mus_generic_varFromPDF_fromIndex mus_varSys_module Subroutine

Routine to get the actual value for a given array of indices for musubi derive variables The indices belong to the grwarray of points storing levelwise in Pointdata%pntLvl(iLevel). Hence this routines takes the indeices as input, can refer to the pointData and evaluate the variable and returns the values

mus_geomIncr mus_geomIncr_module Subroutine

This subroutine checks for various conditions defined in the geomIncr table within the lua file, calculates the requested macroscpoic variables and then compares them against the specified threshold. Accordingly then solidification or fluidification of elements is performed.

mus_geomIncrHead_load mus_geomIncrHead_module Subroutine

Read all the necessary information for the geometry increase from the lua config file. This routine basically provides as a wrapper to the routine which reads single values

Read more…
mus_geomIncrHead_load_single mus_geomIncrHead_module Subroutine

Reads various parameters from the lua file defined for geometry increase This routine reads single values and is wrapped around in another function where it is called multiple times as required

mus_get_new_solver_ptr mus_varSys_module Function

Routine to get a pointer to a new instance of mus_varSys_solverData_type to be used as method data for a variable in the variable system.

Read more…
mus_get_points_fromBC mus_bc_general_module Subroutine

Get Surface points on boundary elements. For boundary state variable which are evaluated linkwise, extract surface points for each link and for non-link based variables project barycenter on the boundary surface. Return real coordinates on boundary surface and offset bit which encodes direction.

mus_get_timerHandles mus_timer_module Function

This function returns musubi modular variable mus_timerHandles to apesmate and deallocate mus_timerHandles level timers.

mus_getWeights mus_weights_module Subroutine

Calculate weights using timing from compute kernel, interpolation and boundary routines

Read more…
mus_hvs_config_load mus_hvs_config_module Subroutine

Read in LUA parameter file See http://www.lua.org for a reference on how to use Lua is a scripting language in itself which allows more complex parameter files including comments And load / create the mesh depending on the configuration

mus_hvs_construct mus_hvs_construction_module Subroutine

Initialize Musubi data strucutres based on data provided by Treelm

Read more…
mus_hvs_init_aux mus_hvs_aux_module Subroutine

Init auxiliary features such as interpolation boundaries, restart and the tracker

Read more…
mus_hvs_load_solverData mus_hvs_config_module Subroutine

This routines load solver data from config file except tracking

mus_IBM_buildSendRecv_Xk mus_IBM_module Subroutine

This subroutine builds the communication types for the lagrangian elements Xk.

mus_IBM_commNewPos mus_IBM_module Subroutine

This subroutine communicates all elements which just moved from the fluids to the halo elements.

mus_IBM_fillRecvPos_X mus_IBM_module Subroutine
mus_IBM_fillSendPos_X mus_IBM_module Subroutine
mus_IBM_getSurfVel mus_IBM_module Subroutine

This routine calculates the surface velocity for all local xk.

mus_IBM_prepareSendRecv_X mus_IBM_module Subroutine

This subroutine prepares the send and receive buffers for the eulerian elements by copying information from the send and receive buffers for the lagrangian elements.

mus_IBM_setParentIDs mus_IBM_module Subroutine

This subroutine sets the positions of the parent IDs in the level descriptor.

mus_IBMFinishBuff mus_IBM_module Subroutine

This routine finishes the buffers for Xk and X_pdf. This is moved to a seperate routine since both buffers depend on a local communication which should be done nearby the global synchronization point (mus_exchange)

mus_iMomVector mus_moments_module Function

The integer moment vector for a given cxDir and order.

Read more…
mus_inamuro_IBM mus_IBM_module Subroutine

This subroutine modifies the state vector according to the method described in the paper \a Lift generation by a two-dimensional symmetric flapping wing: immersed boundary-lattice Boltzmann simulations \a by Inamuro et al. @cite Ota:2012bx .

Read more…
mus_inamuroIni mus_IBM_module Subroutine

This subroutine fills the initial force, initial velocity, predef. velocity array for the surface points Xk as well as the velocity array for the neighbors.

Read more…
mus_init_absorbLayer mus_absorbLayer_module Subroutine

Initialize arrays to store time average density and velocity for dynamic absorbing layer. \todo KM: 20210301 Allocate only pressure or velocity depending on absorb_layer_inlet or absorb_layer_outlet

mus_init_advRel_fluid mus_initFluid_module Subroutine

Assigning compute kernel routine by scheme relaxation type for fluid kind.

mus_init_advRel_fluid_bgk mus_initFluid_module Subroutine

This routine assigns compute routine for bgk relaxation.

Read more…
mus_init_advRel_fluid_mrt mus_initFluid_module Subroutine

This routine assigns compute routine for mrt relaxation

Read more…
mus_init_advRel_fluid_trt mus_initFluid_module Subroutine

This routine assigns compute routine for trt relaxation

Read more…
mus_init_advRel_fluidIncomp mus_initFluidIncomp_module Subroutine

Initialize the relaxation model for lbm incompressible model

mus_init_advRel_fluidIncomp_bgk mus_initFluidIncomp_module Subroutine

This routine assigns compute routine for bgk relaxation

Read more…
mus_init_advRel_fluidIncomp_mrt mus_initFluidIncomp_module Subroutine

This routine assigns compute routine for mrt relaxation

Read more…
mus_init_advRel_isotherm_acEq mus_initIsothermAcEq_module Subroutine

Assigning compute kernel routine by scheme relaxation type for isotherm_acEq kind.

mus_init_advRel_lbm_ps mus_initLBMPS_module Subroutine

Initialize the relaxation model for lbm passive scalar scheme kind

mus_init_advRel_multispecies_gas mus_initMultispecies_module Subroutine

Initialize the relaxation model for multispecies gas model

mus_init_advRel_multispecies_liquid mus_initMultispecies_module Subroutine

Initialize the relaxation model for multispecies liquid model

mus_init_advRel_nernstPlanck mus_initNernstPlanck_module Subroutine

Initialize the relaxation model for lbm poisson equation

mus_init_advRel_PBLinear mus_initPoisson_module Subroutine

Initialize the relaxation model for lbm poisson equation

mus_init_advRel_PBnonLinear mus_initPoisson_module Subroutine

Initialize the relaxation model for lbm poisson equation

mus_init_advRel_Poisson mus_initPoisson_module Subroutine

Initialize the relaxation model for lbm poisson equation

mus_init_aux mus_aux_module Subroutine

Init auxiliary features such as interpolation boundaries, restart and the tracker

Read more…
mus_init_auxFieldArrays mus_auxField_module Subroutine

This routine initialize auxField var val array and communication buffers

mus_init_bc_elems mus_bc_header_module Subroutine
mus_init_bcTimer mus_timer_module Subroutine
mus_init_bndForce mus_bndForce_module Subroutine

This routine initialize bndForce array assign function pointer to calculate bndForce

mus_init_boundary mus_bc_general_module Subroutine

Check prerequisite for multi-species boundary conditions

mus_init_byIC mus_flow_module Subroutine

Initialize flow field by calling corresponding routine according to scheme kind.

mus_init_control mus_control_module Subroutine

This routines sets the function pointer to main control routine

Read more…
mus_init_eNRTL mus_eNRTL_module Function

Dummy function to init_enrtl

mus_init_eNRTL mus_eNRTL_module Function

This function loads property file using external c-function

mus_init_flow mus_flow_module Subroutine

Initialize flow field depends on read restart or initial condition

mus_init_fluid mus_fluid_module Subroutine

This routine initilizes fluid visocity and relaxation paramters for each level

mus_init_geomIncr mus_geomIncr_module Subroutine

This subroutine initializes the geometry increment.

mus_init_gradData mus_gradData_module Subroutine

This routine initialize gradData with direct neighbors in state and finite difference coefficients.

mus_init_hrrCorrection mus_source_module Subroutine

Initialize arrays to store time average density and velocity for dynamic hrrCorrection. \todo KM: 20210301 Allocate also for ghost cells!

mus_init_IBM mus_IBM_module Subroutine

This subroutine initializes the IBM data incl. reading the stl, unifying the coordinates, storing the connectivity, allocating the parentIDs array and initializing the stencil used.

mus_init_IBMData mus_IBM_module Subroutine

This subroutine initializes all arrays in the mus_IBM_tmpData_type.

mus_init_internalSource mus_source_module Subroutine

This routines does setup indices for given source within a field or global. Index are stored for points which source term is active

mus_init_interpolate mus_interpolate_module Subroutine

This subroutine initialzes the interpolation

Read more…
mus_init_isotherm_acEq mus_flow_module Subroutine

Initialize the isothermal acEq flow from density and velocity\n equilibrium pdf (fEq) is calculated from density and velocity

mus_init_latticeUnit mus_param_module Subroutine

This routine initialize lattice dx and dt

mus_init_layout mus_scheme_layout_module Subroutine

Initialize growing array of stencils

mus_init_levelDescIntpArrays mus_interpolate_module Subroutine

Initialize levelwise ghost and source list for interpolation

mus_init_levelTimer mus_timer_module Subroutine
mus_init_longBuffers mus_comm_module Subroutine

Wrapper around the actual communication, to avoid copy-in, copy-out by the Intel compiler. (At least the intel compiler on pigeon (v12.0) seems to do copying here, if a sub-array is passed to an assumed size dummy argument. Therefore we use this wrapping with an assumed shape dummy argument, so we can pass a complete field to the actual exchange which has an assumed size argument, without copying complete state field around, just for communication. Ugly, but it doesn't seem to have an impact on performance, and right it seems to be the most suitable solution.

Read more…
mus_init_mainTimer mus_timer_module Subroutine

Timers initialization routine for whatever

mus_init_moments mus_moments_module Subroutine

Initialize the moment space

mus_init_MSGas mus_flow_module Subroutine

Initialize the flow from calculated quantitites like density, velocity etc. for multispecies lbm

Read more…
mus_init_MSLiquid mus_flow_module Subroutine

Initialize the flow from calculated quantitites like density, velocity etc. for multispecies lbm

mus_init_nernst_planck mus_flow_module Subroutine

Initialize nernst planck from and .\n Equilibirium pdf (fEq) is calculated from and .

mus_init_passiveScalar mus_flow_module Subroutine

Initialize passive scalar from pressure and velocity.\n Equilibirium pdf (fEq) is calculated from pressure and velocity.

mus_init_pdf mus_flow_module Subroutine

Initialize the flow from pressure, velocity and strain rate.\n First equilibirium pdf (fEq) is calculated from pressure and velocity. Then non-equilibirium (fnEq) is calculated from strain rate. At last set the pdf of each element by sum up these two parts (fEq+fnEq).

mus_init_poisson mus_flow_module Subroutine

Initialize poisson lbm from potential Equilibirium pdf (fEq) is calculated from potential.

Read more…
mus_init_relaxParam mus_relaxationParam_module Subroutine

This routine initialize relaxation parameter

mus_init_scheme mus_scheme_module Subroutine

Initialize single scheme stencil and variable system

mus_init_sourceTerms mus_source_module Subroutine

This routine does set_params and setupIndices for all sources terms by gathering points to apply souce term before.

mus_init_tracker mus_tracking_module Subroutine

This routine initialize tracking subTree to remove empty tracking objects. On active tracking objects: Homogenize time control, write solver speific info for harvester output format and initialize output using tem_init_tracker

mus_init_transport_var mus_transport_var_module Subroutine

Initialize transport variable by calling setupIndices for every variable and store pntIndex

mus_init_turb_wallFunc mus_bc_general_module Subroutine

This routine allocates turbulent viscosity and friction velocity on boundary elements. It also initialize friction velocity from stream-wise velocity component on first neighbor in normal direction.

mus_init_turbChanForce mus_source_module Subroutine

Create subTree and store nElemsGlobal in all proc for turbulent channel force

mus_init_turbulenceData mus_turbulence_module Subroutine

This initialize turbulence data type which includes velocity array and communication buffer

mus_init_varSys_solverData mus_varSys_module Subroutine
mus_initAuxField mus_flow_module Subroutine

This routine initialize auxField variable from PDF values initialized by initial condition. AuxField is computed from state using SAVE access for fluid elements and interpolated for ghost elements

mus_initAuxFieldFluidAndExchange mus_auxField_module Subroutine

This routine initializes auxField for fluid elements using SAVE access on PDF initialized by IC

mus_initialize mus_program_module Subroutine

This routine load musubi configuration file and initialize construction flow, auxilary and main control routines

Read more…
mus_interpolate_linear2D_leastSq mus_interpolate_linear_module Function

Bilinear interpolation for a vector quantity phi

mus_interpolate_linear3D_leastSq mus_interpolate_linear_module Function

Trilinear interpolation for a vector quantity phi Each phi corresponds to each moment

mus_interpolate_out mus_interpolate_header_module Subroutine

Dump interpolation method to lua

mus_interpolate_quad2D_leastSq mus_interpolate_quadratic_module Function

Biquadratic interpolation for a vector quantity phi

mus_interpolate_quad3D_leastSq mus_interpolate_quadratic_module Function

Triquadratic interpolation for a vector quantity phi Each phi corresponds to each moment

mus_intp_error mus_interpolate_verify_module Subroutine

Determine the numerical error of the interpolated quantities to the given initial conditions

mus_intp_getPdfs_D3Q27 mus_d3q27_module Function

This function returns pdfs from state

mus_intp_getSrcElemPosInLevelDesc mus_connectivity_module Subroutine
mus_intp_getSrcElemPosinTree mus_connectivity_module Subroutine
mus_intp_update_depFromCoarser mus_interpolate_module Subroutine

The required source elements for ghost from coarser elements are identified in this routine. Moreover, the weights for each sources based on distance are calculated. \n

Read more…
mus_intp_update_depFromFiner mus_interpolate_module Subroutine

All sources (children) have been found in treelm, updated number of sources needed, based on nDims collect all source elements into sourceFromFiner assign ghost intp list. Currently only average interpolation is implemented for fillMineFromFiner

mus_intpAuxFieldCoarserAndExchange mus_auxField_module Subroutine

This routine interpolate auxField variable for ghostFromFiner and exchange halos

mus_intpAuxFieldFinerAndExchange mus_auxField_module Subroutine

This routine interpolate auxField variable for ghostFromCoarser and exchange halos

mus_intpVel_Xk mus_IBM_module Subroutine

This subroutine interpolates the velocity values using the velocity on Xk. (neighbors). (Inamuro paper: step 3, correct u_l(X_k))

Read more…
mus_load_absorbLayer mus_absorbLayer_module Subroutine

This routine load additional information for absorblayer

mus_load_bc mus_bc_header_module Subroutine

Read in the boundary conditions from the LUA parameter file.\n

mus_load_bc_data mus_geom_module Subroutine

This routine invokes the treelm routines to load the boundary conditions

mus_load_config mus_config_module Subroutine

Read in LUA parameter file See http://www.lua.org for a reference on how to use Lua is a scripting language in itself which allows more complex parameter files including comments And load / create the mesh depending on the configuration

mus_load_field_prop mus_field_prop_module Subroutine

load fluid properties like fluid and species table from lua file based on the scheme kind

mus_load_field_single mus_field_module Subroutine

load a single field table In includes: load field property load source variables load boundary defination load immersed boundary method load initial condition defination and its property

mus_load_fieldBaseInfos mus_field_module Subroutine

This routine returns nFields and field labels from config file. It is required to initialize variable system. labels are loaded only if field table is present else default is set to empty string.

mus_load_fields mus_field_module Subroutine

Subroutine to load the field table from the lua configuration file.

Read more…
mus_load_fluid mus_fluid_module Subroutine

Read in the fluid property from the LUA parameter file

Read more…
mus_load_geom mus_geom_module Subroutine

This routine load all geometry related datas like mesh, boundary and immersed_boundary. Restart is also loaded here because mesh is loaded in tem_load_restart if restart read is defined.

mus_load_IBM mus_IBM_module Subroutine

Load the IBM information from the lua config file.

Read more…
mus_load_IBM_single mus_IBM_module Subroutine

Load a single IBM table from the config file.

mus_load_interpolate mus_interpolate_header_module Subroutine

Read in the type of interpolation scheme

Read more…
mus_load_mixture mus_mixture_module Subroutine

This routine load mixture table from scheme table. Define either mass density or number density. If mass density is specified, number density can be computed at runtime or vice versa. @note Todo Currently, the simulation is initialized by density, extend it to initialize from mixture number density/volume fraction and mole fraction \verbatim mixture = { rho0 = 1.0, omega } \endverbatim

Read more…
mus_load_nernstPlanck mus_nernstPlanck_module Subroutine

load input to solve nernst_planck equation

mus_load_newLayout mus_scheme_layout_module Subroutine

load a new stencil definition from the lua file

Read more…
mus_load_param mus_param_module Subroutine

load global parameter from conf

Read more…
mus_load_physics mus_physics_module Subroutine

This routine loads the physics table from musubi config file

Read more…
mus_load_poisson mus_poisson_module Subroutine

load input to solve poisson equation

mus_load_poissonBoltzmann mus_poisson_module Subroutine

Load input to solve poisson boltzmann equation

mus_load_scheme mus_scheme_module Subroutine

load single scheme defined in lua file with or without scheme handle

Read more…
mus_load_scheme_header mus_scheme_header_module Subroutine

load scheme header info from lua file identify table or from scheme table or from config

Read more…
mus_load_source_var mus_source_type_module Subroutine

Routine load musubi source terms for given key. key is glob_source or source

mus_load_species mus_species_module Subroutine

this routines load species table from config file

Read more…
mus_load_transport_var mus_transport_var_module Subroutine

Routine load musubi transport variables

mus_load_turb_wallFunc mus_turb_wallFunc_module Subroutine

This routine loads wall model and nonlinear solver type for nonlinear equation

mus_load_turbulence mus_turbulence_module Subroutine

load turbulence table

mus_mixture_out mus_mixture_module Subroutine

This routine write mixture properties into lua file

mus_nernstPlanck_advRel_generic mus_compute_nernstPlanck_module Subroutine

Advection relaxation routine for the nernst planvk model with an explicit calculation of all equilibrium quantities. Slow and simple. This routine should only be used for testing purposes

Read more…
mus_nNwtn_CS_dump mus_nonNewtonian_module Subroutine

Dump nonNewtonian (CY) parameters to outUnit

mus_nNwtn_CS_load mus_nonNewtonian_module Subroutine

Read in the nonNewtonian Casson model parameters from Lua file

mus_nNwtn_CS_save mus_nonNewtonian_module Subroutine

write nonNewtonian Casson parameters into a lua file

mus_nNwtn_CY_dump mus_nonNewtonian_module Subroutine

Dump nonNewtonian (CY) parameters to outUnit

mus_nNwtn_CY_load mus_nonNewtonian_module Subroutine

Read in the nonNewtonian Carreau-Yasuda (CY) model parameters from Lua file

mus_nNwtn_CY_save mus_nonNewtonian_module Subroutine

write nonNewtonian (CY) parameters into a lua file

mus_nNwtn_dump2outUnit mus_nonNewtonian_module Subroutine

Dump nonNewtonian fluid parameters to outUnit

mus_nNwtn_load mus_nonNewtonian_module Subroutine

Read in the nonNewtonian table from Lua file and dump parameters to logUnit Specificly, this routine calls each model parameter loader.

mus_nNwtn_PL_dump mus_nonNewtonian_module Subroutine

Dump nonNewtonian Power Law (PL) parameters to outUnit

mus_nNwtn_PL_load mus_nonNewtonian_module Subroutine

Read in the nonNewtonian Power Law (PL) model parameters from Lua file

mus_nNwtn_PL_save mus_nonNewtonian_module Subroutine

write nonNewtonian Power Law (PL) parameters into a lua file

mus_nNwtn_save2lua mus_nonNewtonian_module Subroutine

write nonNewtonian fluid parameters into a lua file

mus_open_config mus_config_module Subroutine

This routine loads musubi specific lua function from string and musubi input configuration file

mus_opVar_gradU_forElement mus_operation_var_module Subroutine

This routine returns the velocity gradient from velocity in auxField

Read more…
mus_opVar_QCriterion_forElement mus_operation_var_module Subroutine

This routine computes Q-criterion from velocity in auxField. , where and S are asymmetric (vorticity tensor) and symmetric (rate of strain) part of velocity gradient. i.e and .

Read more…
mus_opVar_setupIndices mus_operation_var_module Subroutine
mus_opVar_vorticity_forElement mus_operation_var_module Subroutine

This routine computes vorticity from curl of velocity in auxField.

Read more…
mus_param_out mus_param_module Subroutine

This routine writes global parameter into solver specific string in lua format

mus_PBLinear_advRel_generic mus_compute_Poisson_module Subroutine

Advection relaxation routine for the linear poisson boltzmann equation with an explicit calculation of all equilibrium quantities. Slow and simple. Where k^2 is inverse of debye length and in this kernel refered as RHS_coeff

Read more…
mus_PBnonLinear_advRel_generic mus_compute_Poisson_module Subroutine

Advection relaxation routine for the nonlinear poisson boltzmann equation for electrolyte solution

Read more…
mus_pdf_allocate mus_pdf_module Subroutine
mus_pdf_serialize mus_buffer_module Subroutine

Preparation of the serialize PDF data

Read more…
mus_pdf_unserialize mus_buffer_module Subroutine

This subroutine unserializes the read data and stores it in the state- vector to perform a restart.

mus_perf_measure mus_tools_module Subroutine

This routine measures performance imbalance, MLUPS and dumps timings to disk

mus_perform_dynLoadBal mus_dynLoadBal_module Subroutine

Wrap up the routines required for dynamic load balancing

mus_physics_dump2outUnit mus_physics_module Subroutine
mus_physics_out mus_physics_module Subroutine

This routine write reference physics parameters into solver specific string in lua format.

Read more…
mus_physics_out_conv mus_physics_module Subroutine

This routine write physics convert factor into solver specific string in lua format. use reference density to parmeterize kg and reference mole density to parmeterize mol.

mus_Poisson_advRel_d2q9 mus_compute_Poisson_module Subroutine

Advection relaxation routine for the poisson equation with an explicit calculation of all equilibrium quantities. Slow and simple. The right hand side of equation is added as a source term in mus_apply_sourceTerms routine

Read more…
mus_Poisson_advRel_generic mus_compute_Poisson_module Subroutine

Advection relaxation routine for the poisson equation with an explicit calculation of all equilibrium quantities. Slow and simple. The right hand side of equation is added as a source term in mus_apply_sourceTerms routine

Read more…
mus_print_ppInfo mus_ppInfo_module Subroutine

Print information on the pre-processor options of the executable.

mus_readRestart mus_restart_module Subroutine

Read the serialized restart file into the state vectors

mus_reductionTransient_forPoint mus_operation_var_module Subroutine

Same as reductionTransient_forElement except it evaluate it multiply values from points

Read more…
mus_reload_IBM mus_IBM_module Subroutine
mus_reset_aux mus_dynLoadBal_module Subroutine

This subroutine initializes musubi after a dynamic load balancing is performed.

Read more…
mus_reset_bcTimer mus_timer_module Subroutine
mus_reset_levelTimer mus_timer_module Subroutine
mus_reset_mainTimer mus_timer_module Subroutine
mus_scheme_cleanup mus_scheme_module Subroutine

This subroutine acts as a destructor for the construct routine

mus_scheme_header_out mus_scheme_header_module Subroutine

Dumps scheme header

mus_scheme_out mus_scheme_module Subroutine

Dump single scheme info into restart solver specific conf to dump solver specific information in restart header file

mus_set_bcLinks mus_bc_header_module Subroutine
mus_set_bouzidi mus_bc_header_module Subroutine

Set necessary data for Wall Bouzidi BC bouzidi should be allocated beforehand

mus_set_convFac mus_physics_module Subroutine

This routine computed conversion factors for lattice to physical units. inverse of this factors can be used to convert from physical to lattice units.\n use reference density to parmeterize kg and reference mole density to parmeterize mol.\n Multiply these factors with the LB quantity to get the physical quantity Divide the physical quantity by these factors to get the LB units.

mus_set_ic_states mus_field_module Subroutine

Set ic states labels by scheme kind

mus_set_inletBfl mus_bc_header_module Subroutine

Bitmask is true for incoming direction

mus_set_inletUbb mus_bc_header_module Subroutine

Set necessary data for BC velocity_bounceback_qval

Read more…
mus_set_nonEqExpol mus_bc_header_module Subroutine

Linkwise non-equilibrium extrapolation (can handle curved walls)

Read more…
mus_set_nSources mus_interpolate_header_module Subroutine
mus_set_opVar_getElement mus_operation_var_module Subroutine

Routine to store musubi varSys Data in operation variable solver_bundle. Unline Ateles, Musubi operations does not require any special treatment so it uses to generic routines in treelm

mus_set_outletExpol mus_bc_header_module Subroutine
mus_set_posInNghElems mus_bc_header_module Subroutine

Set BC elements positions in LevelDesc%neigh%nghElems

mus_set_scaleFac mus_physics_module Subroutine
mus_set_stFun_getElement mus_varSys_module Subroutine

Routine to store musubi varSys Data in stFun variable

mus_set_timerHandles mus_timer_module Subroutine

This routine sets mus_timerHandles passed by apesmate

mus_set_weights_d1q3 mus_scheme_layout_module Subroutine
mus_set_weights_d2q5 mus_scheme_layout_module Subroutine
mus_set_weights_d2q9 mus_scheme_layout_module Subroutine
mus_set_weights_d3q13 mus_scheme_layout_module Subroutine
mus_set_weights_d3q19 mus_scheme_layout_module Subroutine
mus_set_weights_d3q27 mus_scheme_layout_module Subroutine
mus_set_weights_d3q6 mus_scheme_layout_module Subroutine
mus_set_weights_d3q7 mus_scheme_layout_module Subroutine
mus_setProp mus_geomIncr_module Subroutine

This routine updates the propertybits of an element If solidify == true, set prp_fluidify and set prp_solid If fluidify == treu, clean prp_fluidify and set prp_fluid

mus_setupIndices_forBC mus_bc_general_module Subroutine

This routine setup indices for boundary variables in bc_State_type pntIndex for the points on which boundaries are treated.

mus_setupIndices_forSrc mus_source_module Subroutine

This routines does setup indices for given source within a field or global. Index are stored for points which source term is active

mus_solve mus_program_module Subroutine

This routine does the main musubi computation loop

mus_source_cleanup mus_source_type_module Subroutine

This routine act as a destructor for source type. The arrays allocated in mus_init_sourceTerms are destroyed here

mus_species_out mus_species_module Subroutine

writes species propertries into a lua file

mus_stateVar_Fetch_fromIndex mus_stateVar_module Subroutine

Routine to get the actual value for a given array of indices. The indices belong to the grwarray of points storing levelwise in Pointdata%pntLvl(iLevel). Hence this routines takes the indeices as input, can refer to the pointData and evaluate the variable and returns the values

mus_stateVar_Fetch_now_fromIndex mus_stateVar_module Subroutine

Routine to get the actual value for a given array of indices. The indices belong to the grwarray of points storing levelwise in Pointdata%pntLvl(iLevel). Hence this routines takes the indeices as input, can refer to the pointData and evaluate the variable and returns the values

mus_stateVar_forPoint mus_stateVar_module Subroutine

State variable for a given set of points using linear interpolation.

Read more…
mus_stateVar_fromIndex mus_stateVar_module Subroutine

Routine to get the actual value for a given array of indices. The indices belong to the grwarray of points storing levelwise in Pointdata%pntLvl(iLevel). Hence this routines takes the indeices as input, can refer to the pointData and evaluate the variable and returns the values

mus_store_bcVarPos mus_variable_module Subroutine

Store the position of each boundary variable in the global varSys in the field%bc%varPos%. This routine also checks if boundary variable defined in config file has same number of components as expected.

mus_store_derVarPos mus_variable_module Subroutine

Store the position of each variable in the global system in the derVarPos This function is also called in Harvester.

mus_swap_Now_Next mus_pdf_module Subroutine
mus_testInterpolation mus_interpolate_verify_module Subroutine

Call tests to determine the actual error from the interpolation routines on the ghost elements. Compare against the analytical solution, which is given in terms of the initial conditions. Call this routine after the initial values are set and the ghost elements have been filled once, but no computation was started -> after fillHelperElements in the mus_aux_module

mus_time_homogenize mus_time_module Subroutine

Convert itime from restart to real time

mus_time_modulo mus_time_module Function

Check for multilevel cycle complete by modulo of nIters by scaleFactor depends on acoustic or diffusive scaling. Acoustic scaling: scale factor = 2 Diffusive scaling: scale factor = 4

mus_timeControl_homogenize mus_time_module Subroutine

Converts sim time to iter and vice versa depends on which one is defined in the configuration file

mus_turb_calcVisc mus_turbulence_module Subroutine

This routine compute turbulence viscosity and stores in turbulence data type

mus_turb_updateViscOfTurbWall mus_turbulence_module Subroutine

This routine update turbulent viscosity of boundary elements from RANS viscosity computed in turbulent_wall boundary.

mus_turbVisc_fromGradU_dummy mus_turb_viscosity_module Subroutine

Dummy function for turbulent viscosity from Gradu procedure

mus_turbVisc_fromPreColPDF_dummy mus_turb_viscosity_module Subroutine

Dummy function to compute turbulent viscosity from PDF

mus_turbVisc_Smagorinsky_fromGradU2D mus_Smagorinsky_module Subroutine

Calculate eddy viscosity with smagorinsky model for compressible model using gradient of velocity for 2D layout

mus_turbVisc_Smagorinsky_fromGradU2D_incomp mus_Smagorinsky_module Subroutine

Calculate eddy viscosity with smagorinsky model for incompressible model using gradient of velocity for 2D layout

mus_turbVisc_Smagorinsky_fromGradU3D mus_Smagorinsky_module Subroutine

Calculate eddy viscosity with smagorinsky model for compressible model using gradient of velocity Reference paper: https://link.springer.com/content/pdf/10.1007/s10494-012-9405-0.pdf?pdf=button The formula is taken from https://caefn.com/openfoam/smagorinsky-sgs-model nu_t = C_k delta sqrt(k_sgs) k_sgs = ((-b+sqrt(b^2+4ac))/2a)^2 a = C_e/delta, b=2/3 tr(dev(Strain)), c = 2 C_k delta (dev(Strain):Strain)

mus_turbVisc_Smagorinsky_fromGradU3D_incomp mus_Smagorinsky_module Subroutine

Calculate eddy viscosity with smagorinsky model for incompressible model using gradient of velocity

mus_turbVisc_Smagorinsky_fromPreColPDF_2D mus_Smagorinsky_module Subroutine

Calculate eddy viscosity with smagorinsky model for compressible model using pre-collision PDF. Schneider, A. (2015). A Consistent Large Eddy Approach for Lattice Boltzmann Methods and its Application to Complex Flows. Technical University Kaiserslautern.

mus_turbVisc_Smagorinsky_fromPreColPDF_3D mus_Smagorinsky_module Subroutine

Calculate eddy viscosity with smagorinsky model for compressible model using pre-collision PDF. Schneider, A. (2015). A Consistent Large Eddy Approach for Lattice Boltzmann Methods and its Application to Complex Flows. Technical University Kaiserslautern.

mus_turbVisc_Smagorinsky_fromPreColPDF_incomp_2D mus_Smagorinsky_module Subroutine

Calculate eddy viscosity with smagorinsky model for incompressible model using pre-collision PDF

mus_turbVisc_Smagorinsky_fromPreColPDF_incomp_3D mus_Smagorinsky_module Subroutine

Calculate eddy viscosity with smagorinsky model for incompressible model using pre-collision PDF

mus_turbVisc_Vreman_2D mus_Vreman_module Subroutine

Calculate eddy viscosity with Vreman model for 2D stencil model \todo add reference and formula

mus_turbVisc_Vreman_3D mus_Vreman_module Subroutine

Calculate eddy viscosity with Vreman model for 3D stencil Fortran implementation of this model: http://www.vremanresearch.nl/Vreman_Subgridmodel_Fortran.txt

Read more…
mus_turbVisc_WALE_2D mus_WALE_module Subroutine

Calculate eddy viscosity with WALE (Wall-Adapting Local Eddy-viscosity) model \todo add reference and formula

Read more…
mus_turbVisc_WALE_3D mus_WALE_module Subroutine

Calculate eddy viscosity with WALE (Wall-Adapting Local Eddy-viscosity) model \todo add reference and formula

mus_unload_IBM mus_IBM_module Subroutine
mus_update_BcghostElem mus_construction_module Subroutine
mus_update_relaxParamFromViscSTfun mus_relaxationParam_module Subroutine

This routine is used to initialize relaxation paramter and update bulk viscosity at every time step Bulk visocisty is defined as space-time function to apply ramping and spatial sponge in bulk viscosity

mus_update_relaxParamKine mus_relaxationParam_module Subroutine

Update kinematic relaxation parameter from viscosity and check omega

mus_update_relaxParams mus_aux_module Subroutine

Set relaxation parameters for MRT

mus_update_sourceVars mus_source_module Subroutine

Updated all source variables i.e field specific source and global source on all fields.

mus_update_viscKine mus_relaxationParam_module Subroutine

Update kinematic viscosity from STfun and calculate turbulent viscosity from velocity gradient or nonEqPDF Viscosity obtained from this routine are normalized to the level

Read more…
mus_updateConnectivity_forSymmetricBC mus_connectivity_module Subroutine

Update the connectivity for elements with symmetric boundary condition such that during the propagation they are applied implicitly.

Read more…
mus_updateSrcVar_dummy mus_source_type_module Subroutine

Dummy routine for update source variable

mus_updateSrcVar_dynSponFld mus_source_var_module Subroutine

Compute density and velocity in sponge layer for dynamic sponge

mus_updateSrcVar_turbChanForce mus_source_var_turbChanForce_module Subroutine

Compute dynamic force term using auxField for turbulent channel force.

Read more…
mus_weights_out mus_scheme_layout_module Subroutine

Dump the weights in lua format.

Read more…
mus_writeRestart mus_restart_module Subroutine

Write the serialized buffer assembled in mus_serializeData to disk

mus_writeSolverSpecInfo mus_tools_module Subroutine

Write solver specific info to scratch file

newton_method mus_turb_wallFunc_module Function

This routine computes friction velocity from wall model profile using Newton iteration method

normalizeBC mus_construction_module Subroutine

This routine normalizes the normal vectors of boundary elements including the corner elements as well as assigns the corresponding prevailing direction from the stencil

outlet_dnt mus_bc_fluid_module Subroutine

Outlet Pressure do-nothing boundary is the open boundary condition for incompressible model. This BC sets reference density at boundary so pressure is not loaded config file. Here, the normal velocity is extrapolated from 1st fluid node and tangential velocity is extrapolated from 2nd fluid node in normal direction. Algorithm used in this boundary condition: fEq(1,u) and fEq(rho,u) are computed using macroscopic values from current element. In fNeq, post-collision of current time step is used for normal direction.

Read more…
outlet_nrbc mus_bc_fluid_module Subroutine

Characteristic-based non-reflective open boundary conditions

Read more…
outlet_nrbc_eq mus_bc_fluid_module Subroutine

Characteristic-based non-reflective open boundary conditions

Read more…
outlet_nrbc_incomp mus_bc_fluid_module Subroutine

Characteristic-based non-reflective open boundary conditions

Read more…
outlet_pasScal mus_bc_passiveScalar_module Subroutine

Outlet boundary conditions for passive scalar transport (Flekkoy).

Read more…
outlet_zero_prsgrd mus_bc_fluid_module Subroutine

Outlet boundary conditions with zero pressure gradient.

Read more…
perform_checks mus_tools_module Subroutine

Perform run-time checks if interval is active

potential_neumann mus_bc_poisson_module Subroutine

Linkwise neumann potential non-equilibrium boundary condition for curved and straight walls (zero gradient). For straight wall, values are extrapolated along boundary normal instead of along the link. The accuracy of straight wall depends on the qVal defined in config file and default is set to 0.5

Read more…
potential_neumann_curved mus_bc_poisson_module Subroutine

No comment yet!

Read more…
potential_nonEqExpol mus_bc_poisson_module Subroutine

Linkwise Dirichlet potential non-equilibrium boundary condition for curved and straight walls. For straight wall, physical boundary overlaps with boundary node i.e. qVal=0.0.

Read more…
potential_nonEqExpol_curved mus_bc_poisson_module Subroutine

Linkwise Dirichlet potential non-equilibrium boundary condition for curved wall

Read more…
prepare_target_elem_list mus_geomIncr_module Subroutine

This routine compares the macroscopic quantity obtained for an element against specified threshold and populates the list of target elements which participate in geometry change. In addition it sets the property bit(s) of target elements to fluidify in case of solidification and clears this bit in case of fluidification

Read more…
press_neq mus_bc_fluid_module Subroutine

Pressure Non-Equilibrium type boundary conditions from Guo, Z., & Shi, B. (2002). "Non-equilibrium extrapolation method for velocity and pressure boundary conditions in the lattice Boltzmann method." Chinese Physics, (November 2016).

Read more…
pressure_antiBounceBack mus_bc_fluid_module Subroutine

Outlet Pressure Bounce Back boundary condition

Read more…
pressure_antiBounceBack_pasScal mus_bc_passiveScalar_module Subroutine

Dirichlet stationary boundary conditions for passive scalar transport in

Read more…
pressure_eq mus_bc_fluid_module Subroutine

Outlet Pressure Equilibrium type boundary conditions

Read more…
pressure_expol mus_bc_fluid_module Subroutine

Outlet Pressure extrapolation boundary. qVal for this boundary must be 0.0

Read more…
pressure_expol_slow mus_bc_fluid_experimental_module Subroutine

No comment yet!

Read more…
pressure_momentsbased mus_bc_fluid_module Subroutine

Moment based open boundary condition from Sam Bennent PhD thesis "A Lattice Boltzmann Model for Diffusion of Binary Gas Mixtures" for weakly compressible LBM model

Read more…
pressure_momentsbased_incomp mus_bc_fluid_module Subroutine

Moment based open boundary condition from Sam Bennent PhD thesis "A Lattice Boltzmann Model for Diffusion of Binary Gas Mixtures" for incompressible LBM model

Read more…
pressure_nonEqExpol mus_bc_fluid_nonEqExpol_module Subroutine

Element-wise Dirichlet pressure non-equilibrium boundary condition for straight boundary and updates all directions. For straight wall, values are extrapolated along boundary normal instead of along the link and qVal=0.

Read more…
proximity mus_geomIncr_module Subroutine

A subroutine which checks the proximity condition and generates a new treeID list of potential target elements which can then be checked against various thresholds as defined in the lua configuration file.

Read more…
rearrange_bc_elems mus_bc_header_module Subroutine

It removes non-valid elements while still maintaining the origianl order. The given bc elements (elems) contains both valid and non-valid elements. Position of valid elements are given by posInBCElem. Valid elements are moved towards the start of the elems so that they become continuous in the elems.

remove_solid_in_bc mus_field_module Subroutine

First check count number of valid elements (non-solid) in each BC. Then rearrange BC elements list so it contains only valid elements. Update fields%bc%elemLvl%stencilPos fields%bc%elemLvl%posInNghElems accordingly.

Read more…
secondMom_2D mus_derivedQuantities_module2 Function

Calculate second moments of some quantity where Q is number of discrete velocity.\n The output is 1 dimentional array which has 6 componenents.\n Specifically, This function is used by shear stress and strain rate. 1=xx, 2=yy, 3=xy

secondMom_3D mus_derivedQuantities_module2 Function

Calculate second moments of some quantity where Q is number of discrete velocity.\n The output is 1 dimentional array which has 6 componenents.\n Specifically, This function is used by shear stress and strain rate. 1=xx, 2=yy, 3=zz, 4=xy, 5=yz, 6=xz in 2D: 1=xx, 2=yy, 3=xy

secondMom_minus_cs2_2D mus_derivedQuantities_module2 Function

Calculate second moments of some quantity where Q is number of discrete velocity.\n The output is 1 dimentional array which has 6 componenents.\n Specifically, This function is used by shear stress and strain rate. 1=xx, 2=yy, 3=xy

secondMom_minus_cs2_3D mus_derivedQuantities_module2 Function

Calculate second moments of some quantity where Q is number of discrete velocity.\n The output is 1 dimentional array which has 6 componenents.\n Specifically, This function is used by shear stress and strain rate. 1=xx, 2=yy, 3=zz, 4=xy, 5=yz, 6=xz

set_boundary mus_bc_general_module Subroutine

Call the functions associated with each boundary condition

Read more…
set_bouzidi_coeff mus_bc_header_module Subroutine

Set the coefficients of bouzidi linear interpolation boundary condition.

set_halo_commLinks mus_construction_module Subroutine

Select the halo elements which require all links

Read more…
set_momentIndices mus_moments_module Subroutine

set indices for accessing the pressure, velocity and the shear from a 1d vector

set_omegasLvl mus_mixture_module Subroutine

Set the omegas according to the time step setting

Read more…
set_sendHaloBits mus_construction_module Subroutine

set the sendHalo bit for all fluid elements which are send to remote procs

set_values_by_levels mus_physics_module Function
setFieldBCNeigh mus_construction_module Subroutine

This routine sets field BC neigh array with position of neighbor element in the inward normal direction of boundary in the levelwise list. if valid 1st neighbor does not exist return current element position. if valid higher order neighbor does not exist return last valid neighbor

setParameters_multispecies mus_field_module Subroutine

Set parameters for multispecies

Read more…
slip_wall mus_bc_fluid_wall_module Subroutine

slip-wall boundary condition. Slip defined by a slip factor

Read more…
spc_bb_vel_test mus_bc_fluid_experimental_module Subroutine

species bounce back velocity boundary Usage

Read more…
spc_bb_wall mus_bc_fluid_experimental_module Subroutine

species bounce back wall boundary Usage

Read more…
spc_blackbox_mem_ion mus_bc_species_module Subroutine

This routine computes mole diffusion flux of the ionic species at the membrance using black box model and then mass density at the membrane boundary from mole diffusion flux. Then equilibrium is set at the boundary which is computed from mass density and velocity

Read more…
spc_blackbox_mem_solvent mus_bc_species_module Subroutine

This routine computes mole diffusion flux of the solvent at the membrance using black box model and then mass density at the membrane boundary from mole diffusion flux. Then equilibrium is set at the boundary which is computed from mass density and velocity

Read more…
spc_inflow mus_bc_species_module Subroutine

Inflow boundary condition based on non-Equilbrium extrapolation method. Usage

Read more…
spc_inlet mus_bc_species_module Subroutine

Inlet boundary condition for defined species velocity and mole fraction Usage

Read more…
spc_inlet_eq mus_bc_species_module Subroutine

Inlet species velocity equilibrium boundary with specified mixture averaged mass velocity and its molefraction mixture kinematic pressure is extrapolated here. Density and velocity of all fields are used to compute equilibrium Usage

Read more…
spc_mole_fraction_noneq_expol mus_bc_species_module Subroutine

Mole fraction boundary condition for nonequilibrium extrapolation based. Default qVal=0.0. Usage

Read more…
spc_moleDens_eq mus_bc_species_module Subroutine

Mole density boundary condition Usage

Read more…
spc_moleDiff_Flux mus_bc_species_module Subroutine

molar diffusion flux boundary condition Usage

Read more…
spc_moleFlux mus_bc_species_module Subroutine

molar flux boundary condition like velocity bounce back bc type Usage

Read more…
spc_moleFlux_eq mus_bc_species_module Subroutine

molar flux equilibrium boundary condition Usage

Read more…
spc_moleFrac mus_bc_species_module Subroutine

Mole fraction boundary condition Usage

Read more…
spc_moleFrac_eq mus_bc_species_module Subroutine

Mole fraction boundary condition Usage

Read more…
spc_moleFrac_wtdf mus_bc_species_module Subroutine

Mole fraction boundary condition with thermodynamic factor Usage

Read more…
spc_moments_moleFlux mus_bc_species_module Subroutine

molar flux boundary condition like moments velocity bc type Usage

Read more…
spc_moments_moleFrac mus_bc_species_module Subroutine

Mole fraction boundary condition Usage

Read more…
spc_moments_outflow mus_bc_fluid_experimental_module Subroutine

molar flux boundary condition like moments velocity bc type Usage

Read more…
spc_moments_vel mus_bc_species_module Subroutine

velocity boundary condition like moments velocity bc type Usage

Read more…
spc_moments_wall mus_bc_species_module Subroutine

Moment based wall boundary condition from Sam Bennent PhD thesis "A Lattice Boltzmann Model for Diffusion of Binary Gas Mixtures"

Read more…
spc_outflow mus_bc_species_module Subroutine

Open outflow boundary condition based on nonequilibrium extrapolation method. Default qVal = 0.0 Usage

Read more…
spc_outlet_eq mus_bc_species_module Subroutine

Outlet mixture pressure species equilibrium boundary kinematic pressure is computed from pressure species density and velocity are extrapolated Usage

Read more…
spc_outlet_expol mus_bc_species_module Subroutine

species Outlet Pressure extrapolation boundary. NOT VERIFIED

Read more…
spc_outlet_vel mus_bc_species_module Subroutine

Outlet species velocity equilibrium boundary with specified mixture averaged mass velocity. molefraction is extrapolated here. Usage

Read more…
spc_outlet_zero_prsgrd mus_bc_species_module Subroutine

Outlet boundary conditions with zero pressure gradient.

Read more…
spc_slip_wall mus_bc_fluid_wall_module Subroutine

slip-wall boundary condition. Slip defined by a slip factor

Read more…
spc_solvent_inflow mus_bc_species_module Subroutine

Inflow boundary condition for solvent based on non-Equilbrium extrapolation method. Similar to spc_velocity_noneq_expol except the mass density for solvent is enforced such that total moleDens0 is maintained. Default qVal=1.0. Usage

Read more…
spc_solvent_outflow mus_bc_species_module Subroutine

Open outflow boundary condition for solvent based on nonequilibrium extrapolation. total moledens at boundary is enforced. method. Default qVal = 0.0 Usage

Read more…
spc_vel_bb mus_bc_species_module Subroutine

Inlet species velocity bounce back boundary with specified mixture averaged mass velocity and its molefraction mixture kinematic pressure is extrapolated here. Usage

Read more…
spc_velocity_noneq_expol mus_bc_species_module Subroutine

Velocity boundary condition based on non-Equilbrium extrapolation method. Default qVal=1.0. Usage

Read more…
start_stageTimer mus_control_module Subroutine
stop_stageTimer mus_control_module Subroutine
TGV_2D mus_interpolate_debug_module Function

This routine returns the analytical solution of TGV 2D testcase for a given position and time (coord, t)

turbulent_wall mus_bc_fluid_turbulent_module Subroutine

BC routine for turbulent wall. It uses wall model to compute velocity on the boundary node. The implementation is based on the following paper: Haussmann, Marc; Ries, Florian; Jeppener-Haltenhoff, Jonathan B.; Li, Yongxiang; Schmidt, Marius; Welch, Cooper et al. (2020): Evaluation of a Near-Wall-Modeled Large Eddy Lattice Boltzmann Method for the Analysis of Complex Flows Relevant to IC Engines. In Computation 8 (2), p. 43. DOI: 10.3390/computation8020043.

Read more…
turbulent_wall_eq mus_bc_fluid_turbulent_module Subroutine

BC routine for turbulent wall based on equilibrium BC. The implementation is based on the following paper: Haussmann, M. et al. (2019) ‘Large-eddy simulation coupled with wall models for turbulent channel flows at high Reynolds numbers with a lattice Boltzmann method — Application to Coriolis mass flowmeter’, Computers & Mathematics with Applications. Elsevier Ltd, 78(10), pp. 3285–3302.

Read more…
turbulent_wall_eq_curved mus_bc_fluid_turbulent_module Subroutine

BC routine for turbulent wall based on equilibrium BC. The implementation is based on the following paper: Haussmann, M. et al. (2019) ‘Large-eddy simulation coupled with wall models for turbulent channel flows at high Reynolds numbers with a lattice Boltzmann method — Application to Coriolis mass flowmeter’, Computers & Mathematics with Applications. Elsevier Ltd, 78(10), pp. 3285–3302.

Read more…
turbulent_wall_libb mus_bc_fluid_turbulent_module Subroutine

BC routine for turbulent wall. It uses wall model to compute velocity on the boundary node. The implementation is based on the following paper: Haussmann, Marc; Ries, Florian; Jeppener-Haltenhoff, Jonathan B.; Li, Yongxiang; Schmidt, Marius; Welch, Cooper et al. (2020): Evaluation of a Near-Wall-Modeled Large Eddy Lattice Boltzmann Method for the Analysis of Complex Flows Relevant to IC Engines. In Computation 8 (2), p. 43. DOI: 10.3390/computation8020043.

Read more…
turbulent_wall_noneq_expol mus_bc_fluid_turbulent_module Subroutine

BC routine for turbulent wall based on Guo's nonequilibrium extrapolation. The implementation is based on the following paper: Haussmann, M. et al. (2019) ‘Large-eddy simulation coupled with wall models for turbulent channel flows at high Reynolds numbers with a lattice Boltzmann method — Application to Coriolis mass flowmeter’, Computers & Mathematics with Applications. Elsevier Ltd, 78(10), pp. 3285–3302.

Read more…
turbulent_wall_noneq_expol_curved mus_bc_fluid_turbulent_module Subroutine

BC routine for turbulent wall based on Guo's nonequilibrium extrapolation. The implementation is based on the following paper: Haussmann, M. et al. (2019) ‘Large-eddy simulation coupled with wall models for turbulent channel flows at high Reynolds numbers with a lattice Boltzmann method — Application to Coriolis mass flowmeter’, Computers & Mathematics with Applications. Elsevier Ltd, 78(10), pp. 3285–3302.

Read more…
update_BClists mus_construction_module Subroutine

Update the neighbor stencil positions for the Boundaries

Read more…
update_connectivity mus_geomIncr_module Subroutine

Construct the propagation stencil for each element

Read more…
vec_fma mus_test_module Subroutine

Testing routine which performs fused multiplication and addtion on the state variable. The calculation is simple, so that the cost is mostly due to the data transfer through the memory interface.

Read more…
vel_neq mus_bc_fluid_module Subroutine

Velocity Non-Equilibrium type boundary conditions from Guo, Z., & Shi, B. (2002). "Non-equilibrium extrapolation method for velocity and pressure boundary conditions in the lattice Boltzmann method." Chinese Physics, (November 2016).

Read more…
velocity_bfl mus_bc_fluid_module Subroutine

Inlet Velocity BFL rule boundary condition

Read more…
velocity_bfl_incomp mus_bc_fluid_module Subroutine

No comment yet!

Read more…
velocity_bounceback mus_bc_fluid_module Subroutine

Inlet Velocity Bounce Back boundary condition with qvalues for compressible flows. It is similar to velocity_bounceback except the density is extrapolated from fluid element.

Read more…
velocity_bounceback_incomp mus_bc_fluid_module Subroutine

Inlet Velocity Bounce Back boundary condition with qvalues

Read more…
velocity_eq mus_bc_fluid_module Subroutine

Inlet Velocity Equilibrium type boundary conditions for weakly compressible lbm scheme

Read more…
velocity_momentsbased mus_bc_fluid_module Subroutine

Moment based velocity boundary condition for weakly compressible LBM model Based on Sam Bennent PhD thesis "A Lattice Boltzmann Model for Diffusion of Binary Gas Mixtures" Usage

Read more…
velocity_momentsbased_incomp mus_bc_fluid_module Subroutine

Moment based velocity boundary condition for incompressible LBM model Based on Sam Bennent PhD thesis "A Lattice Boltzmann Model for Diffusion of Binary Gas Mixtures" Usage

Read more…
velocity_nonEqExpol mus_bc_fluid_nonEqExpol_module Subroutine

Element-wise Dirichlet velocity non-equilibrium boundary condition for straight boundary to update all directions. For straight wall, values are extrapolated along boundary normal instead of along the link and qVal =0.0 for straight wall.

Read more…
velocity_nonEqExpol_curved mus_bc_fluid_nonEqExpol_module Subroutine

Linkwise Dirichlet velocity non-equilibrium boundary condition for curved using the subroutine "mus_set_nonEqExpol". For curved wall, values are extrapolated along element normal

Read more…
viscPhy_CS mus_nonNewtonian_module Function

nonNewtonian Casson model

viscPhy_CY mus_nonNewtonian_module Function

nonNewtonian Carreau-Yasuda model

viscPhy_PL mus_nonNewtonian_module Function

nonNewtonian power-law model

wall_libb mus_bc_fluid_wall_module Subroutine

No comment yet!

Read more…
weights_abg mus_compute_cumulant_module Function

Calculating central moment weights This follows equation 5 in cumulent paper (Geier .et al 2017)

weights_from_layout mus_compute_cumulant_module Function

allocate weights from D3Q27 ordered disposition to cumulant disposition

weights_ibg mus_compute_cumulant_module Function

Calculating central moment weights This follows equation 3 in cumulent paper (Geier .et al 2017)

weights_ijg mus_compute_cumulant_module Function

Calculating central moment weights This follows equation 3 in cumulent paper (Geier .et al 2017)