The concept of schemes provides the user with a bigger flexibility. It is now possible to run multiple simulations with different layouts on the same mesh. This is the basis for LBM passive scalar transport simulations in Musubi.
The scheme is part of the individual solvers and contains all information about initial conditions, boundary conditions, the mus_scheme_layout_module, fluid and flow properties.
To start a flow simulation one can add the table species with the following quantities:
--! [Scheme identifier]
identify = {
layout = stencil,
relaxation = relaxationModel,
kind = physicsModel
}
--! [Scheme identifier]
--! [Initial conditions]
initial_condition = { pressure = ic_pressure,
velocityX = ic_velX,
velocityY = 0.0,
velocityZ = 0.0,
Sxx = ic_Sxx,
Syy = ic_Syy,
Sxy = ic_Sxy
}
--! [Initial conditions]
--! [Boundary conditions]
-- Label is a boundary identifier and it should be same as in seeder
-- configuration.
boundary_condition = {
{ label = 'north',
kind = 'wall'
},
{ label = 'south',
kind = 'wall'
},
{ label = 'west',
kind = 'pressure_expol',
pressure = pressureIn
},
{ label = 'east',
kind = 'pressure_expol',
pressure = pressureOut
}
}
--! [Boundary conditions]
--! [Fluid]
-- For both, incompressible and compressible kinematic viscosity has to be
-- defined. While for the first one, default values are stored for bulk
-- viscosity,, the user has to explicitly give them for compr. fluid.
if (physicsModel == 'fluid') then
fluid = {
kinematic_viscosity = nu_phy,
bulk_viscosity = bulk_visc
}
else
fluid = {
kinematic_viscosity = nu_phy,
}
end
--! [Fluid]