How to do 2D extrapolation

조회 수: 8 (최근 30일)
Chung Truong Thanh
Chung Truong Thanh 2014년 10월 19일
답변: Bjorn Gustavsson 2014년 10월 20일
Hello,
I had the data of waves propagation as shown with black continuous line in the picture below. The data is a 3D matrix with the dimensions 1 and 2 are coordinates X, Y; and the third dimension is amplitude in time. The matrix has size 600x700x125.
I want to further extrapolate the waves in time (red dot line) to 600x700x250.
Any suggestion is appreciated. Many thanks, Truong.
  댓글 수: 1
Chung Truong Thanh
Chung Truong Thanh 2014년 10월 20일
편집: Chung Truong Thanh 2014년 10월 20일
I guess it's easier to use an analogy to understand the problem. Imagine throwing a rock to water and we see the waves propagating. Assume that we recorded the amplitude of the water waves of all grid points in one second (it would be a 3D matrix where the dimensions 1 and 2 are coordinates X, Y; and the third dimension is amplitude in time). And I want to further extrapolate the waves in time, it must be the waves goes further and further.
My problem is I don't have a good approach of how to do this, not just the detail of the MATLAB code.
  • I tried to use AR model for all points to extrapolate further in time, however, it cannot extrapolate in space (means that the waves does not propagate further).
  • I tried another way, which was to transform the data to frequency domain using function fftn. Then interpolate data in frequency domain and transform back to time domain. The result is that the waves repeat again, not propagating further as I wanted.
Any help will be appreciated. Many thanks, Truong.

댓글을 달려면 로그인하십시오.

답변 (1개)

Bjorn Gustavsson
Bjorn Gustavsson 2014년 10월 20일
My guess is that the "best" way to go about this is to use your data to estimate all coefficients in the wave-equation in cylindrical coordinates from your data as best you can and then solve the wave equation in the surrounding region using the data (and gradients?) at your edge as boundary conditions.
HTH

카테고리

Help CenterFile Exchange에서 Detection에 대해 자세히 알아보기

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by