Procedures

ProcedureLocationProcedure TypeDescription
access_bcFricVel_forElementmus_bc_var_moduleSubroutine

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

Read more…
access_bcNormal_forElementmus_bc_var_moduleSubroutine

This routine returns the boundary normal pointing inside the domain

Read more…
access_bcNormDistToBnd_forElementmus_bc_var_moduleSubroutine

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_forElementmus_bc_var_moduleSubroutine

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_forElementmus_bc_var_moduleSubroutine

This routine returns yPlus = distToBnd * fric_vel / visc

Read more…
access_kineOmega_forElementmus_material_var_moduleSubroutine

This routine returns the omega

Read more…
access_kineVisc_forElementmus_material_var_moduleSubroutine

This routine returns the kinematic viscosity

Read more…
access_turbVisc_forElementmus_turbulence_var_moduleSubroutine

This routine returns the turbulent viscosity

Read more…
allocate_momBufmus_pdf_moduleSubroutine
allocateBCListmus_construction_moduleSubroutine

Allocate BC lists, 2nd step in Build_BClists

applySrc_absorbLayermus_derQuan_moduleSubroutine

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_MRTmus_derQuan_moduleSubroutine

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_absorbLayerDynmus_derQuan_moduleSubroutine

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_MRTmus_derQuan_moduleSubroutine

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_absorbLayerIncompmus_derQuanIncomp_moduleSubroutine

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_1stOrdmus_derQuanPoisson_moduleSubroutine

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_2ndOrdmus_derQuanPoisson_moduleSubroutine

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_electricFieldNPmus_derQuanNernstPlanck_moduleSubroutine

Update state with source variable "electric field"

Read more…
applySrc_electricMSLiquid_1stOrdmus_derQuanMSLiquid_moduleSubroutine

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_WTDFmus_derQuanMSLiquid_moduleSubroutine

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_2ndOrdmus_derQuanMSLiquid_moduleSubroutine

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_WTDFmus_derQuanMSLiquid_moduleSubroutine

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_equalInjectionPSmus_derQuanPS_moduleSubroutine

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

Read more…
applySrc_forcemus_derQuan_moduleSubroutine

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_force1stOrdmus_derQuan_moduleSubroutine

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_MRTmus_derQuan_moduleSubroutine

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_d2q9mus_derQuan_moduleSubroutine

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_d3q19mus_derQuan_moduleSubroutine

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_d3q27mus_derQuan_moduleSubroutine

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_1stOrdmus_derQuanMSLiquid_moduleSubroutine

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_WTDFmus_derQuanMSLiquid_moduleSubroutine

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_2ndOrdmus_derQuanMSLiquid_moduleSubroutine

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_WTDFmus_derQuanMSLiquid_moduleSubroutine

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_HRRCorrectionmus_derQuan_moduleSubroutine

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_injectionPSmus_derQuanPS_moduleSubroutine

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

Read more…
applySrc_turbChanForcemus_derQuan_moduleSubroutine

Update state with source variable "turb_channel_force" for BGK.

Read more…
applySrc_turbChanForce_MRTmus_derQuan_moduleSubroutine

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_d2q9mus_derQuan_moduleSubroutine

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_d3q19mus_derQuan_moduleSubroutine

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_d3q27mus_derQuan_moduleSubroutine

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_fluidmus_interpolate_moduleSubroutine

Set up interpolation routines for fluid (weakly compressible) scheme

assign_intp_fluidIncompmus_interpolate_moduleSubroutine

Set up interpolation routines for fluid_incomp scheme

assign_intp_fluidIncompLESmus_interpolate_moduleSubroutine

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

assign_intp_fluidLESmus_interpolate_moduleSubroutine

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

assign_turb_wallFuncmus_turb_wallFunc_moduleSubroutine

Assign wall models pointers to calculate friction velocity and stream-wise velocity component

assignBCListmus_construction_moduleSubroutine

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_pdfmus_bc_fluid_moduleSubroutine

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_d2q9mus_d2q9_moduleSubroutine

No comment yet!

Read more…
bgk_advRel_d2q9_incompmus_d2q9_moduleSubroutine

No comment yet!

Read more…
bgk_advRel_d3q19mus_d3q19_moduleSubroutine

Advection relaxation routine for the D3Q19 model with BGK.

Read more…
bgk_advRel_d3q19_blockmus_d3q19_moduleSubroutine

No comment yet!

Read more…
bgk_advRel_d3q19_incompmus_d3q19_moduleSubroutine

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

Read more…
bgk_advRel_d3q19f3_MSGasmus_MSGas_moduleSubroutine

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

Read more…
bgk_advRel_d3q19f3_MSLiquidmus_MSLiquid_moduleSubroutine

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

Read more…
bgk_advRel_d3q19f3_MSLiquid_WTDFmus_MSLiquid_moduleSubroutine

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

Read more…
bgk_advRel_d3q27mus_d3q27_moduleSubroutine

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

Read more…
bgk_advRel_d3q27_incompmus_d3q27_moduleSubroutine

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

Read more…
bgk_advRel_flekkoymus_bgk_moduleSubroutine

Advection relaxation routine for the flekkoy diffusion model.

Read more…
bgk_advRel_flekkoy_noFluidmus_bgk_moduleSubroutine

Advection relaxation routine for the flekkoy diffusion model without prior definition of a dependent fluid scheme. Velocity is read from the depend table.

Read more…
bgk_advRel_genericmus_bgk_moduleSubroutine

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…
bgk_advRel_generic_incompmus_bgk_moduleSubroutine

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…
bgk_advRel_isotherm_acEq_d3q19mus_isotherm_acEq_moduleSubroutine

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

Read more…
bgk_advRel_MSGas_genericmus_MSGas_moduleSubroutine

Unoptimized Advection relaxation routine for the multispecies BGK model for testing

Read more…
bgk_advRel_MSLiquid_genericmus_MSLiquid_moduleSubroutine

Unoptimized Advection relaxation routine for the multispecies BGK model

Read more…
bgk_advRel_MSLiquid_generic_WTDFmus_MSLiquid_moduleSubroutine

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

Read more…
bgk_DualRelaxationTime_RR_d2q9mus_d2q9_moduleSubroutine
bgk_DualRelaxationTime_RR_d3q19mus_d3q19_moduleSubroutine

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_d3q27mus_d3q27_moduleSubroutine

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_genericmus_MSLiquid_moduleSubroutine

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

Read more…
bgk_HybridRecursiveRegularized_d2q9mus_d2q9_moduleSubroutine

Hybrid recursive regularization relaxation routine for the BGK model. todo add paper todo add some more information if needed

Read more…
bgk_HybridRecursiveRegularized_d3q19mus_d3q19_moduleSubroutine

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_d3q27mus_d3q27_moduleSubroutine

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_improved_advRel_d2q9mus_d2q9_moduleSubroutine

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…
bgk_improved_advRel_d3q27mus_d3q27_moduleSubroutine

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…
bgk_ProjectedRecursiveRegularized_d2q9mus_d2q9_moduleSubroutine
bgk_ProjectedRecursiveRegularized_d3q19mus_d3q19_moduleSubroutine

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_d3q27mus_d3q27_moduleSubroutine

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_d2q9mus_d2q9_moduleSubroutine
bgk_RecursiveRegularized_d3q19mus_d3q19_moduleSubroutine

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_d3q27mus_d3q27_moduleSubroutine

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_d2q9mus_d2q9_moduleSubroutine
bgk_Regularized_d3q19mus_d3q19_moduleSubroutine

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_d3q27mus_d3q27_moduleSubroutine

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_bcLevelPointermus_construction_moduleSubroutine
build_BClistsmus_construction_moduleSubroutine

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

Read more…
calc_MLUPSmus_tools_moduleFunction

Calculate the MLUPS or MFLUPS for the simulation

calc_ms_diff_matrix_from_moledensmus_eNRTL_moduleInterface

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

calc_ms_diff_matrix_from_molefracmus_eNRTL_moduleInterface

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

calc_therm_factor_locmus_eNRTL_moduleInterface

This routine calculates thermodynamic factor for given mole_frac of all species

calcDensAndVelsFromPDFmus_bc_species_moduleSubroutine

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.

calculate_nElemsmus_construction_moduleSubroutine

Calculate global and sum of levels numbers of elements

Read more…
calcVelSW_unitSW_velTau_tViscmus_bc_fluid_turbulent_moduleSubroutine

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

calcVelSW_unitSW_velTau_tVisc_incompmus_bc_fluid_turbulent_moduleSubroutine

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

calcVisc_CSmus_nonNewtonian_moduleSubroutine

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

Read more…
calcVisc_CYmus_nonNewtonian_moduleSubroutine

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_CSmus_nonNewtonian_moduleSubroutine

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

Read more…
calcVisc_incomp_CYmus_nonNewtonian_moduleSubroutine

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_PLmus_nonNewtonian_moduleSubroutine

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

Read more…
calcVisc_PLmus_nonNewtonian_moduleSubroutine

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_d3q27mus_compute_cumulant_moduleSubroutine

No comment yet!

Read more…
central_momentmus_compute_cumulant_moduleFunction

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

central_moment_splitmus_compute_cumulant_moduleFunction

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_MSmus_bc_general_moduleSubroutine

Check prerequisite for some boundary conditions

check_densitymus_tools_moduleSubroutine

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

Read more…
check_flow_statusmus_aux_moduleSubroutine

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

check_mrt_matrix_d3q19mus_mrtInit_moduleFunction

Unoptimized explicit implementation

Read more…
check_mrt_matrix_d3q27mus_mrtInit_moduleFunction

Unoptimized explicit implementation

Read more…
check_potentialmus_tools_moduleSubroutine

Check the total potential for poisson scheme

Read more…
check_solid_in_bcmus_bc_header_moduleSubroutine

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_layoutmus_tools_moduleSubroutine

Check for the streaming layout.

check_varSys_forPdfVarmus_variable_moduleSubroutine

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

Read more…
check_velocityFluidmus_tools_moduleSubroutine

Check the maximum velocity whether it is above Ma>0.1

check_velocityMSmus_tools_moduleSubroutine

Check the maximum velocity whether it is above Ma>0.1

cm_to_pdfmus_compute_cumulant_moduleFunction
communicate_propertymus_construction_moduleSubroutine

Initialize the communication buffers for a single level

compute_bulkViscOmegamus_species_moduleSubroutine

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

compute_molWeightRatiomus_species_moduleSubroutine

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

Read more…
compute_weightmus_interpolate_moduleSubroutine

This routine computes weights for weighted_average interpolation.

convPrePostmus_derivedQuantities_module2Function

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

Read more…
countnBndsmus_construction_moduleSubroutine

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_d3q27mus_compute_cumulant_moduleSubroutine

No comment yet!

Read more…
cumulant_d3q27_extended_fastmus_compute_cumulant_moduleSubroutine

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_genericmus_compute_cumulant_moduleSubroutine

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_checkmus_cumulantInit_moduleSubroutine

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_connectivitymus_debug_moduleSubroutine

Detailed Debug output to the PDF neighbor (connectivity) list

Read more…
debug_dependenciesmus_interpolate_tools_moduleSubroutine

check the dependencies from Finer

debug_dependenciesFromCoarsermus_debug_moduleSubroutine

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_dependenciesFromFinermus_debug_moduleSubroutine

Debug the dependencies for the ghostFromFiner elements

