adaptive-cfd / WABBIT

Wavelet Adaptive Block-Based solver for Interactions with Turbulence
https://www.cfd.tu-berlin.de/
GNU General Public License v3.0
56 stars 27 forks source link

dry-run mode for mask generation #18

Closed tommy-engels closed 4 years ago

tommy-engels commented 6 years ago

Wabbit needs a dry-run mode, much like flusi has it. In such a mode, we do not solve any PDE, but simply construct the mask function at the times specified in the INI file (i.e. the saving interval) and save it to disk.

this can of course only the done if the mask does not depend on the solution of the fluid (e.g. if it moves according to the drag / lift force (freeflight) or any form of active penalization). For a pre-defined geometry and velocity field, it should be possible.

To this end, the create_mask routines of penalization-ready physics modules (Navier--Stokes-compressible and artificial-compressibility) should provide a PUBLIC create_mask routine.

the dry run would be called like ./wabbit-post --dry-run PARAMS.ini --memory=5.0GB and create a grid based on the mask function only. the time step is set to the saving interval. no work arrays are allocated (hvy_work)

one should also include the possibility to use an existing grid: ./wabbit-post --create-mask PARAMS.ini input_000103030.h5 mask_000103030.h5 it can then be used to complete existing simulation data, in post-processing, with the mask function. This way, we can save on HDD space or, if the data is on a server, the transfer time to the machine used for visualization.

Note this post/pre processing tool requires to know the INI file and properly initializes the physics modules, much like wabbit itself does.

tommy-engels commented 4 years ago

dry-run is implemented for quite a while already. closing.