PETSc Error in Poroelastic Simulation with PyLith 4.2.0

Dear Baagaard:

I have a question regarding my current work. I am simulating reservoir pressure changes, and in my input file I am using the following settings:

[pylithapp.problem.bc.bc_zpos_shangyou]
label = boundary_zpos_shangyou
use_initial = False
use_time_history = True
db_auxiliary_field = spatialdata.spatialdb.UniformDB
db_auxiliary_field.description = Neumann BC shangyou edge
db_auxiliary_field.values = [time_history_amplitude_normal, time_history_amplitude_tangential_1, time_history_amplitude_tangential_2, time_history_start_time]
db_auxiliary_field.data = [-1MPa, 0MPa, 0*MPa, 1.0]
time_history = spatialdata.spatialdb.TimeHistory
time_history.description = Impulse time history
time_history.filename = impulseshang.timedb
auxiliary_subfields.time_history_amplitude.basis_order = 0
auxiliary_subfields.time_history_start_time.basis_order = 0

together with another input file to apply the pressure change.

However, considering the effect of water gravity, the pressure on different terrains should act along the local surface normal. Therefore, I would like to apply time-varying pressure at each point individually, rather than applying the same time variation across the entire surface.

May I ask if this idea is feasible in PyLith? I believe I asked a similar question before, and you kindly provided some replies, but I am still confused and not sure how to resolve this issue.

Thank you very much for your time and guidance.

Best regards,

impulseshangtimedb.txt (67.4 KB)

PyLith currently lacks a mechanism for specifying boundary conditions that vary independently in space and time. The current implementation utilizes spatial variations in parameters, while maintaining the same temporal function with spatial variations in the time shift and amplitude. Time-Dependent Boundary Conditions — PyLith 5.0.0dev documentation

Some workarounds include:

  1. Using multiple, overlapping Neumann boundary conditions so that the sum of the boundary conditions gives the function you want.
  2. Decomposing a boundary condition into multiple boundary conditions that do not overlap.

Thank you very much for your kind reply! I will give it a try.

Dear baagaard:

I would also like to ask whether PyLith can be used to simulate and calculate the Peak Ground Acceleration (PGA) and Peak Ground Velocity (PGV) during an earthquake.I saw simulations of P-wave and S-wave propagation in barwaves-2d, but I’m not sure whether it can be used to simulate and compute the entire earthquake process.