&savelist
itsave(1,6) = 0
dtsave(6) = 0.1d0
nshells = 2
shellcoord(1) = 1.0d0
shellcoord(2) = 50.0d0
nxShell2 = 256
nxShell3 = 256
/
By default, BHAC will output these to *.vtu files that can directly be read into Paraview. You can however select ascii output controlled via shell_type in the filelist:
&filelist
shell_type = 'vtu' | 'csv'
/
The output filename is composed of the direction and offset values. For example, the first shell output name reads filenameout_r+0.100D+01_nXXXX.[vtu|csv].
&savelist
itsave(1,6)=0
nshells = 2
shellcoord(1) = 1.0d0
shellcoord(2) = 50.0d0
nxShell2 = 256
nxShell3 = 256
/
The stoplist should look like the following,
&stoplist
itreset=.true.
itmax=0
/
where we reset the iteration counter (so that itsave(1,6)=0 will output shell data) and stop the code immediately after the IO (itmax=0).
The code can then be started with
./bhac -restart 10 -i shells.par -shell 10 -if output/datawhich will take the output output/data0010.dat (-restart 10, -if output/data) to create new shells with index 10 (-shell 10). The par-file is the newly created shells.par (-i shells.par) so that the default used to run the code can be left untouched. It is a simple exercise in shell scripting to run along all output-files in one go. For example with the BASH:
for i in {0..10}; do ./bhac -restart $i -i shells.par -shell $i -if output/data; done
use mod_shell call init_gridvars(...) call alloc_shell(...) call fill_shell(...) ... do something with the shell data ... call dealloc_shell(...) call finish_gridvars(...)Though take care: the full shell data is communicated only to rank 0.