Optimal slice template - gokhanyalniz/srdmd GitHub Wiki

Under \code we provide Python scripts for the creation of the optimal slice template. It is written for Channelflow2 and its data files. However it should be easy to adapt to other codes and data structures, provided the following functions are adapted:

  • cf.read_state: requires returning physical space data
  • cf.write_state
  • cf.inprod and inprod_i: requires adapting the inner product, currently does trapezoidal integration in the wall-normal direction

Steps to follow for creating the optimal slice template:

  • Create "unit", orthogonal (in the wall-normal direction) templates with maketemplatebasis.py. (Call this utility, and any other utility, with --help to list the input parameters. nx, and nz refer to the physical grid points prior to any 3/2 expansion.)
  • Project turbulent states onto these unit templates and construct the optimal template from the resulting projections with projtemplatebasis.py. The script will output the optimal templates into the state files opt_slicetemp_x.nc and opt_slicetemp_z.nc. You can then use these templates in the pre-processing, continuous symmetry-reduction stage for the SRDMD algorithm.

We also provide slice.py that can output the symmetry-reduced versions of state files, provided the slice template.