debug_glob_boundary_typemus_bc_header_moduleSubroutine
debug_normalsmus_debug_moduleSubroutine

Dump the neighbors found for the boundaries with neighbor elements

Read more…
derDensityIsothermAcEqmus_derQuanIsothermAcEq_moduleSubroutine

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

Read more…
derEquilIsothermAcEqmus_derQuanIsothermAcEq_moduleSubroutine

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

Read more…
derEquilIsothermAcEq_fromIndexmus_derQuanIsothermAcEq_moduleSubroutine

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_absorbLayermus_derQuan_moduleSubroutine

Derive absorb layer variable defined as a source term.

derive_absorbLayerIncompmus_derQuanIncomp_moduleSubroutine

Derive absorb layer variable defined as a source term.

derive_equalInjectionPSmus_derQuanPS_moduleSubroutine

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_forcemus_derQuan_moduleSubroutine

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_force1stOrdmus_derQuan_moduleSubroutine

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_HRRCorrectionmus_derQuan_moduleSubroutine

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_injectionPSmus_derQuanPS_moduleSubroutine

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_fromStatemus_derQuan_moduleSubroutine

This routine computes auxField from state array

Read more…
deriveAux_fromState_d2q9mus_derQuan_moduleSubroutine

This routine computes auxField from state array

Read more…
deriveAux_fromState_d3q19mus_derQuan_moduleSubroutine

This routine computes auxField from state array

Read more…
deriveAux_fromState_d3q27mus_derQuan_moduleSubroutine

This routine computes auxField from state array

Read more…
deriveAuxIncomp_fromStatemus_derQuanIncomp_moduleSubroutine

This routine computes auxField from state array

Read more…
deriveAuxMSGas_fromStatemus_derQuanMSGas_moduleSubroutine

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_fromStatemus_derQuanMSLiquid_moduleSubroutine

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_WTDFmus_derQuanMSLiquid_moduleSubroutine

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_fromStatemus_derQuanNernstPlanck_moduleSubroutine

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_fromStatemus_derQuanPoisson_moduleSubroutine

This routine computes auxField 'potential' from state array

Read more…
deriveAuxPS_fromStatemus_derQuanPS_moduleSubroutine

This routine computes auxField from state array

Read more…
deriveBndForcemus_derQuan_moduleSubroutine

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

Read more…
deriveChargeDensitymus_derQuanMSLiquid_moduleSubroutine

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_fromIndexmus_derQuanMSLiquid_moduleSubroutine

Calculate charge density from species concentration

Read more…
deriveChargeDensityBoltzAppr_forElementmus_derQuanPoisson_moduleSubroutine

Calculate charge density from potential field using Boltzmann approximation

Read more…
deriveChargeDensityBoltzAppr_fromIndexmus_derQuanPoisson_moduleSubroutine

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

Read more…
deriveChargeDensityPhymus_derQuanPhysics_moduleSubroutine

Calculate the charge density of a given set of elements

Read more…
deriveChargeDensityPhy_fromIndexmus_derQuanPhysics_moduleSubroutine

Calculate the charge density of a given idx

Read more…
deriveCurrentDensitymus_derQuanMSLiquid_moduleSubroutine

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_fromIndexmus_derQuanMSLiquid_moduleSubroutine

Calculate current density from species momentum

Read more…
deriveCurrentDensityPhymus_derQuanPhysics_moduleSubroutine

Calculate the current density of a given set of elements

Read more…
deriveCurrentDensityPhy_fromIndexmus_derQuanPhysics_moduleSubroutine

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

Read more…
deriveDensitymus_derQuan_moduleSubroutine

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_fromIndexmus_derQuan_moduleSubroutine

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…
deriveDensityPhymus_derQuanPhysics_moduleSubroutine

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

Read more…
deriveDensityPhy_fromIndexmus_derQuanPhysics_moduleSubroutine

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

Read more…
deriveElectric_FieldPhymus_derQuanPhysics_moduleSubroutine

Calculate the electric_field of a given set of elements

Read more…
deriveElectric_FieldPhy_fromIndexmus_derQuanPhysics_moduleSubroutine

Calculate the electrical field of a given idx

Read more…
deriveElectricfield_forElementmus_derQuanPoisson_moduleSubroutine

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_fromIndexmus_derQuanPoisson_moduleSubroutine

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_FromStatemus_derQuan_moduleSubroutine

This routine computes velocity from state array

Read more…
deriveEq_FromState_IsothermAcEqmus_derQuanIsothermAcEq_moduleSubroutine

This routine computes equil from state array

Read more…
deriveEqIncomp_FromStatemus_derQuanIncomp_moduleSubroutine

This routine computes equilibirium from state array Here it is assumed that rho0 = 1.0

Read more…
deriveEqMSGas_FromStatemus_derQuanMSGas_moduleSubroutine

This routine computes equilibrium from state array

Read more…
deriveEqMSLiquid_FromStatemus_derQuanMSLiquid_moduleSubroutine

This routine computes equilibrium from state array

Read more…
deriveEquilmus_derQuan_moduleSubroutine

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_fromAuxmus_derQuan_moduleSubroutine

This routine computes equilbrium from auxField

Read more…
deriveEquil_fromIndexmus_derQuan_moduleSubroutine

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_FromMacromus_derQuan_moduleSubroutine

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

Read more…
deriveEquil_FromMacro_IsothermAcEqmus_derQuanIsothermAcEq_moduleSubroutine

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

Read more…
deriveEquilIncompmus_derQuanIncomp_moduleSubroutine

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…
deriveEquilIncomp_fromAuxmus_derQuanIncomp_moduleSubroutine

This routine computes equilbrium from auxField

Read more…
deriveEquilIncomp_fromIndexmus_derQuanIncomp_moduleSubroutine

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…
deriveEquilIncomp_FromMacromus_derQuanIncomp_moduleSubroutine

This routine computes equilbrium from density and velocity

Read more…
deriveEquilIncomp_FromMacro_d3q19mus_derQuanIncomp_moduleSubroutine

This routine computes equilbrium from density and velocity

Read more…
deriveEquilIsoThermAcEq_fromAuxmus_derQuanIsothermAcEq_moduleSubroutine

This routine computes equilbrium from auxField

Read more…
deriveEquilMSGasmus_derQuanMSGas_moduleSubroutine

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

Read more…
deriveEquilMSGas_fromAuxmus_derQuanMSGas_moduleSubroutine

This routine computes equilbrium from auxField

Read more…
deriveEquilMSGas_FromMacromus_derQuanMSGas_moduleSubroutine

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

Read more…
deriveEquilMSLiquidmus_derQuanMSLiquid_moduleSubroutine

Equilibrium from density and momentum stored in auxField

deriveEquilMSLiquid_fromAuxmus_derQuanMSLiquid_moduleSubroutine

This routine computes equilbrium from auxField

Read more…
deriveEquilMSLiquid_FromMacromus_derQuanMSLiquid_moduleSubroutine

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

Read more…
deriveEquilNP_fromAuxmus_derQuanNernstPlanck_moduleSubroutine

This routine computes equilbrium from auxField

Read more…
deriveEquilPoisson_fromAuxmus_derQuanPoisson_moduleSubroutine

This routine computes equilbrium from auxField

Read more…
deriveEquilPS_fromAuxmus_derQuanPS_moduleSubroutine

This routine computes equilbrium from auxField

Read more…
deriveEquilPS_FromMacromus_derQuanPS_moduleSubroutine

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

Read more…
deriveEquilVelMSGasmus_derQuanMSGas_moduleSubroutine

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…
deriveEquilVelMSLiquidmus_derQuanMSLiquid_moduleSubroutine

Equilibrium velocity from density and momentum in auxField.

deriveEquilVelWTDF_MSLiquidmus_derQuanMSLiquid_moduleSubroutine

Equilibrium velocity from density and momentum in auxField with thermodynamic factor

deriveEquilWTDF_MSLiquidmus_derQuanMSLiquid_moduleSubroutine

Equilibrium from density and momentum in auxField with thermodynamic factor

deriveForcePhymus_derQuanPhysics_moduleSubroutine

Compute and convert following variable force into physical units

Read more…
deriveForcePhy_fromIndexmus_derQuanPhysics_moduleSubroutine

Calculate the bnd_force of a given idx

Read more…
deriveKEmus_derQuan_moduleSubroutine

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_fromIndexmus_derQuan_moduleSubroutine

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…
deriveKeIncompmus_derQuanIncomp_moduleSubroutine

Calculate kinetic energy from velocity in auxField

Read more…
deriveKeIncomp_fromIndexmus_derQuanIncomp_moduleSubroutine

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…
deriveKineEnerPhymus_derQuanPhysics_moduleSubroutine

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

deriveKineEnerPhy_fromIndexmus_derQuanPhysics_moduleSubroutine

Calculate the kinetic energy of a given idx

Read more…
deriveKinePressMSLiquidmus_derQuanMSLiquid_moduleSubroutine

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…
deriveKinePressPhymus_derQuanPhysics_moduleSubroutine

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

Read more…
deriveKinePressPhy_fromIndexmus_derQuanPhysics_moduleSubroutine

Calculate the kinematic pressure of a given idx

Read more…
deriveMassFracMSmus_derQuanMSLiquid_moduleSubroutine

mass fraction from density stored in auxField

deriveMixVelMSmus_derQuanMSLiquid_moduleSubroutine

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_fromIndexmus_derQuanMSLiquid_moduleSubroutine

Calculate mixture velocity from density from species momentum

Read more…
deriveMoleDensity_forElementmus_derQuanNernstPlanck_moduleSubroutine

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_fromIndexmus_derQuanNernstPlanck_moduleSubroutine

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…
deriveMoleDensityMSmus_derQuanMSLiquid_moduleSubroutine

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_fromIndexmus_derQuanMSLiquid_moduleSubroutine

Calculate mole density from species concentration for getValOfIndex

Read more…
deriveMoleDensityPhymus_derQuanPhysics_moduleSubroutine

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

Read more…
deriveMoleDensityPhy_fromIndexmus_derQuanPhysics_moduleSubroutine

Calculate the mole density of a given idx

Read more…
deriveMoleFluxMSmus_derQuanMSLiquid_moduleSubroutine

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

deriveMoleFluxMS_fromIndexmus_derQuanMSLiquid_moduleSubroutine

Calculate mole flux from species momentum for getValOfIndex

Read more…
deriveMoleFluxPhymus_derQuanPhysics_moduleSubroutine

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

Read more…
deriveMoleFluxPhy_fromIndexmus_derQuanPhysics_moduleSubroutine

Calculate the mole flux of a given idx

Read more…
deriveMoleFracMSmus_derQuanMSLiquid_moduleSubroutine

mole fraction from density stored in auxField

deriveMomentmus_derQuan_moduleSubroutine

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_FromStatemus_derQuanMSGas_moduleSubroutine

This routine computes momentum from state array

Read more…
deriveMomentaMSLiquid_FromStatemus_derQuanMSLiquid_moduleSubroutine

This routine computes momentum of all species from state array

Read more…
deriveMomentPhymus_derQuanPhysics_moduleSubroutine

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

Read more…
deriveMomentPhy_fromIndexmus_derQuanPhysics_moduleSubroutine

Calculate the momentum of a given idx

Read more…
deriveMomentummus_derQuan_moduleSubroutine

Calculate momentum from density and velocity stored in auxField

