A question using Example of Seismic Inversion
See original GitHub issueI’m a researcher on Seismology and recently I found this promising SimPEG and instantly attracted to it.
I installed the environment and had a try at once, I noticed the Seismic Example in the documentation which is about the velocity tomography problem.
I ran the example and got the exactly same results, very cool.
Then, I tried to test more.
I modified the sources and receivers in the example to simulate another scenario like this:
np.random.seed(0)
src_x = (np.random.rand(50)-0.5)*200
src_y = (np.random.rand(50)-0.5)*200
src_lct = np.c_[src_x, src_y]
rcv_x = np.r_[range(-100,100,20), [100]*9, range(100,-100,-20), [-100]*10]
rcv_y = np.r_[[-100]*10, range(-100,100,20), [100]*10, range(100,-80,-20)]
rcv_lct = np.c_[rcv_x, rcv_y]
From forward simulation, I got the right arrival times data of all the receivers from all the sources successfully.
Then I tried the inversion process.
I set the initial model a uniform model with 2500m/s (3000m/s in the example), and left the other settings without change.
Then the iteration began.
The total iteration number soon reached 100 which is the maxIter and unfortunately I got a fairly wrong result like this:
I tried to modify the parameters in regularization, optimization and inversion processes but I just couldn’t get the point.
I think my modification is simple and there should be a right way to get a good recovery of the true model.
I hope someone can help me with this issue by setting the appropriate parameters and I’ll very appreciate with that.
Issue Analytics
- State:
- Created 3 years ago
- Comments:5 (1 by maintainers)
Top GitHub Comments
@ckohnke I’ve figure it out. I don’t know what to say. How careless I am. I did all things right except to copy the code line
np.random.seed(0)
. It means my sources were changing all the time. Haha, my problem becomes a joke. Anyway, now I have the right result and yes, SimPEG is good.@thast Sure.