diff --git a/marchenko/marchenko_primaries.c b/marchenko/marchenko_primaries.c index 45ba4f5f8af20925d4f26eadc8ec467483de6ecf..d893a330715027cf0e5069297341b693a8a82bc0 100644 --- a/marchenko/marchenko_primaries.c +++ b/marchenko/marchenko_primaries.c @@ -617,7 +617,15 @@ int main (int argc, char **argv) if (plane_wave) { writeDataIter("SRCplane.su", SRC, hdrs_out, ntfft, nxs, d2, f2, n2out, Nfoc, xsyn, zsyn, ixpos, npos, 0, NINT(src_angle)); - writeDataIter("DDplane.su", DD, hdrs_out, ntfft, nxs, d2, f2, n2out, Nfoc, xsyn, zsyn, ixpos, npos, 0, NINT(src_angle)); + /* make DD causal again and undo the -1 multplication */ + for (l=0; l<nshots; l++) { + j=0; + SRC[l*nts+j] = -1.0*DD[l*nts+j]; + for (j = 1; j < nts; j++) { + SRC[l*nts+j] = -1.0*DD[l*nts+nts-j]; + } + } + writeDataIter("DDplane.su", SRC, hdrs_out, ntfft, nxs, d2, f2, n2out, Nfoc, xsyn, zsyn, ixpos, npos, 0, NINT(src_angle)); } free(SRC);