Read more…
deriveMomentum_fromIndexmus_derQuan_moduleSubroutine

Calculate Momentum from density and velocity in auxField.

Read more…
deriveMomentumIncompmus_derQuanIncomp_moduleSubroutine

Calculate momentum from velocity stored in auxField

Read more…
deriveMomentumIncomp_fromIndexmus_derQuanIncomp_moduleSubroutine

Calculate Momentum from density and velocity in auxField.

Read more…
deriveMomentumPhymus_derQuanPhysics_moduleSubroutine

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

Read more…
deriveMomentumPhy_fromIndexmus_derQuanPhysics_moduleSubroutine

Calculate the momentum of a given idx

Read more…
deriveMomMSGas_FromStatemus_derQuanMSGas_moduleSubroutine

This routine computes momentum from state array

Read more…
deriveMomMSLiquid_FromStatemus_derQuanMSLiquid_moduleSubroutine

This routine computes momentum from state array

Read more…
deriveNonEquilmus_derQuan_moduleSubroutine

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_fromIndexmus_derQuan_moduleSubroutine

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…
deriveNonEquilIncompmus_derQuanIncomp_moduleSubroutine

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…
deriveNonEquilIncomp_fromIndexmus_derQuanIncomp_moduleSubroutine

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…
derivePotentialPhymus_derQuanPhysics_moduleSubroutine

Calculate the potential of a given set of elements

Read more…
derivePotentialPhy_fromIndexmus_derQuanPhysics_moduleSubroutine

Calculate the potential of a given idx

Read more…
derivePressuremus_derQuan_moduleSubroutine

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

Read more…
derivePressure_fromIndexmus_derQuan_moduleSubroutine

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…
derivePressureMSmus_derQuanMSLiquid_moduleSubroutine

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, \

derivePressurePhymus_derQuanPhysics_moduleSubroutine

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

Read more…
derivePressurePhy_fromIndexmus_derQuanPhysics_moduleSubroutine

Calculate the pressure of a given idx

Read more…
deriveQCriterionPhymus_derQuanPhysics_moduleSubroutine

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

Read more…
deriveRho_FromStatemus_derQuan_moduleSubroutine

This routine computes density from state array

Read more…
deriveShearMagmus_derQuan_moduleSubroutine

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

Read more…
deriveShearRatemus_derQuan_moduleSubroutine

Calculate the shear rate

Read more…
deriveShearStressmus_derQuan_moduleSubroutine

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

Read more…
deriveSrc_chargeDensitymus_derQuanPoisson_moduleSubroutine

Calculate charge density source variable referred in config file

Read more…
deriveStrainRatemus_derQuan_moduleSubroutine

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_fromIndexmus_derQuan_moduleSubroutine

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…
deriveStrainRateIncompmus_derQuanIncomp_moduleSubroutine

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…
deriveStrainRateIncomp_fromIndexmus_derQuanIncomp_moduleSubroutine

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

Read more…
deriveStrainRatePhymus_derQuanPhysics_moduleSubroutine

Calculate the strain rate (or called rate of strain)

Read more…
deriveStrainRatePhy_fromIndexmus_derQuanPhysics_moduleSubroutine

Calculate the strain rate of a given idx

Read more…
deriveTempmus_derQuan_moduleSubroutine

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

Read more…
deriveTempPhymus_derQuanPhysics_moduleSubroutine

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

Read more…
deriveTempPhy_fromIndexmus_derQuanPhysics_moduleSubroutine

Calculate the temperature of a given idx

Read more…
deriveVel_FromPreColStatemus_derQuan_moduleSubroutine

This routine computes velocity from pre collision state array using Fetch

Read more…
deriveVel_FromStatemus_derQuan_moduleSubroutine

This routine computes velocity from state array

Read more…
deriveVelIncomp_FromPreColStatemus_derQuanIncomp_moduleSubroutine

This routine computes velocity from precollision state array using FETCH macro.

Read more…
deriveVelIncomp_FromStatemus_derQuanIncomp_moduleSubroutine

This routine computes velocity from state array

Read more…
deriveVelIncomp_FromState_d3q19mus_derQuanIncomp_moduleSubroutine

This routine computes velocity from state array

Read more…
deriveVelMSGas_FromStatemus_derQuanMSGas_moduleSubroutine

This routine computes velocity from state array

Read more…
deriveVelMSLiquid_FromStatemus_derQuanMSLiquid_moduleSubroutine

This routine computes velocity from state array

Read more…
deriveVelocitiesMSGas_FromStatemus_derQuanMSGas_moduleSubroutine

This routine computes velocity from state array

Read more…
deriveVelocitiesMSLiquid_FromStatemus_derQuanMSLiquid_moduleSubroutine

This routine computes velocities of all species from state array

Read more…
deriveVelocity_FromState_IsothermAcEqmus_derQuanIsothermAcEq_moduleSubroutine

This routine computes velocity from state array

Read more…
deriveVelocityMSmus_derQuanMSLiquid_moduleSubroutine

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_fromIndexmus_derQuanMSLiquid_moduleSubroutine

Calculate velocity from species density and momentum in auxField for getValOfIndex

Read more…
deriveVelocityPhymus_derQuanPhysics_moduleSubroutine

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

Read more…
deriveVelocityPhy_fromIndexmus_derQuanPhysics_moduleSubroutine

Calculate the velocity of a given idx

Read more…
deriveViscosityPhymus_derQuanPhysics_moduleSubroutine

Convert lattice viscosity to physical viscosity

Read more…
deriveWSS2Dmus_derQuan_moduleSubroutine
deriveWSS3Dmus_derQuan_moduleSubroutine

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

Read more…
derPressureIsothermAcEqmus_derQuanIsothermAcEq_moduleSubroutine

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

Read more…
derVelocityIsothermAcEqmus_derQuanIsothermAcEq_moduleSubroutine

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_benchmarkmus_control_moduleSubroutine
do_fast_singleLevelmus_control_moduleSubroutine

Control routine for an optimized workflow with reduced functionality.

Read more…
do_intpCoarserAndExchangemus_control_moduleSubroutine

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_intpFinerAndExchangemus_control_moduleSubroutine

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_nothingmus_bc_fluid_wall_moduleSubroutine

No comment yet!

Read more…
do_nothingmus_interpolate_debug_moduleSubroutine

Fill GhostFromFiner elements on my level with debug value

Read more…
do_nothing_arbimus_interpolate_debug_moduleSubroutine

Fill GhostFromFiner elements on my level with debug value

Read more…
do_recursive_multiLevelmus_control_moduleSubroutine

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_timingmus_tools_moduleSubroutine

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

dump_debug_infomus_debug_moduleSubroutine

Dump pdf values into debug files

dump_elemDepmus_interpolate_tools_moduleSubroutine

dump dependencies for one element

dump_FinerGhostsFromMemus_interpolate_tools_moduleSubroutine

check the dependencies from Coarser

dump_FinerGhostsFromMeBuffermus_interpolate_tools_moduleSubroutine

check the dependencies from Coarser

dump_intpListmus_interpolate_tools_moduleSubroutine

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

dump_intpListsmus_interpolate_tools_moduleSubroutine

check the dependencies from Finer

dump_level_timingmus_program_moduleSubroutine
dump_linear_partitionmus_tools_moduleSubroutine
dump_MyGhostsFromFinermus_interpolate_tools_moduleSubroutine

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

dump_timingmus_tools_moduleSubroutine

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

dumpPdfAllmus_debug_tools_moduleSubroutine

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

equilFromMacromus_derQuanMSLiquid_moduleFunction

derive equilibrium from macro

equilFromMacroWTDFmus_derQuanMSLiquid_moduleFunction

derive equilibrium from macro

equilVelFromMacromus_derQuanMSLiquid_moduleFunction

Equlibrium velocity from macro

equilVelFromMacroWTDFmus_derQuanMSLiquid_moduleFunction

Equlibrium velocity from macro with thermodynamic factor

exchange_tree_bcmus_dynLoadBal_moduleSubroutine
f_f_eq_regularized_2nd_ord_d2q9mus_d2q9_moduleSubroutine
f_f_eq_regularized_2nd_ord_d3q19mus_d3q19_moduleSubroutine
f_f_eq_regularized_2nd_ord_d3q27mus_d3q27_moduleSubroutine
f_f_eq_regularized_4th_ord_d2q9mus_d2q9_moduleSubroutine
f_f_eq_regularized_4th_ord_d3q19mus_d3q19_moduleSubroutine
f_f_eq_regularized_4th_ord_d3q19_corrmus_d3q19_moduleSubroutine
f_f_eq_regularized_4th_ord_d3q27mus_d3q27_moduleSubroutine
fill_bcBuffermus_bc_general_moduleSubroutine

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

fill_neighBuffermus_bc_general_moduleSubroutine

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

Read more…
fillArbiFinerGhostsFromMe_linearmus_interpolate_linear_moduleSubroutine

Interpolate auxiliary field from coarse source to fine target

Read more…
fillArbiFinerGhostsFromMe_linear2Dmus_interpolate_linear_moduleSubroutine

Interpolate auxiliary field from coarse source to fine target

Read more…
fillArbiFinerGhostsFromMe_quadmus_interpolate_quadratic_moduleSubroutine

Interpolate auxiliary field from coarse source to fine target

Read more…
fillArbiFinerGhostsFromMe_quad2Dmus_interpolate_quadratic_moduleSubroutine

Interpolate auxiliary field from coarse source to fine target

Read more…
fillArbiFinerGhostsFromMe_weighAvgmus_interpolate_average_moduleSubroutine

Interpolate auxiliary field from coarse source to fine target

Read more…
fillArbiMyGhostsFromFiner_avgmus_interpolate_average_moduleSubroutine

Interpolate auxiliary field from fine source to coarse target

Read more…
fillFinerGhostsFromMe_linear2D_feq_fneqmus_interpolate_linear_moduleSubroutine

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_linear2DIncomp_feq_fneqmus_interpolate_linear_moduleSubroutine

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_fneqmus_interpolate_linear_moduleSubroutine

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_linearIncomp_feq_fneqmus_interpolate_linear_moduleSubroutine

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_linearIncompLES_feq_fneqmus_interpolate_linear_moduleSubroutine

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_fneqmus_interpolate_linear_moduleSubroutine

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_fneqmus_interpolate_quadratic_moduleSubroutine

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_quad2DIncomp_feq_fneqmus_interpolate_quadratic_moduleSubroutine

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_fneqmus_interpolate_quadratic_moduleSubroutine

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_quadIncomp_feq_fneqmus_interpolate_quadratic_moduleSubroutine

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_quadIncompLES_feq_fneqmus_interpolate_quadratic_moduleSubroutine

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_fneqmus_interpolate_quadratic_moduleSubroutine

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_fneqmus_interpolate_average_moduleSubroutine

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

Read more…
fillFinerGhostsFromMe_weighAvg2DIncomp_feq_fneqmus_interpolate_average_moduleSubroutine

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

Read more…
fillFinerGhostsFromMe_weighAvg_feq_fneqmus_interpolate_average_moduleSubroutine

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

Read more…
fillFinerGhostsFromMe_weighAvgIncomp_feq_fneqmus_interpolate_average_moduleSubroutine

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

Read more…
fillFinerGhostsFromMe_weighAvgIncompLES_feq_fneqmus_interpolate_average_moduleSubroutine

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

