Closed gdmcbain closed 4 years ago
There's an issue about this over at https://github.com/hplgit/fenics-tutorial/issues/51.
That was about the line
Myself, I first tried replacing PROGRESS
with its value
set_log_level(16)
but that didn't work either so I just commented it out and did without logging.
I had successfully modified this to run in the Docker image but now with FEniCS installed locally on Ubuntu 19.10 with
conda create -n FEniCS -c conda-forge fenics
it failed with
ModuleNotFoundError: No module named 'mshr'
Installing mshr #11:
conda install -c conda-forge mshr
So how does 08 differ from 07 Navier–Stokes channel #4?
bicgstab
and hypre_amg
rather than default solver for tentative velocity step and pressure correction stepcg
and sor
for velocity correction stepBut the pressure-correction algorithm is the same.
I presume that iterative solvers aren't really required for the problem as meshed—it's only 4585 triangles—but are rather given as a suggestion for larger more realistic problems.
Isn't the pressure-correction step symmetric? Why is the unsymmetric Bi-CGStab scheme adopted?
The velocity isn't written as a vector to the XDMF time series nschloe/meshio#522.
The original FEniCS tutorial uses HYPRE AMG accelerated by BiCG-Stab for the tentative velocity
and pressure correction
steps.
I assume these are via PETSc. We could make use of petsc4py here (see kinnala/scikit-fem#236) but excellent results are also obtained much more simply with pyamgcl.
Figure:— Plot of the velocity (coloured by pressure) for the cylinder test problem at final time
Next after 07_navier_stokes_channel #4 is ft08_navier_stokes_cylinder.