SPECFEM / specfem3d

SPECFEM3D_Cartesian simulates acoustic (fluid), elastic (solid), coupled acoustic/elastic, poroelastic or seismic wave propagation in any type of conforming mesh of hexahedra (structured or not).
GNU General Public License v3.0
409 stars 227 forks source link

How the seismograms at the locations in STATIONS are determined? #1332

Open mingdeyu opened 5 years ago

mingdeyu commented 5 years ago

Hi,

I am wondering how the seismograms outputted at locations specified in STATIONS are generated:

Are they computed via some interpolation algorithms by mapping the values (e.g., displacements) from the grid points to the station positions? or

The specfem3d moves the locations in STATIONS to the nearest grid points and use the seismograms solved on these grid points as the ones at the locations specified in STATIONS?

Many thanks!

Deyu

EtienneBachmann commented 5 years ago

Hi Deyu,

Seismograms are computed using a Lagrange interpolation over the spectral element where the seismogram belongs. Concretely, it means that the seismogram value is a weighted mean of the value of each point of integration of this spectral element of the displacement/velocity and/or acceleration. The further is the point of integration from the seismogram, the smaller is its influence. Thus, there is no "relocation" of the seismogram. Its position inside the spectral element is estimated first, in local coordinates, then it is Lagrange interpolated based on these coordinates. The same principal applies for sources.

Best regards,

Etienne

Télécharger Outlook pour Androidhttps://aka.ms/ghei36


From: Deyu Ming notifications@github.com Sent: Saturday, March 23, 2019 3:07:35 PM To: geodynamics/specfem3d Cc: Subscribed Subject: [geodynamics/specfem3d] How the seismograms at the locations in STATIONS are determined? (#1332)

Hi,

I am wondering how the seismograms outputted at locations specified in STATIONS are generated:

Are they computed via some interpolation algorithms by mapping the values (e.g., displacements) from the grid points to the station positions? or

The specfem3d moves the locations in STATIONS to the nearest grid points and use the seismograms solved on these grid points as the ones at the locations specified in STATIONS?

Many thanks!

Deyu

— You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHubhttps://github.com/geodynamics/specfem3d/issues/1332, or mute the threadhttps://github.com/notifications/unsubscribe-auth/AIN3fuC5IZMhX2iS95R-hd9P252UnG7Cks5vZnt3gaJpZM4cFF2k.

mingdeyu commented 5 years ago

Hi Etienne,

Thanks for the clarification. I am thinking to obtain the displacements at stations during the post processing - I have several thousands of stations on the free surface and reading them by SPECFEM3D is time consuming - so my idea is to output the displacements at a given time step from the surface movie frames and then do Lagrange polynomial interpolation separately after the simulation. Thus, I am wondering if you could help me on the following questions?

  1. Do you think the idea that retrieving the displacements at stations by interpolating displacement information contained in the movie frame data makes sense?

  2. If the idea is doable, shall I interpolate from the NGLL points or the mesh grid points, i.e., shall I turn on the USE_HIGHRES_FOR_MOVIES flag in the Par_file and use these for the interpolation?

  3. Do you have any references on how the Lagrange polynomial interpolation (e.g., steps, formulas) is implemented in the SPECFEM3D?

Many thanks!

Best,

Deyu