Read more…
fillFinerGhostsFromMe_weighAvgLES_feq_fneqmus_interpolate_average_moduleSubroutine

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

Read more…
fillHelperElementsCoarseToFinemus_flow_moduleSubroutine

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

Read more…
fillHelperElementsFineToCoarsemus_flow_moduleSubroutine

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

Read more…
fillMyGhostsFromFiner_avg2D_feq_fneqmus_interpolate_average_moduleSubroutine

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_avg2DIncomp_feq_fneqmus_interpolate_average_moduleSubroutine

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_fneqmus_interpolate_average_moduleSubroutine

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_avgIncomp_feq_fneqmus_interpolate_average_moduleSubroutine

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_avgIncompLES_feq_fneqmus_interpolate_average_moduleSubroutine

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_fneqmus_interpolate_average_moduleSubroutine

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_BClistmus_construction_moduleSubroutine
find_possIntpOrderAndUpdateMySourcesmus_interpolate_moduleSubroutine

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

fricVel_musker_fixedPointmus_turb_wallFunc_moduleSubroutine

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

fricVel_musker_newtonmus_turb_wallFunc_moduleSubroutine

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

fricVel_powerLawmus_turb_wallFunc_moduleSubroutine

This routine computes friction velocity from explicit two equation Werner and Wengle wall model. 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.

Read more…
fricVel_reichardt_fixedPointmus_turb_wallFunc_moduleSubroutine

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

fricVel_reichardt_newtonmus_turb_wallFunc_moduleSubroutine

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

get_auxTimemus_timer_moduleInterface
get_auxTime_atLevelmus_timer_moduleFunction
get_auxTime_totalmus_timer_moduleFunction
get_bcBufferRatiomus_timer_moduleInterface
get_bcBufferRatio_atLevelmus_timer_moduleFunction
get_bcBufferRatio_totalmus_timer_moduleFunction
get_bcBufferTimemus_timer_moduleInterface
get_bcBufferTime_atLevelmus_timer_moduleFunction
get_bcBufferTime_totalmus_timer_moduleFunction
get_boundaryRatiomus_timer_moduleFunction
get_boundaryTimemus_timer_moduleInterface
get_boundaryTime_byIDmus_timer_moduleFunction
get_boundaryTime_totalmus_timer_moduleFunction
get_communicateRatiomus_timer_moduleFunction
get_communicateTimemus_timer_moduleFunction
get_computeRatiomus_timer_moduleInterface
get_computeRatio_atLevelmus_timer_moduleFunction
get_computeRatio_totalmus_timer_moduleFunction
get_computeTimemus_timer_moduleInterface
get_computeTime_atLevelmus_timer_moduleFunction
get_computeTime_totalmus_timer_moduleFunction
get_intpFromCoarserRatiomus_timer_moduleInterface
get_intpFromCoarserRatio_atLevelmus_timer_moduleFunction
get_intpFromCoarserRatio_totalmus_timer_moduleFunction
get_intpFromCoarserTimemus_timer_moduleInterface
get_intpFromCoarserTime_atLevelmus_timer_moduleFunction
get_intpFromCoarserTime_totalmus_timer_moduleFunction
get_intpFromFinerRatiomus_timer_moduleInterface
get_intpFromFinerRatio_atLevelmus_timer_moduleFunction
get_intpFromFinerRatio_totalmus_timer_moduleFunction
get_intpFromFinerTimemus_timer_moduleInterface
get_intpFromFinerTime_atLevelmus_timer_moduleFunction
get_intpFromFinerTime_totalmus_timer_moduleFunction
get_intpRatiomus_timer_moduleFunction
get_intpTimemus_timer_moduleFunction
get_mainLoopTimemus_timer_moduleFunction
get_momentmus_moments_moduleFunction

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_momentVectormus_moments_moduleFunction

get the moment vector to calculate the moment from the pdf

get_relaxTimemus_timer_moduleInterface
get_relaxTime_atLevelmus_timer_moduleFunction
get_relaxTime_totalmus_timer_moduleFunction
get_stageRatiomus_timer_moduleFunction
get_stageTimemus_timer_moduleFunction
getConversionFacmus_solSpecHelpers_moduleFunction

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

getDensitymus_derivedQuantities_module2Interface
getDensity_forElemFromStatemus_derivedQuantities_module2Function

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

getDensity_forPdfSubsetmus_derivedQuantities_module2Function

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

getEqByDensVelmus_derivedQuantities_module2Function

Calculate the equilibrium distribution function in all directions

Read more…
getEquilibriummus_derivedQuantities_module2Interface
getEquilibrium_forElemfromStatemus_derivedQuantities_module2Function

Calculate the equilibrium distribution function in all directions

Read more…
getEquilibrium_forPdfSubsetmus_derivedQuantities_module2Function

Calculate the equilibrium distribution function in all directions

Read more…
getEquilibriumIncompmus_derivedQuantities_module2Function

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

Read more…
getFieldPrefixesmus_solSpecHelpers_moduleFunction

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

getFieldVariablemus_solSpecHelpers_moduleInterface
getFieldVariable_arraymus_solSpecHelpers_moduleFunction

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

getFieldVariable_scalarmus_solSpecHelpers_moduleFunction

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

getGradRhoU3_1Dmus_gradData_moduleFunction

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_2Dmus_gradData_moduleFunction

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_3Dmus_gradData_moduleFunction

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_3Dmus_gradData_moduleFunction

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_1Dmus_gradData_moduleFunction

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_2Dmus_gradData_moduleFunction

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_3Dmus_gradData_moduleFunction

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_1Dmus_gradData_moduleFunction

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_2Dmus_gradData_moduleFunction

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_3Dmus_gradData_moduleFunction

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

getHermitepolynomialsmus_derivedQuantities_module2Subroutine

This function computes Hermite polinomial. It gives in output minimum

getHermitepolynomials_D3Q19mus_derivedQuantities_module2Subroutine

This function computes Hermite polinomial. It gives in output minimum

getIdentifyCharmus_solSpecHelpers_moduleFunction

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

getNEq_acousticmus_derivedQuantities_module2Function

Setting the non-equilibrium part based on the acoustic scaling

Read more…
getNEq_diffusivemus_derivedQuantities_module2Function

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

Read more…
getNFieldsmus_solSpecHelpers_moduleFunction

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

getNonEqFac_intpmus_derivedQuantities_module2Function

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

getNonEqFac_intp_coarse_to_finemus_derivedQuantities_module2Function

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

getNonEqFac_intp_fine_to_coarsemus_derivedQuantities_module2Function

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

getShearRatemus_derivedQuantities_module2Function

Calculate the Shear Rate

Read more…
getVariable_FromTablemus_solSpecHelpers_moduleFunction

Get the value of variable inside the table name 'key' in scheme KM:

Read more…
getVelocitymus_derivedQuantities_module2Interface
getVelocity_forElemFromState_noForcemus_derivedQuantities_module2Function

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_forPdfSubsetmus_derivedQuantities_module2Function

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

getVelocity_forPdfSubset_incompmus_derivedQuantities_module2Function

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

getVelocity_incompmus_derivedQuantities_module2Interface
getWeightsmus_solSpecHelpers_moduleFunction

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

getWSSmus_derQuan_moduleFunction

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

init_advRelmus_flow_moduleSubroutine

Choose the relaxation model

init_boundary_singlemus_bc_general_moduleSubroutine

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

Read more…
init_cxDirWeightedAvgmus_interpolate_header_moduleFunction

Initialize stencil for weighted average interpolation

init_enrtl_locmus_eNRTL_moduleInterface

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

init_intpArraysPerLevelmus_interpolate_moduleSubroutine
init_levelBuffersmus_construction_moduleSubroutine

Initialize the communication buffers for a single level

init_momentsBCmus_bc_general_moduleSubroutine

Initialize the values required for the moments BC

init_nrbcmus_bc_general_moduleSubroutine

Initialize the values required for the characteristic boundary conditions

Read more…
init_qValsmus_bc_general_moduleSubroutine

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_recvBuffersmus_construction_moduleSubroutine

Create the communication buffers

Read more…
init_sendBuffersmus_construction_moduleSubroutine

Create the communication buffers

Read more…
init_transformation_matrix_fluidmus_moments_moduleSubroutine

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_MSmus_moments_moduleSubroutine

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

inlet_nrbcmus_bc_fluid_moduleSubroutine

Characteristic-based non-reflective inlet boundary conditions

Read more…
inlet_nrbc_incompmus_bc_fluid_moduleSubroutine

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

Read more…
inlet_pasScalmus_bc_passiveScalar_moduleSubroutine

Inlet boundary conditions for passive scalar transport (Flekkoy).

Read more…
interpolate_dumpmus_interpolate_header_moduleSubroutine

Dump interpolation method to logUnit

kpc_i_bgmus_compute_cumulant_moduleFunction

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

kpc_ij_gmus_compute_cumulant_moduleFunction

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

kpc_ijkmus_compute_cumulant_moduleFunction

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

kum_abgmus_compute_cumulant_moduleFunction

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

kum_i_bgmus_compute_cumulant_moduleFunction

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

kum_ij_gmus_compute_cumulant_moduleFunction

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

load_turbChanForcemus_source_type_moduleSubroutine

Load shape, bulk velocity and height for turbulent channel force

mfr_bouncebackmus_bc_fluid_moduleSubroutine

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

Read more…
mfr_eqmus_bc_fluid_moduleSubroutine

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

Read more…
moleDens_neumannmus_bc_nernstPlanck_moduleSubroutine

No comment yet!

Read more…
moleDens_neumann_curvedmus_bc_nernstPlanck_moduleSubroutine

No comment yet!

Read more…
moleDens_nonEqExpolmus_bc_nernstPlanck_moduleSubroutine

No comment yet!

Read more…
moleDens_nonEqExpol_curvedmus_bc_nernstPlanck_moduleSubroutine

No comment yet!

Read more…
moments_inflowmus_bc_fluid_experimental_moduleSubroutine

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

Read more…
moments_outflowmus_bc_fluid_experimental_moduleSubroutine

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

Read more…
moments_wallmus_bc_fluid_moduleSubroutine

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

Read more…
momentumFromMacroLSEmus_derQuanMSLiquid_moduleFunction

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

momentumFromMacroLSE_WTDFmus_derQuanMSLiquid_moduleFunction

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

mrt_advRel_d2q9mus_d2q9_moduleSubroutine

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

Read more…
mrt_advRel_d2q9_incompmus_d2q9_moduleSubroutine

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

Read more…
mrt_advRel_d3q19mus_mrt_d3q19_moduleSubroutine

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

Read more…
mrt_advRel_d3q19_genericmus_mrt_d3q19_moduleSubroutine

No comment yet!

Read more…
mrt_advRel_d3q19_incompmus_mrt_d3q19_moduleSubroutine

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

Read more…
mrt_advRel_d3q19_incomp_genericmus_mrt_d3q19_moduleSubroutine

No comment yet!

Read more…
mrt_advRel_d3q19f3_MSLiquidmus_MSLiquid_moduleSubroutine

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

Read more…
mrt_advRel_d3q19f3_MSLiquid_WTDFmus_MSLiquid_moduleSubroutine

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

Read more…
mrt_advRel_genericmus_mrt_d3q19_moduleSubroutine

Unoptimized explicit implementation

Read more…
mrt_advRel_incomp_genericmus_mrt_d3q19_moduleSubroutine

