Skip to content

FLUSI and Fields 1.7.5

Thomas Engels edited this page Dec 20, 2016 · 6 revisions

FluSI and Fields 1.7.5

This guide collects notes on the combination of FluSI and Fields 1.7.5, which is a wavelet and Fourier postprocessing tool for a wide range of applications, such as coherent vortex extraction and the like

Notes on installation

  • in the source code, we commented out references to JMFFT (which seems to be for cray machines)
  • also seconds (in one of the clock.F file)
  • we installed fftw-3.1 from the source folder contained in the archive
    ./configure --prefix='/home/engels/Documents/Research/Fields/Field.1.7.5/Sources/Field_includes/fftw' --enable-float
    make clean ; make ; make install
  • The makefile added the -lfft3 but we had to change this for -lfftw3f since this is what is in -LSources/Field_includes/fftw/lib/
  • Fields cannot be build with -fimplicit-none as some routines really do use implicit variable declaration

Notes on usage

Convert FluSI's hdf files to a Fields-readable binary file

Unfortunately, fields does not support HDF5 files (though the 'file' menu states otherwise). We have to create a binary file using flusi in postprocesding mode:

 ./flusi --postprocess --hdf2bin ux_006000.h5 vel.1 
 ./flusi -p --hdf2bin ux_006000.h5 vel.1 

This converts the file ux_006000.h5 to vel.1. note this tool is serial (no mpi-parallelism).

Note: using code version around 25/11/2016, or commit d59feea04471dae2ddc19f3a44fcfc17c3ed4efb the hdf2bin currently writes like this:

 write (12) (((field_out (ix,iy,iz), ix=0, nx-1), iy=0, ny-1), iz=0, nz-1)

So the correct setting in FIELDS is X-FAST and LITTLE-ENDIAN

Start fields

start fields using

./field.exe -X1024 -Y1024 -Z512

specifying the size of the arrays

Read the files to FIELDS

you can read such a file using

f l f "vel" q 

commands. The program reads vel.1, vel.2 vel.3

Check if the input is correct

using ./flusi -p --field-analysis vorx_000050.h5 vory_000050.h5 vorz_000050.h5 outfile.data (which point to vor.1 vor.2 vor.3) we checked that mean energy is 1642.32300 which is what fields returns as well -> correctly read

Use FIELDS to extract a certain scale

In my case, I want to compute

!

! im hauptmenue wird hier die filterung (bandpass) im wavelet raum angewendet
! zuerst lowpass
F
r
w
5 ! alles <= J=5 gelöscht
a
! jetzt highpass
r
W
6 ! alle > J=6 gelöscht. es verbleibt skala 6
a
! raus ins hauptmenu
q