Viscoplastic channel flow (Mosolov)
The Mosolov problem is the steady, pressure-driven flow of a Bingham
(viscoplastic) fluid along a rectangular channel. Below a yield stress the
material moves as an unsheared plug; the solver handles the non-linearity with
a regularised effective viscosity inside the NonlinearMultigrid cycle. The
viscoplastic-flow theory page covers the
model; this page just runs it and looks at the output.
Running
examples/mosolov/ has no command line -- it solves the single hard-coded case
aspect = 2, B = 0.24 (B is the Bingham number) and writes one netCDF file:
./build/examples/mosolov/mosolov
# wrote A2.00000B0.24000.nc
problem.write(3) stores three fields over the x / z grid: velocity (the
axial velocity u), strain_rate (the shear-rate magnitude), and
log_residual (log10 of the final PDE residual), plus the global attributes
bingham_number, aspect_ratio and total_flux.
Visualising the results

The two panels are the axial velocity and the strain-rate magnitude. The velocity field is a plug-like plateau across the channel core -- the unyielded region moving as a rigid body -- and drops to zero at the no-slip walls. The strain rate is near-zero throughout the plug and concentrates in thin layers along the walls, where the material has yielded and shears.
Regenerating the figures
just viz-data # runs this example (and the others) into viz/_data/
just viz # re-renders docs/src/assets/figures/**