Unoptimized explicit implementation

Read more…
mrt_advRel_MSLiquid_genericmus_MSLiquid_moduleSubroutine

Unoptimized Advection relaxation routine for the multispecies BGK model

Read more…
mrt_advRel_MSLiquid_generic_WTDFmus_MSLiquid_moduleSubroutine

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

Read more…
mrt_bgkmus_mrtRelaxation_moduleFunction

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

mrt_d2q9mus_mrtRelaxation_moduleFunction

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_incompmus_mrtRelaxation_moduleFunction

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_d3q15mus_mrtRelaxation_moduleFunction

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_d3q19mus_mrtRelaxation_moduleFunction

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_d3q27mus_mrtRelaxation_moduleFunction

This function returns mrt relaxation diagonal matrix for d3q27 layout

mus_abortCriteria_loadmus_abortCriteria_moduleSubroutine

Loading Musubi specific abort criteria from the abort_criteria table.

Read more…
mus_access_auxFieldVar_forElementmus_auxFieldVar_moduleSubroutine

Return the solver aux variable for a given set of elements

Read more…
mus_access_state_forElementmus_stateVar_moduleSubroutine

Return the solver state variable for a given set of elements

Read more…
mus_access_stateFetch_forElementmus_stateVar_moduleSubroutine

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

Read more…
mus_access_stateFetch_now_forElementmus_stateVar_moduleSubroutine

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

Read more…
mus_accessVar_setupIndicesmus_stateVar_moduleSubroutine

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_refinemus_mesh_adaptation_moduleSubroutine

Wrap up the routines required for dynamic load balancing

mus_add_BcghostElemmus_construction_moduleSubroutine
mus_addDynSponFldToAuxField_fluidmus_auxFieldVar_moduleSubroutine

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_MSLmus_auxFieldVar_moduleSubroutine

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_WTDFmus_auxFieldVar_moduleSubroutine

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_fluidmus_auxFieldVar_moduleSubroutine

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

mus_addForceToAuxField_fluidIncompmus_auxFieldVar_moduleSubroutine

This routine add force to velocity in auxField for incompressible model

mus_addForceToAuxField_MSLmus_auxFieldVar_moduleSubroutine

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_WTDFmus_auxFieldVar_moduleSubroutine

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_D2Q9mus_auxFieldVar_moduleSubroutine

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_D3Q19mus_auxFieldVar_moduleSubroutine

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_D3Q27mus_auxFieldVar_moduleSubroutine

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_fluidmus_auxFieldVar_moduleSubroutine

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_dummymus_source_type_moduleSubroutine

Dummy routine for add source to auxField

mus_addSrcToAuxField_poissonmus_auxFieldVar_moduleSubroutine

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_fluidmus_auxFieldVar_moduleSubroutine

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_alloc_bouzidimus_bc_header_moduleSubroutine
mus_alloc_fieldBCmus_bc_header_moduleSubroutine
mus_append_auxFieldmus_variable_moduleSubroutine

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

mus_append_bcVarmus_bc_var_moduleSubroutine

This routine adds boundary variables for tracking

mus_append_derLiquidMixVarmus_derQuanMSLiquid_moduleSubroutine

Append mixture variables for multicomponent liquid models

mus_append_derMixVar_MSmus_derQuanMSLiquid_moduleSubroutine

Append mixture variables for multicomponent models

mus_append_derVar_fluidmus_derQuan_moduleSubroutine

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

mus_append_derVar_fluidIncompmus_derQuanIncomp_moduleSubroutine

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

mus_append_derVar_isotherm_acEqmus_derQuanIsothermAcEq_moduleSubroutine

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

mus_append_derVar_lbmPSmus_derQuanPS_moduleSubroutine

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_MSGasmus_derQuanMSGas_moduleSubroutine

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

mus_append_derVar_MSLiquidmus_derQuanMSLiquid_moduleSubroutine

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

Read more…
mus_append_derVar_physicsmus_derQuanPhysics_moduleSubroutine

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

mus_append_derVar_poissonmus_derQuanPoisson_moduleSubroutine

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_materialVarmus_material_var_moduleSubroutine

subroutine to add material variable

mus_append_readVarAsStateVarmus_variable_moduleSubroutine

Append variable read from restart file as state variables

mus_append_sourceVarmus_variable_moduleSubroutine

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

mus_append_stateVarmus_variable_moduleSubroutine

Append state variable depends on the scheme kind

Read more…
mus_append_turbVarmus_turbulence_var_moduleSubroutine

subroutine to add variables for turbulence model

mus_apply_sourceTermsmus_source_moduleSubroutine

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

mus_applyForce_Xmus_IBM_moduleSubroutine

This subroutine applies the force calculated to the eulerian elements.

mus_applySrc_dummymus_source_type_moduleSubroutine

Dummy routine for apply source

mus_assign_calcAuxField_ptrmus_auxFieldVar_moduleSubroutine

This routine assign function pointer to compute auxField var

mus_assign_GradCalculation_ptrmus_gradData_moduleFunction

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

mus_assign_mrt_ptrmus_mrtRelaxation_moduleSubroutine

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_ptrmus_nonNewtonian_moduleSubroutine

This routine assigns function pointer to compute non-Newtonian viscosity

mus_assign_turbVisc_ptrmus_turb_viscosity_moduleSubroutine

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

mus_auxFieldVar_forPointmus_auxFieldVar_moduleSubroutine

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_fromIndexmus_auxFieldVar_moduleSubroutine

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_balancemus_dynLoadBal_moduleSubroutine

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_bannermus_aux_moduleSubroutine

Initialize musubi solverHead and print musubi banner to screen

mus_BC_timingmus_tools_moduleSubroutine

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

mus_build_BCStencilsmus_construction_moduleSubroutine

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_IBMStencilsmus_construction_moduleSubroutine

This routine build and append IBM stencils to scheme stencil array

mus_build_minBcIDmus_geom_moduleSubroutine

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_posInPropmus_geom_moduleSubroutine

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

mus_build_varSysmus_variable_moduleSubroutine

Build global variable system for Musubi

mus_buildBuffIBMmus_IBM_moduleSubroutine
mus_calc_commAmountmus_statistics_moduleSubroutine

Calculate the number of links to be communicated

mus_calc_MS_DiffMatrixmus_eNRTL_moduleInterface
mus_calc_MS_DiffMatrixmus_eNRTL_moduleInterface
mus_calc_MS_DiffMatrix_singlemus_eNRTL_moduleSubroutine

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

mus_calc_MS_DiffMatrix_singlemus_eNRTL_moduleSubroutine

Dummy routine which sets diffusivity coeff matrix to diagonal matrix

mus_calc_nElemsmus_pdf_moduleSubroutine

Compute nElems for different types

mus_calc_thermFactormus_eNRTL_moduleInterface
mus_calc_thermFactormus_eNRTL_moduleInterface
mus_calc_thermFactor_singlemus_eNRTL_moduleSubroutine

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

mus_calc_thermFactor_singlemus_eNRTL_moduleSubroutine

Dummy routine which sets thermodynamic factor matrix to diagonal matrix

mus_calcAuxField_dummymus_auxFieldVar_moduleSubroutine

Dummy routine for calcAuxField

mus_calcAuxField_fluidmus_auxFieldVar_moduleSubroutine

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

mus_calcAuxField_fluid_d2q9mus_auxFieldVar_moduleSubroutine

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

mus_calcAuxField_fluid_d3q19mus_auxFieldVar_moduleSubroutine

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

mus_calcAuxField_fluid_d3q27mus_auxFieldVar_moduleSubroutine

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

mus_calcAuxField_fluidIncompmus_auxFieldVar_moduleSubroutine

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

mus_calcAuxField_fluidIncomp_d2q9mus_auxFieldVar_moduleSubroutine

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

mus_calcAuxField_fluidIncomp_d3q19mus_auxFieldVar_moduleSubroutine

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

mus_calcAuxField_fluidIncomp_d3q27mus_auxFieldVar_moduleSubroutine

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

mus_calcAuxField_MSmus_auxFieldVar_moduleSubroutine

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_planckmus_auxFieldVar_moduleSubroutine

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

mus_calcAuxField_zerothMomentmus_auxFieldVar_moduleSubroutine

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_calcAuxFieldAndExchangemus_auxField_moduleSubroutine

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

mus_calcBndForcemus_bndForce_moduleSubroutine

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

mus_calcBndForce_dummymus_bndForce_moduleSubroutine

Dummy routine for calcBndForce

mus_calcBndForce_wallmus_bndForce_moduleSubroutine

This routine computes bndForce on wall boundary elements

mus_calcBndForce_wall_libbmus_bndForce_moduleSubroutine

This routine computes bndForce on wall_libb boundary elements

mus_calcForce_Xmus_IBM_moduleSubroutine

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

Read more…
mus_calcOmegaFromViscmus_relaxationParam_moduleFunction

This function compute relaxation paramter omega from viscosity

mus_calculate_speed_of_soundmus_scheme_layout_moduleFunction

Calculate lattice speed of sound for given stencil

mus_check_allWallmus_field_moduleFunction

Check if a BC is wall or symmetry for all fields

mus_check_omegaKinemus_relaxationParam_moduleSubroutine

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_constructmus_construction_moduleSubroutine

Initialize Musubi data strucutres based on data provided by Treelm

Read more…
mus_construct_connectivitymus_connectivity_moduleSubroutine

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

Read more…
mus_corrForce_Xkmus_IBM_moduleSubroutine
mus_corrVel_Xmus_IBM_moduleSubroutine

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_funcStrmus_physics_moduleSubroutine

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

mus_create_poss_srcVarmus_source_type_moduleSubroutine

Routine initialize possible source variable depends on scheme kind

mus_create_poss_transVarmus_transport_var_moduleSubroutine

Routine initialize possible transport variable depends on scheme kind

mus_define_d1q3mus_scheme_layout_moduleSubroutine

This subroutine sets the parameters for the predefined d2q9 stencil.

mus_define_d2q5mus_scheme_layout_moduleSubroutine

This subroutine sets the parameters for the predefined d2q5 stencil.

mus_define_d2q9mus_scheme_layout_moduleSubroutine

This subroutine sets the parameters for the predefined d2q9 stencil.

mus_define_d3q13mus_scheme_layout_moduleSubroutine

This subroutine sets the parameters for the predefined d3q13 stencil.

mus_define_d3q19mus_scheme_layout_moduleSubroutine

This subroutine sets the parameters for the predefined d3q19 stencil.

mus_define_d3q27mus_scheme_layout_moduleSubroutine

This subroutine sets the parameters for the predefined d3q27 stencil.

mus_define_d3q6mus_scheme_layout_moduleSubroutine

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

mus_define_d3q7mus_scheme_layout_moduleSubroutine

This subroutine sets the parameters for the predefined d3q7 stencil.

mus_define_layoutmus_scheme_layout_moduleSubroutine

This routine defines layout for predefined stencils

mus_derEquilIsothermAcEqmus_derQuanIsothermAcEq_moduleSubroutine

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

Read more…
mus_derive_FromMacro_dummymus_derVarPos_moduleSubroutine
mus_derive_FromPreColState_dummymus_derVarPos_moduleSubroutine
mus_derive_FromState_dummymus_derVarPos_moduleSubroutine
mus_derivedensitymus_derQuan_moduleSubroutine

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_deriveElectricFieldmus_derQuanPoisson_moduleSubroutine

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

