A binary workflow was created to address issues we ran into with the standard text based workflow.

SUMMARY

Old HF workflow

New BB workflow

HOW TO RUN

HF

mpirun -n 80 python2 hf_sim.py source.stoch stations.ll HF.bin -m /home/nesi00213/VelocityModel/Mod-1D/Cant1D_v1-midQ.1d --duration 100.0 --dt 0.02 -i

source.stoch is the rupture file
stations.ll is the (lon, lat, name) file of the stations to run HF for
HF.bin is the output file
-i runs stations independently through the binary for reproducible results (same seed)
-m sets the global 1D velocity model, alternatively set the site specific 1D directory with -s
-h to see a complete list of options


BB

mpirun -n 80 python2 bb_sim.py LF/bevan2012_v3_s103252/OutBin /path/to/vm/ HF.bin BB.bin --vsite vsites.vs30

The first parameter is the location to the OutBin folder from Emod3D where seis files can be found
The second is where the VM directory is located and contains vs3dfile.s and params_vel.py
HF.bin is the HF input binary
BB.bin is the output file
--vsite to set vs30 file, 500 currently used otherwise
hf_vs_ref is taken from the HF input (stored as part of HF)
lf_vs_ref is taken from the VM (vs3dfile.s)

FAQ

How are these binary files accessed?

from qcore.timeseries import HFSeis
# load file
hf = HFSeis('HF.bin')
# retrieve timeseries (x,y,z)
hf.acc('CACS')
# only x
hf.acc('CACS', comp = <0, or hf.X or hf.COMP['090']>)
# store station as txt
hf.acc2txt('CACS')
# store all stations as txt, same as if ran standard txt version
hf.all2txt(prefix = 'Acc/hf_')

Same for BB (via BBSeis class)
LF has a wrapper so the OutBin folder can be accessed in the same way via LFSeis class.

What if I want LF Acc?

# just like for vel
lf.vel('CACS')
# you can access transparently converted accelerations
lf.acc('CACS')