diff --git a/fdelmodc/fdelmodc.c b/fdelmodc/fdelmodc.c index 045022ae47ff3e99711a4a70f0d0bd4b37e39eea..ab3e0d8665d2f566aa9ed51fbb1af798df4781a5 100644 --- a/fdelmodc/fdelmodc.c +++ b/fdelmodc/fdelmodc.c @@ -699,6 +699,20 @@ shared (shot, bnd, mod, src, wav, rec, ixsrc, izsrc, it, src_nwav, verbose) beam_vx, beam_vz, beam_txx, beam_tzz, beam_txz, beam_p, beam_pp, beam_ss, verbose); + /* set receiver arrays to zero for next shot */ + size = rec.n*rec.nt; + if (rec.type.vz) memset(rec_vz,0,size*sizeof(float)); + if (rec.type.vx) memset(rec_vx,0,size*sizeof(float)); + if (rec.type.p) memset(rec_p ,0,size*sizeof(float)); + if (rec.type.txx) memset(rec_txx ,0,size*sizeof(float)); + if (rec.type.tzz) memset(rec_tzz ,0,size*sizeof(float)); + if (rec.type.txz) memset(rec_txz ,0,size*sizeof(float)); + if (rec.type.pp) memset(rec_pp ,0,size*sizeof(float)); + if (rec.type.ss) memset(rec_ss ,0,size*sizeof(float)); + if (rec.type.ud) { + memset(rec_udvz,0,mod.nax*rec.nt*sizeof(float)); + memset(rec_udp ,0,mod.nax*rec.nt*sizeof(float)); + } } /* end of loop over number of shots */