Read more…
mus_deriveEquilmus_derQuan_moduleSubroutine

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

Read more…
mus_deriveEquilIncompmus_derQuanIncomp_moduleSubroutine

Calculate the equlibrium of a given element number with the given input state vector for incompressible model

Read more…
mus_deriveMoleDensitymus_derQuanNernstPlanck_moduleSubroutine

Calculate the potential of a given set of pdfs of elements

Read more…
mus_deriveMomentmus_derQuan_moduleSubroutine

For 2D only!

Read more…
mus_deriveNonEquilmus_derQuan_moduleSubroutine

Calculate the Non-Equlibrium

mus_deriveNonEquilIncompmus_derQuanIncomp_moduleSubroutine

Calculate the Non-Equlibrium

mus_deriveStrainRatemus_derQuan_moduleSubroutine

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

Read more…
mus_deriveStrainRateIncompmus_derQuanIncomp_moduleSubroutine

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

Read more…
mus_deriveVar_forPointmus_varSys_moduleSubroutine

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_derVelocityIsothermAcEqmus_derQuanIsothermAcEq_moduleSubroutine

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

Read more…
mus_destroy_stencilmus_scheme_layout_moduleSubroutine

Destroy the stencil

mus_dump_levelDescIntp_nElemsmus_interpolate_moduleSubroutine

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

mus_dump_momentsmus_moments_moduleSubroutine

Dump moments matrix: toPDF and toMoment

mus_dumpDatamus_aux_moduleSubroutine

This routine dumps tracking and restart when timeControl is active

mus_dumpWeightsmus_weights_moduleSubroutine

Dump weights to a file.

mus_field_cleanupmus_field_moduleSubroutine

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_getSymmetricBCsmus_field_moduleSubroutine

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

mus_field_out_scalmus_field_moduleSubroutine

write single field into a lua file

mus_field_prop_outmus_field_prop_moduleSubroutine

write field prop into a lua file

mus_fieldBC_cleanupmus_bc_header_moduleSubroutine

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

mus_fields_outmus_field_moduleInterface

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

mus_fields_out_vecmus_field_moduleSubroutine

write array of fields into a lua file

mus_fillNeigh_surfDatamus_IBM_moduleSubroutine

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_finalizemus_program_moduleSubroutine

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_layoutmus_scheme_layout_moduleSubroutine

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

mus_finishIBMmus_IBM_moduleSubroutine

This routine dumps the timings%timedat to disc

mus_fluid_cleanupmus_fluid_moduleSubroutine

This routines act as a destructor for fluid type

mus_fluid_dumpmus_fluid_moduleSubroutine
mus_fluid_save2luamus_fluid_moduleSubroutine

write fluid prop into a lua file

mus_free_IBMDatamus_IBM_moduleSubroutine

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

mus_generic_fromPDF_forElementmus_varSys_moduleSubroutine

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_fromIndexmus_varSys_moduleSubroutine

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_geomIncrmus_geomIncr_moduleSubroutine

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_loadmus_geomIncrHead_moduleSubroutine

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_singlemus_geomIncrHead_moduleSubroutine

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_ptrmus_varSys_moduleFunction

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_fromBCmus_bc_general_moduleSubroutine

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_timerHandlesmus_timer_moduleFunction

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

mus_getSrcElemPosForIntpmus_connectivity_moduleSubroutine
mus_getWeightsmus_weights_moduleSubroutine

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

Read more…
mus_hvs_config_loadmus_hvs_config_moduleSubroutine

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_constructmus_hvs_construction_moduleSubroutine

Initialize Musubi data strucutres based on data provided by Treelm

Read more…
mus_hvs_init_auxmus_hvs_aux_moduleSubroutine

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

Read more…
mus_hvs_load_solverDatamus_hvs_config_moduleSubroutine

This routines load solver data from config file except tracking

mus_IBM_buildSendRecv_Xkmus_IBM_moduleSubroutine

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

mus_IBM_commNewPosmus_IBM_moduleSubroutine

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

mus_IBM_fillRecvPos_Xmus_IBM_moduleSubroutine
mus_IBM_fillSendPos_Xmus_IBM_moduleSubroutine
mus_IBM_getSurfVelmus_IBM_moduleSubroutine

This routine calculates the surface velocity for all local xk.

mus_IBM_prepareSendRecv_Xmus_IBM_moduleSubroutine

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_setParentIDsmus_IBM_moduleSubroutine

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

mus_IBMFinishBuffmus_IBM_moduleSubroutine

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_iMomVectormus_moments_moduleFunction

The integer moment vector for a given cxDir and order.

Read more…
mus_inamuro_IBMmus_IBM_moduleSubroutine

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_inamuroInimus_IBM_moduleSubroutine

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_absorbLayermus_absorbLayer_moduleSubroutine

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_fluidmus_initFluid_moduleSubroutine

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

mus_init_advRel_fluidIncompmus_initFluidIncomp_moduleSubroutine

Initialize the relaxation model for lbm incompressible model

mus_init_advRel_isotherm_acEqmus_initIsothermAcEq_moduleSubroutine

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

mus_init_advRel_lbm_psmus_initLBMPS_moduleSubroutine

Initialize the relaxation model for lbm passive scalar scheme kind

mus_init_advRel_multispecies_gasmus_initMultispecies_moduleSubroutine

Initialize the relaxation model for multispecies gas model

mus_init_advRel_multispecies_liquidmus_initMultispecies_moduleSubroutine

Initialize the relaxation model for multispecies liquid model

mus_init_advRel_nernstPlanckmus_initNernstPlanck_moduleSubroutine

Initialize the relaxation model for lbm poisson equation

mus_init_advRel_PBLinearmus_initPoisson_moduleSubroutine

Initialize the relaxation model for lbm poisson equation

mus_init_advRel_PBnonLinearmus_initPoisson_moduleSubroutine

Initialize the relaxation model for lbm poisson equation

mus_init_advRel_Poissonmus_initPoisson_moduleSubroutine

Initialize the relaxation model for lbm poisson equation

mus_init_auxmus_aux_moduleSubroutine

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

Read more…
mus_init_auxFieldArraysmus_auxField_moduleSubroutine

This routine initialize auxField var val array and communication buffers

mus_init_bc_elemsmus_bc_header_moduleSubroutine
mus_init_bcTimermus_timer_moduleSubroutine
mus_init_bndForcemus_bndForce_moduleSubroutine

This routine initialize bndForce array assign function pointer to calculate bndForce

mus_init_boundarymus_bc_general_moduleSubroutine

Check prerequisite for multi-species boundary conditions

mus_init_byICmus_flow_moduleSubroutine

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

mus_init_controlmus_control_moduleSubroutine

This routines sets the function pointer to main control routine

Read more…
mus_init_eNRTLmus_eNRTL_moduleFunction

This function loads property file using external c-function

mus_init_eNRTLmus_eNRTL_moduleFunction

Dummy function to init_enrtl

mus_init_flowmus_flow_moduleSubroutine

Initialize flow field depends on read restart or initial condition

mus_init_fluidmus_fluid_moduleSubroutine

This routine initilizes fluid visocity and relaxation paramters for each level

mus_init_geomIncrmus_geomIncr_moduleSubroutine

This subroutine initializes the geometry increment.

mus_init_gradDatamus_gradData_moduleSubroutine

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

mus_init_hrrCorrectionmus_source_moduleSubroutine

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_IBMmus_IBM_moduleSubroutine

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_IBMDatamus_IBM_moduleSubroutine

This subroutine initializes all arrays in the mus_IBM_tmpData_type.

mus_init_interpolatemus_interpolate_moduleSubroutine

This subroutine initialzes the interpolation

Read more…
mus_init_isotherm_acEqmus_flow_moduleSubroutine

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

mus_init_latticeUnitmus_param_moduleSubroutine

This routine initialize lattice dx and dt

mus_init_layoutmus_scheme_layout_moduleSubroutine

Initialize growing array of stencils

mus_init_levelDescIntpArraysmus_interpolate_moduleSubroutine

Initialize levelwise ghost and source list for interpolation

mus_init_levelTimermus_timer_moduleSubroutine
mus_init_longBuffersmus_comm_moduleSubroutine

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_mainTimermus_timer_moduleSubroutine

Timers initialization routine for whatever

mus_init_momentsmus_moments_moduleSubroutine

Initialize the moment space

mus_init_MSGasmus_flow_moduleSubroutine

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

Read more…
mus_init_MSLiquidmus_flow_moduleSubroutine

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

mus_init_nernst_planckmus_flow_moduleSubroutine

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

mus_init_passiveScalarmus_flow_moduleSubroutine

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

mus_init_pdfmus_flow_moduleSubroutine

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_poissonmus_flow_moduleSubroutine

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

Read more…
mus_init_relaxParammus_relaxationParam_moduleSubroutine

This routine initialize relaxation parameter

mus_init_schememus_scheme_moduleSubroutine

Initialize single scheme stencil and variable system

mus_init_sourceTermsmus_source_moduleSubroutine

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

mus_init_trackermus_tracking_moduleSubroutine

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_varmus_transport_var_moduleSubroutine

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

mus_init_turb_wallFuncmus_bc_general_moduleSubroutine

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_turbChanForcemus_source_moduleSubroutine

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

mus_init_turbulenceDatamus_turbulence_moduleSubroutine

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

mus_init_varSys_solverDatamus_varSys_moduleSubroutine
mus_initAuxFieldmus_flow_moduleSubroutine

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_initAuxFieldFluidAndExchangemus_auxField_moduleSubroutine

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

mus_initializemus_program_moduleSubroutine

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

Read more…
mus_interpolate_linear2D_leastSqmus_interpolate_linear_moduleFunction

Bilinear interpolation for a vector quantity phi

mus_interpolate_linear3D_leastSqmus_interpolate_linear_moduleFunction

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

mus_interpolate_outmus_interpolate_header_moduleSubroutine

Dump interpolation method to lua

mus_interpolate_quad2D_leastSqmus_interpolate_quadratic_moduleFunction

Biquadratic interpolation for a vector quantity phi

mus_interpolate_quad3D_leastSqmus_interpolate_quadratic_moduleFunction

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

mus_intp_errormus_interpolate_verify_moduleSubroutine

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

mus_intp_getPdfs_D3Q27mus_d3q27_moduleFunction

This function returns pdfs from state

mus_intp_update_depFromCoarsermus_interpolate_moduleSubroutine

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_depFromFinermus_interpolate_moduleSubroutine

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_intpAuxFieldCoarserAndExchangemus_auxField_moduleSubroutine

This routine interpolate auxField variable for ghostFromFiner and exchange halos

mus_intpAuxFieldFinerAndExchangemus_auxField_moduleSubroutine

This routine interpolate auxField variable for ghostFromCoarser and exchange halos

mus_intpVel_Xkmus_IBM_moduleSubroutine

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_absorbLayermus_absorbLayer_moduleSubroutine

This routine load additional information for absorblayer

mus_load_bcmus_bc_header_moduleSubroutine

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

mus_load_bc_datamus_geom_moduleSubroutine

This routine invokes the treelm routines to load the boundary conditions

mus_load_configmus_config_moduleSubroutine

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_propmus_field_prop_moduleSubroutine

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

