-
Notifications
You must be signed in to change notification settings - Fork 15
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Multiple sources are not supported #102
Comments
So, the current implementation is focused on using multiple cores, specifically with the core count being a multiple of the number of sources, with each source propagating independently. For example, a 120-core simulation with 20 sources would run each source independently with spatial parallelism of 6 cores per shot. This is the automatic parallelism strategy setup. Nothing is wrong with your changes to run a "super shot." You shouldn't note any errors or bugs in a serial problem. However, if you were to try that in parallel, the "if" you excluded should be changed to "if self.is_local[source_id] and source_id in self.current_sources". Where the current sources are a list of the sources you wish to propagate. This should be enough if all your sources are propagated simultaneously in a parallel model. But remember to set the parallelism strategy in the dictionary to spatial. If you want to propagate sets of 2 or more shots independently in parallel, then you will need to alter the mpi method in utils accordingly |
If you wish to make the changes so that a super shot becomes an option in the dictionary, please submit a PR because that would be a welcome addition. |
Thank you for the clarification! |
Here is my code for an FWI of a simple two-layer model:
The result looks normal.
But when I increased the source number to 3:
sou_pos = [(0, 0.25), (0, 0.5), (0, 0.75)]
there is an unexpected result:
Clearly only the first source (0, 0,25) is included, with the shots saved are exactly the same for the three sources:
I suspect some bug exists for the setup of the sources, where only the first source in the array is implemented in the simulation.
Hope someone can help resolve this issue.
Thank you!
The text was updated successfully, but these errors were encountered: