Provide same behavior of generated lattice model to built-in ones
When generating a lattice model with lbmpy_walberla, the behavior is in some cases not the same as for the walberla-built-in lattice models. This is a (possibly incomplete) list of differences:
- E.g. for checkpointing, the PDF field is save to a file, and at the same time the lattice model is also packed. In waLBerla, the lattice model has a valid
pack
method (by calling thepack
functions of the collision and the force model ) that really packs all infos (relaxation rates, forces,..) of the lattice model into the buffer. When reading the checkpoint file, these parameters will be unpacked and initialized correctly. This is NOT the case for the generated one since no parameters are packed/unpacked meaning that the user has to take care himself to properly initialize the lattice model's parameters. - The same problem is probably also relevant for adaptive mesh refinement when PDF field block data is sent from one block to another, together with the lattice model.
As these things can easily happen totally unnoticed, this is considered highly dangerous and should be changed.