mus_load_field_singlemus_field_moduleSubroutine

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_fieldBaseInfosmus_field_moduleSubroutine

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_fieldsmus_field_moduleSubroutine

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

Read more…
mus_load_fluidmus_fluid_moduleSubroutine

Read in the fluid property from the LUA parameter file

Read more…
mus_load_geommus_geom_moduleSubroutine

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_IBMmus_IBM_moduleSubroutine

Load the IBM information from the lua config file.

Read more…
mus_load_IBM_singlemus_IBM_moduleSubroutine

Load a single IBM table from the config file.

mus_load_interpolatemus_interpolate_header_moduleSubroutine

Read in the type of interpolation scheme

Read more…
mus_load_mixturemus_mixture_moduleSubroutine

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. KM:

Read more…
mus_load_nernstPlanckmus_nernstPlanck_moduleSubroutine

load input to solve nernst_planck equation

mus_load_newLayoutmus_scheme_layout_moduleSubroutine

load a new stencil definition from the lua file

Read more…
mus_load_parammus_param_moduleSubroutine

load global parameter from conf

Read more…
mus_load_physicsmus_physics_moduleSubroutine

This routine loads the physics table from musubi config file

mus_load_poissonmus_poisson_moduleSubroutine

load input to solve poisson equation

mus_load_poissonBoltzmannmus_poisson_moduleSubroutine

Load input to solve poisson boltzmann equation

mus_load_schememus_scheme_moduleSubroutine

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

Read more…
mus_load_scheme_headermus_scheme_header_moduleSubroutine

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

Read more…
mus_load_source_varmus_source_type_moduleSubroutine

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

mus_load_speciesmus_species_moduleSubroutine

this routines load species table from config file

Read more…
mus_load_transport_varmus_transport_var_moduleSubroutine

Routine load musubi transport variables

mus_load_turb_wallFuncmus_turb_wallFunc_moduleSubroutine

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

mus_load_turbulencemus_turbulence_moduleSubroutine

load turbulence table

mus_mixture_outmus_mixture_moduleSubroutine

This routine write mixture properties into lua file

mus_nernstPlanck_advRel_genericmus_compute_nernstPlanck_moduleSubroutine

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_dumpmus_nonNewtonian_moduleSubroutine

Dump nonNewtonian (CY) parameters to outUnit

mus_nNwtn_CS_loadmus_nonNewtonian_moduleSubroutine

Read in the nonNewtonian Casson model parameters from Lua file

mus_nNwtn_CS_savemus_nonNewtonian_moduleSubroutine

write nonNewtonian Casson parameters into a lua file

mus_nNwtn_CY_dumpmus_nonNewtonian_moduleSubroutine

Dump nonNewtonian (CY) parameters to outUnit

mus_nNwtn_CY_loadmus_nonNewtonian_moduleSubroutine

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

mus_nNwtn_CY_savemus_nonNewtonian_moduleSubroutine

write nonNewtonian (CY) parameters into a lua file

mus_nNwtn_dump2outUnitmus_nonNewtonian_moduleSubroutine

Dump nonNewtonian fluid parameters to outUnit

mus_nNwtn_loadmus_nonNewtonian_moduleSubroutine

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

mus_nNwtn_PL_dumpmus_nonNewtonian_moduleSubroutine

Dump nonNewtonian Power Law (PL) parameters to outUnit

mus_nNwtn_PL_loadmus_nonNewtonian_moduleSubroutine

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

mus_nNwtn_PL_savemus_nonNewtonian_moduleSubroutine

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

mus_nNwtn_save2luamus_nonNewtonian_moduleSubroutine

write nonNewtonian fluid parameters into a lua file

mus_open_configmus_config_moduleSubroutine

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

mus_opVar_gradU_forElementmus_operation_var_moduleSubroutine

This routine returns the velocity gradient from velocity in auxField

Read more…
mus_opVar_QCriterion_forElementmus_operation_var_moduleSubroutine

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_setupIndicesmus_operation_var_moduleSubroutine
mus_opVar_vorticity_forElementmus_operation_var_moduleSubroutine

This routine computes vorticity from curl of velocity in auxField.

Read more…
mus_param_outmus_param_moduleSubroutine

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

mus_PBLinear_advRel_genericmus_compute_Poisson_moduleSubroutine

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_genericmus_compute_Poisson_moduleSubroutine

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

Read more…
mus_pdf_allocatemus_pdf_moduleSubroutine
mus_pdf_serializemus_buffer_moduleSubroutine

Preparation of the serialize PDF data

Read more…
mus_pdf_unserializemus_buffer_moduleSubroutine

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

mus_perf_measuremus_tools_moduleSubroutine

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

mus_perform_dynLoadBalmus_dynLoadBal_moduleSubroutine

Wrap up the routines required for dynamic load balancing

mus_physics_dump2outUnitmus_physics_moduleSubroutine
mus_physics_outmus_physics_moduleSubroutine

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

Read more…
mus_physics_out_convmus_physics_moduleSubroutine

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_d2q9mus_compute_Poisson_moduleSubroutine

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_genericmus_compute_Poisson_moduleSubroutine

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_ppInfomus_ppInfo_moduleSubroutine

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

mus_readRestartmus_restart_moduleSubroutine

Read the serialized restart file into the state vectors

mus_reload_IBMmus_IBM_moduleSubroutine
mus_reset_auxmus_dynLoadBal_moduleSubroutine

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

Read more…
mus_reset_bcTimermus_timer_moduleSubroutine
mus_reset_levelTimermus_timer_moduleSubroutine
mus_reset_mainTimermus_timer_moduleSubroutine
mus_scheme_cleanupmus_scheme_moduleSubroutine

This subroutine acts as a destructor for the construct routine

mus_scheme_header_outmus_scheme_header_moduleSubroutine

Dumps scheme header

mus_scheme_outmus_scheme_moduleSubroutine

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

mus_set_bcLinksmus_bc_header_moduleSubroutine
mus_set_bouzidimus_bc_header_moduleSubroutine

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

mus_set_convFacmus_physics_moduleSubroutine

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_statesmus_field_moduleSubroutine

Set ic states labels by scheme kind

mus_set_inletBflmus_bc_header_moduleSubroutine

Bitmask is true for incoming direction

mus_set_inletUbbmus_bc_header_moduleSubroutine

Set necessary data for BC velocity_bounceback_qval

Read more…
mus_set_nonEqExpolmus_bc_header_moduleSubroutine

Linkwise non-equilibrium extrapolation (can handle curved walls)

Read more…
mus_set_nSourcesmus_interpolate_header_moduleSubroutine
mus_set_opVar_getElementmus_operation_var_moduleSubroutine

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_outletExpolmus_bc_header_moduleSubroutine
mus_set_posInNghElemsmus_bc_header_moduleSubroutine

Set BC elements positions in LevelDesc%neigh%nghElems

mus_set_scaleFacmus_physics_moduleSubroutine
mus_set_stFun_getElementmus_varSys_moduleSubroutine

Routine to store musubi varSys Data in stFun variable

mus_set_timerHandlesmus_timer_moduleSubroutine

This routine sets mus_timerHandles passed by apesmate

mus_set_weights_d1q3mus_scheme_layout_moduleSubroutine
mus_set_weights_d2q5mus_scheme_layout_moduleSubroutine
mus_set_weights_d2q9mus_scheme_layout_moduleSubroutine
mus_set_weights_d3q13mus_scheme_layout_moduleSubroutine
mus_set_weights_d3q19mus_scheme_layout_moduleSubroutine
mus_set_weights_d3q27mus_scheme_layout_moduleSubroutine
mus_set_weights_d3q6mus_scheme_layout_moduleSubroutine
mus_set_weights_d3q7mus_scheme_layout_moduleSubroutine
mus_setPropmus_geomIncr_moduleSubroutine

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_forBCmus_bc_general_moduleSubroutine

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

mus_setupIndices_forSrcmus_source_moduleSubroutine

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

mus_solvemus_program_moduleSubroutine

This routine does the main musubi computation loop

mus_source_cleanupmus_source_type_moduleSubroutine

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

mus_species_outmus_species_moduleSubroutine

writes species propertries into a lua file

mus_stateVar_Fetch_fromIndexmus_stateVar_moduleSubroutine

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_fromIndexmus_stateVar_moduleSubroutine

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_forPointmus_stateVar_moduleSubroutine

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

Read more…
mus_stateVar_fromIndexmus_stateVar_moduleSubroutine

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_bcVarPosmus_variable_moduleSubroutine

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_derVarPosmus_variable_moduleSubroutine

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

mus_swap_Now_Nextmus_pdf_moduleSubroutine
mus_testInterpolationmus_interpolate_verify_moduleSubroutine

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_homogenizemus_time_moduleSubroutine

Convert itime from restart to real time

mus_time_modulomus_time_moduleFunction

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_homogenizemus_time_moduleSubroutine

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

mus_turb_calcViscmus_turbulence_moduleSubroutine

This routine compute turbulence viscosity and stores in turbulence data type

mus_turb_updateViscOfTurbWallmus_turbulence_moduleSubroutine

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

mus_turbVisc_fromGradU_dummymus_turb_viscosity_moduleSubroutine

Dummy function for turbulent viscosity from Gradu procedure

mus_turbVisc_fromPreColPDF_dummymus_turb_viscosity_moduleSubroutine

Dummy function to compute turbulent viscosity from PDF

mus_turbVisc_Smagorinsky_fromGradU2Dmus_Smagorinsky_moduleSubroutine

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

mus_turbVisc_Smagorinsky_fromGradU2D_incompmus_Smagorinsky_moduleSubroutine

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

mus_turbVisc_Smagorinsky_fromGradU3Dmus_Smagorinsky_moduleSubroutine

Calculate eddy viscosity with smagorinsky model for compressible model using gradient of velocity 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_incompmus_Smagorinsky_moduleSubroutine

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

mus_turbVisc_Smagorinsky_fromPreColPDFmus_Smagorinsky_moduleSubroutine

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_incompmus_Smagorinsky_moduleSubroutine

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

mus_turbVisc_Vreman_2Dmus_Vreman_moduleSubroutine

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

mus_turbVisc_Vreman_3Dmus_Vreman_moduleSubroutine

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_2Dmus_WALE_moduleSubroutine

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

Read more…
mus_turbVisc_WALE_3Dmus_WALE_moduleSubroutine

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

mus_unload_IBMmus_IBM_moduleSubroutine
mus_update_BcghostElemmus_construction_moduleSubroutine
mus_update_relaxParamFromViscSTfunmus_relaxationParam_moduleSubroutine

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_relaxParamKinemus_relaxationParam_moduleSubroutine

Update kinematic relaxation parameter from viscosity and check omega

mus_update_relaxParamsmus_aux_moduleSubroutine

Set relaxation parameters for MRT

mus_update_sourceVarsmus_source_moduleSubroutine

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

mus_update_viscKinemus_relaxationParam_moduleSubroutine

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_forSymmetricBCmus_connectivity_moduleSubroutine

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

Read more…
mus_updateSrcVar_dummymus_source_type_moduleSubroutine

Dummy routine for update source variable

mus_updateSrcVar_dynSponFldmus_source_var_moduleSubroutine

Compute density and velocity in sponge layer for dynamic sponge

mus_updateSrcVar_turbChanForcemus_source_var_moduleSubroutine

Compute dynamic force term using auxField for turbulent channel force.

Read more…
mus_weights_outmus_scheme_layout_moduleSubroutine

