Skip to content
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

Suggestion: High-order accuracy forward model for avoiding inverse crime #36

Closed
izzatum opened this issue Sep 29, 2021 · 37 comments
Closed

Comments

@izzatum
Copy link

izzatum commented Sep 29, 2021

Hi Alan,

I hope to find you well and in the best of health.

I'm wondering if DeepWave has the functionality to change the order of accuracy of the forward problem. Is such functionality available?

This would be a nice improvement since it could help us avoiding the inverse crime in the inversion.

Thanks! :)

@ar4
Copy link
Owner

ar4 commented Sep 29, 2021 via email

@izzatum
Copy link
Author

izzatum commented Sep 29, 2021 via email

@guoketing
Copy link

Dear Muhammad,

I can help you to implement the function if you need it really.

Keting.

@izzatum
Copy link
Author

izzatum commented Sep 29, 2021 via email

@guoketing
Copy link

guoketing commented Sep 30, 2021 via email

@izzatum
Copy link
Author

izzatum commented Sep 30, 2021

Dear Keting,

Thank you for your kind contribution. I highly appreciate that. No worries, take your time. :)

Muhammad

@ar4
Copy link
Owner

ar4 commented Sep 30, 2021 via email

@izzatum
Copy link
Author

izzatum commented Sep 30, 2021 via email

@ar4
Copy link
Owner

ar4 commented Sep 30, 2021 via email

@izzatum
Copy link
Author

izzatum commented Sep 30, 2021 via email

@ar4
Copy link
Owner

ar4 commented Sep 30, 2021 via email

@izzatum
Copy link
Author

izzatum commented Sep 30, 2021

Sorry, Alan. I cannot see the command. Everything converted to stars (censored). Another way to communicate?

@ar4
Copy link
Owner

ar4 commented Sep 30, 2021

Ah! Apologies. GitHub was overzealous in hiding what it thinks are email addresses!

Hopefully it will work this time: pip install git+https://github.com/ar4/deepwave.git@8th-order

@izzatum
Copy link
Author

izzatum commented Sep 30, 2021

Got it! Done with installation. Thanks a lot! :)

@izzatum
Copy link
Author

izzatum commented Sep 30, 2021

Hi Alan and Keting,

It seems like the 8th order not providing the correct solution. Kindly refer to the figure below for a comparison between 4th order and 8th order data.
4th order
8th order
.

@guoketing
Copy link

guoketing commented Oct 1, 2021 via email

@ar4
Copy link
Owner

ar4 commented Oct 1, 2021 via email

@izzatum
Copy link
Author

izzatum commented Oct 1, 2021

Hi Alan and Keting,

Kindly find the python notebook below to reproduce the error.

Error_sample.zip

@ar4
Copy link
Owner

ar4 commented Oct 1, 2021 via email

@izzatum
Copy link
Author

izzatum commented Oct 1, 2021 via email

@ar4
Copy link
Owner

ar4 commented Oct 1, 2021 via email

@ar4
Copy link
Owner

ar4 commented Oct 1, 2021 via email

@izzatum
Copy link
Author

izzatum commented Oct 1, 2021 via email

@ar4
Copy link
Owner

ar4 commented Oct 1, 2021 via email

@izzatum
Copy link
Author

izzatum commented Oct 1, 2021 via email

@guoketing
Copy link

Dear Muhammad,

I have modified the deepwave to make the order of finite difference can be chosen,for example:
prop = deepwave.scalar.Propagator({'vp': model_true.to(device)}, dx, order=order)
The parameter order is 4 or 6 or 8 that you can choose
what is your email address?I'll send to you by email. if you have any questions, let me know.

Keting

@ar4
Copy link
Owner

ar4 commented Oct 1, 2021 via email

@izzatum
Copy link
Author

izzatum commented Oct 1, 2021 via email

@guoketing
Copy link

Dear Muhammad,

image
Is that your email address? I can't send to this address because some errors. If that is true address, Do you have another email?

Keting

@izzatum
Copy link
Author

izzatum commented Oct 2, 2021 via email

@izzatum
Copy link
Author

izzatum commented Oct 2, 2021

Hi Alan and Keting,

I want to know, how many CPU cores DeepWave using if we're running on CPU? I'm thinking to perform the wave propagation on a multi-cores CPU and send the results to GPU for another computation. I'm trying to avoid GPU from being out of memory. Do guys have better suggestions or advice?

Thanks!

@ar4
Copy link
Owner

ar4 commented Oct 2, 2021 via email

@izzatum
Copy link
Author

izzatum commented Oct 2, 2021 via email

@ar4
Copy link
Owner

ar4 commented Oct 2, 2021 via email

@izzatum
Copy link
Author

izzatum commented Oct 2, 2021 via email

@ar4
Copy link
Owner

ar4 commented Oct 3, 2021 via email

@ar4
Copy link
Owner

ar4 commented Jun 5, 2022

Hi Muhammad,

Thank you again for the suggestion to make it possible for users to select the finite difference order of accuracy. I have finally included this in the master branch. I hope that it works for you.

-Alan

@ar4 ar4 closed this as completed Jun 5, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants