daniel-koehn / DENISE-Black-Edition

2D time-domain isotropic (visco)elastic FD modeling and full waveform inversion (FWI) code for P/SV-waves
GNU General Public License v2.0
121 stars 66 forks source link

QUELLTYPB=4 fails to do FWI in AC problem #20

Closed AlbertZhangHIT closed 4 years ago

AlbertZhangHIT commented 4 years ago

Hi Dr. Daniel,

I tried to do FWI in AC problem. I first followed your guide 'QUICKSTART_Marmousi' and everything went well. Then I set output_of_seismograms_(SEISMO) = 2 and QUELLTYPB=4 so that only hydrophone data is used. This results in failing to estimate the steplength in less than one hour. Did I miss something?

I also found that the output time reversed residual seismograms are empty/0 by plotting.

daniel-koehn commented 4 years ago

Hi AlbertZhangHIT,

There seem to be a bug in the AC module of DENISE preventing a successful FWI of hydrophone data, even though it works in the isotropic elastic DENISE module. I have to look deeper into the issue. The FWI of component data (SEISMO=1,QUELLTYPB=1,2 or 3) in the AC module should work.

Best regards, Daniel

AlbertZhangHIT commented 4 years ago

Thank you Daniel. I will also try my best to comtribute to fixing this bug.

AlbertZhangHIT commented 4 years ago

Hi Daniel, Finally I fixed the bug. The original code for source injection when doing adjoint modeling in ac.c is

/* adjoint explosive source */
if((QUELLTYPB>=4)&&(mode==1)){  
    psource_AC(nt, (*waveAC).p, (*acq).srcpos_loc_back, (*seisPSVfwi).sectionpdiff, nsrc_loc, 1);
}

but the number of sources goes wrong. The argument nsrc_loc for function psource_AC, should be replaced by ntr which represents the number of receivers.

Hope everything goes well. Albert

daniel-koehn commented 4 years ago

Hi Albert,

Sorry for the late reply, I'm currently producing a lot of lecture videos for my students. Congratulations for finding the bug. This should indeed fix the problem. Have you tested the acoustic FWI module with the fixed bug? Can I mention you as a contributer to the DENISE code in the manual and my talks?

Best regards,

Daniel

AlbertZhangHIT commented 4 years ago

Hi Daniel,

I'm sorry for the late reply. I'm engaged in my project and missed your reply. Sure you can memtion me as a contributer to the DENISE code in the manual and your talks. Thank you. I have tested the acoustic FWI module with fixed bug, it works well. And I also did some more modification about the gradient computation in the case GRAD_FORM=2, where the gradient can be computed without data integration.

Best, Albert

daniel-koehn commented 4 years ago

Hi Albert,

Sounds good.

Best regards, Daniel

ADharaUTEXAS123007 commented 1 year ago

The issue still exists