Dump the weights in lua format.

Read more…
mus_writeRestartmus_restart_moduleSubroutine

Write the serialized buffer assembled in mus_serializeData to disk

mus_writeSolverSpecInfomus_tools_moduleSubroutine

Write solver specific info to scratch file

normalizeBCmus_construction_moduleSubroutine

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_dntmus_bc_fluid_moduleSubroutine

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_nrbcmus_bc_fluid_moduleSubroutine

Characteristic-based non-reflective open boundary conditions

Read more…
outlet_nrbc_eqmus_bc_fluid_moduleSubroutine

Characteristic-based non-reflective open boundary conditions

Read more…
outlet_nrbc_incompmus_bc_fluid_moduleSubroutine

Characteristic-based non-reflective open boundary conditions

Read more…
outlet_pasScalmus_bc_passiveScalar_moduleSubroutine

Outlet boundary conditions for passive scalar transport (Flekkoy).

Read more…
outlet_zero_prsgrdmus_bc_fluid_moduleSubroutine

Outlet boundary conditions with zero pressure gradient.

Read more…
perform_checksmus_tools_moduleSubroutine

Perform run-time checks if interval is active

potential_neumannmus_bc_poisson_moduleSubroutine

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_curvedmus_bc_poisson_moduleSubroutine

No comment yet!

Read more…
potential_nonEqExpolmus_bc_poisson_moduleSubroutine

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_curvedmus_bc_poisson_moduleSubroutine

Linkwise Dirichlet potential non-equilibrium boundary condition for curved wall

Read more…
prepare_target_elem_listmus_geomIncr_moduleSubroutine

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_neqmus_bc_fluid_moduleSubroutine

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_antiBounceBackmus_bc_fluid_moduleSubroutine

Outlet Pressure Bounce Back boundary condition

Read more…
pressure_eqmus_bc_fluid_moduleSubroutine

Outlet Pressure Equilibrium type boundary conditions

Read more…
pressure_expolmus_bc_fluid_moduleSubroutine

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

Read more…
pressure_expol_slowmus_bc_fluid_experimental_moduleSubroutine

No comment yet!

Read more…
pressure_momentsbasedmus_bc_fluid_moduleSubroutine

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_incompmus_bc_fluid_moduleSubroutine

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_nonEqExpolmus_bc_fluid_nonEqExpol_moduleSubroutine

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…
pressure_nonEqExpol_incompmus_bc_fluid_nonEqExpol_moduleSubroutine

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

Read more…
proximitymus_geomIncr_moduleSubroutine

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_elemsmus_bc_header_moduleSubroutine

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_bcmus_field_moduleSubroutine

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…
second_order_moments_2Dmus_derivedQuantities_module2Function

Calculating second order moments 2D

second_order_moments_3Dmus_derivedQuantities_module2Function

Calculating second order moments 3D

secondMommus_derivedQuantities_module2Function

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.

set_boundarymus_bc_general_moduleSubroutine

Call the functions associated with each boundary condition

Read more…
set_bouzidi_coeffmus_bc_header_moduleSubroutine

Set the coefficients of bouzidi linear interpolation boundary condition.

set_halo_commLinksmus_construction_moduleSubroutine

Select the halo elements which require all links

Read more…
set_momentIndicesmus_moments_moduleSubroutine

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

set_omegasLvlmus_mixture_moduleSubroutine

Set the omegas according to the time step setting

Read more…
set_sendHaloBitsmus_construction_moduleSubroutine

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

set_values_by_levelsmus_physics_moduleFunction
setFieldBCNeighmus_construction_moduleSubroutine

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_multispeciesmus_field_moduleSubroutine

Set parameters for multispecies

Read more…
slip_wallmus_bc_fluid_wall_moduleSubroutine

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

Read more…
spc_bb_vel_testmus_bc_fluid_experimental_moduleSubroutine

species bounce back velocity boundary Usage

Read more…
spc_bb_wallmus_bc_fluid_experimental_moduleSubroutine

species bounce back wall boundary Usage

Read more…
spc_blackbox_mem_ionmus_bc_species_moduleSubroutine

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_solventmus_bc_species_moduleSubroutine

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_inflowmus_bc_species_moduleSubroutine

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

Read more…
spc_inletmus_bc_species_moduleSubroutine

Inlet boundary condition for defined species velocity and mole fraction Usage

Read more…
spc_inlet_eqmus_bc_species_moduleSubroutine

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_expolmus_bc_species_moduleSubroutine

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

Read more…
spc_moleDens_eqmus_bc_species_moduleSubroutine

Mole density boundary condition Usage

Read more…
spc_moleDiff_Fluxmus_bc_species_moduleSubroutine

molar diffusion flux boundary condition Usage

Read more…
spc_moleFluxmus_bc_species_moduleSubroutine

molar flux boundary condition like velocity bounce back bc type Usage

Read more…
spc_moleFlux_eqmus_bc_species_moduleSubroutine

molar flux equilibrium boundary condition Usage

Read more…
spc_moleFracmus_bc_species_moduleSubroutine

Mole fraction boundary condition Usage

Read more…
spc_moleFrac_eqmus_bc_species_moduleSubroutine

Mole fraction boundary condition Usage

Read more…
spc_moleFrac_wtdfmus_bc_species_moduleSubroutine

Mole fraction boundary condition with thermodynamic factor Usage

Read more…
spc_moments_moleFluxmus_bc_species_moduleSubroutine

molar flux boundary condition like moments velocity bc type Usage

Read more…
spc_moments_moleFracmus_bc_species_moduleSubroutine

Mole fraction boundary condition Usage

Read more…
spc_moments_outflowmus_bc_fluid_experimental_moduleSubroutine

molar flux boundary condition like moments velocity bc type Usage

Read more…
spc_moments_velmus_bc_species_moduleSubroutine

velocity boundary condition like moments velocity bc type Usage

Read more…
spc_moments_wallmus_bc_species_moduleSubroutine

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

Read more…
spc_outflowmus_bc_species_moduleSubroutine

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

Read more…
spc_outlet_eqmus_bc_species_moduleSubroutine

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

Read more…
spc_outlet_expolmus_bc_species_moduleSubroutine

species Outlet Pressure extrapolation boundary. NOT VERIFIED

Read more…
spc_outlet_velmus_bc_species_moduleSubroutine

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

Read more…
spc_outlet_zero_prsgrdmus_bc_species_moduleSubroutine

Outlet boundary conditions with zero pressure gradient.

Read more…
spc_slip_wallmus_bc_fluid_wall_moduleSubroutine

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

Read more…
spc_solvent_inflowmus_bc_species_moduleSubroutine

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_outflowmus_bc_species_moduleSubroutine

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_bbmus_bc_species_moduleSubroutine

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_expolmus_bc_species_moduleSubroutine

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

Read more…
start_stageTimermus_control_moduleSubroutine
stop_stageTimermus_control_moduleSubroutine
streamWiseVel_muskermus_turb_wallFunc_moduleSubroutine

This routines computes streamWise velocity component from friction velocity and distance to boundary using Musker profile.

streamWiseVel_powerLawmus_turb_wallFunc_moduleSubroutine

This routines computes streamWise velocity component from friction velocity and distance to boundary using two equation Werner and Wengle profile. Ref to following paper for Schmitt three layer equations. 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.

streamWiseVel_reichardtmus_turb_wallFunc_moduleSubroutine

This routines computes streamWise velocity component from friction velocity and distance to boundary using reichardt profile.

TGV_2Dmus_interpolate_debug_moduleFunction

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

trt_advRel_d3q19mus_d3q19_moduleSubroutine

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…
trt_advRel_d3q19_incompmus_d3q19_moduleSubroutine

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

Read more…
trt_advRel_d3q27mus_d3q27_moduleSubroutine

No comment yet!

Read more…
turbulent_wallmus_bc_fluid_turbulent_moduleSubroutine

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_eqmus_bc_fluid_turbulent_moduleSubroutine

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_curvedmus_bc_fluid_turbulent_moduleSubroutine

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_incompmus_bc_fluid_turbulent_moduleSubroutine

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_incompmus_bc_fluid_turbulent_moduleSubroutine

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_libbmus_bc_fluid_turbulent_moduleSubroutine

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_expolmus_bc_fluid_turbulent_moduleSubroutine

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_curvedmus_bc_fluid_turbulent_moduleSubroutine

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_incompmus_bc_fluid_turbulent_moduleSubroutine

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_incompmus_bc_fluid_turbulent_moduleSubroutine

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_BClistsmus_construction_moduleSubroutine

Update the neighbor stencil positions for the Boundaries

Read more…
update_connectivitymus_geomIncr_moduleSubroutine

Construct the propagation stencil for each element

Read more…
vec_fmamus_test_moduleSubroutine

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_neqmus_bc_fluid_moduleSubroutine

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_bflmus_bc_fluid_moduleSubroutine

Inlet Velocity BFL rule boundary condition

Read more…
velocity_bfl_incompmus_bc_fluid_moduleSubroutine

No comment yet!

Read more…
velocity_bouncebackmus_bc_fluid_moduleSubroutine

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_incompmus_bc_fluid_moduleSubroutine

Inlet Velocity Bounce Back boundary condition with qvalues

Read more…
velocity_eqmus_bc_fluid_moduleSubroutine

Inlet Velocity Equilibrium type boundary conditions for weakly compressible lbm scheme

Read more…
velocity_momentsbasedmus_bc_fluid_moduleSubroutine

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_incompmus_bc_fluid_moduleSubroutine

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_nonEqExpolmus_bc_fluid_nonEqExpol_moduleSubroutine

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_curvedmus_bc_fluid_nonEqExpol_moduleSubroutine

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…
velocity_nonEqExpol_curved_incompmus_bc_fluid_nonEqExpol_moduleSubroutine

Linkwise Dirichlet velocity non-equilibrium boundary condition for curved wal using the subroutine "mus_set_nonEqExpol" for incompressible model.

Read more…
velocity_nonEqExpol_incompmus_bc_fluid_nonEqExpol_moduleSubroutine

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.

Read more…
viscPhy_CSmus_nonNewtonian_moduleFunction

nonNewtonian Casson model

viscPhy_CYmus_nonNewtonian_moduleFunction

nonNewtonian Carreau-Yasuda model

viscPhy_PLmus_nonNewtonian_moduleFunction

nonNewtonian power-law model

wall_libbmus_bc_fluid_wall_moduleSubroutine

No comment yet!

Read more…
weighted_mrt_advRel_d3q27mus_mrt_d3q27_moduleSubroutine

Semi-optimized explicit implementation

Read more…
weighted_mrt_advRel_d3q27_genericmus_mrt_d3q27_moduleSubroutine

Unoptimized explicit implementation

Read more…
weighted_mrt_advRel_d3q27_incompmus_mrt_d3q27_moduleSubroutine

Semi-optimized explicit implementation

Read more…
weighted_mrt_advRel_d3q27_incomp_genericmus_mrt_d3q27_moduleSubroutine

Unoptimized explicit implementation

Read more…
weights_abgmus_compute_cumulant_moduleFunction

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

weights_from_layoutmus_compute_cumulant_moduleFunction

allocate weights from D3Q27 ordered disposition to cumulant disposition

weights_ibgmus_compute_cumulant_moduleFunction

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

weights_ijgmus_compute_cumulant_moduleFunction

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