mallickrishg / bemcs

Continuous slip boundary element models
MIT License
5 stars 0 forks source link

Understanding shear stress from a single constant slip element (Back to basics) #12

Closed brendanjmeade closed 1 year ago

brendanjmeade commented 1 year ago

@mallickrishg Am I getting really bad at understanding basic things?

Why is there a sign change in $\sigma_{xy}$ with distance perpendicular to the fault trace?

At $x=0$, $uy$ should be zero so that only contribution to $\sigma{xy}$ should be the gradient in $u_x$ with $y$. As far as I can tell (visually) $ux$ decreases in magnitude monotonically with distance away from the fault trace (at $x=0$). Thus I am puzzled as to how $\sigma{xy}$ can change sign.

shear_stress five_panel
mallickrishg commented 1 year ago

I think the change of sign for sigma_xy is because duy/dx. I don't have a quantitative explanation for this but you can that uy has a pretty significant positive gradient in the x direction for y>0. So it seems like there is some symmetry in where duy/dx controls the sign of sigma_xy over the contribution from dux/dy

mallickrishg commented 1 year ago

@brendanjmeade I just looked at your new notebook for shear stress change and noticed from the git comments that there was some issue with the numerical displacement gradient calculation. Having gone through this multiple times myself, I realised the source is that d/dx and d/dy with np.gradient are the opposite of whatever intuition we have. I fixed that and now you can see the numerical and analytical gradients have the same signs - https://github.com/brendanjmeade/bemcs/blob/main/notebooks/example_shear_stress.ipynb

mallickrishg commented 1 year ago

And I was thinking about strain energy calculations. I think there are two ways to do the global strain energy calculations - I sort of remember doing this in my structural mechanics class almost 10 years ago.

  1. Calculate the 2-d integral everywhere in the domain except the fault using the full stress and strain tensor i.e., $\int{-\infty}^{\infty}\int{-\infty}^{\infty}(\sigma{xx}\epsilon{xx} + \sigma{yy}\epsilon{yy} + \sigma{xy}\epsilon{xy}) dx dy$
  2. Calculate the line integral along the fault using tractions and slip: $\int_{x_1}^{x_2}(\tau_x s_x + \tau_y s_y) dl$

The 2 strain energy calculations should be identical, unless I am mixing things up and forgetting something really important. And because they are identical, people almost always prefer doing the line integral as opposed to the volume integral. Of course this is not the same as calculating the spatial variation in strain energy, which is what you have plotted in one of your new notebooks. But I thought I would just put my thoughts here.

brendanjmeade commented 1 year ago

Wow, thanks for the np.gradient() fix...I hesitate to think how many times I've assumed that the gradients are returned in x, y order. I can see that the stress agree now for both the numerical and analytic. That's good!

brendanjmeade commented 1 year ago
  1. Calculate the 2-d integral everywhere in the domain except the fault using the full stress and strain tensor i.e., $\int{-\infty}^{\infty}\int{-\infty}^{\infty}(\sigma{xx}\epsilon{xx} + \sigma{yy}\epsilon{yy} + \sigma{xy}\epsilon{xy}) dx dy$
  2. Calculate the line integral along the fault using tractions and slip: $\int_{x_1}^{x_2}(\tau_x s_x + \tau_y s_y) dl$

Thanks for sharing and it's so good to write this down. The issues for this project could be class notes for a graduate BEM class! My current supposition is that these two are equivalent, but only in a full space. Let's consider two cases. In both cases, there is a single horizontal fault with uniform traction and slip, so integral 2 is the same for both. In one case, the fault is a full space. In the other case, the fault is in a very small box with traction-free boundary conditions. The box almost touches the fault from all four sides. I think integral 1 may be different for these two cases. In this latter case, there would be very little stored strain energy in the box unless near-fault strains and stresses were far-larger in the box than in the full space case...and that seems geometrically unlikely as some of the stress components would quickly have to go do zero to match the traction-free boundary conditions.

I guess this might mean something along the lines of:

$\int{-\infty}^{\infty}\int{-\infty}^{\infty}(\sigma{xx}\epsilon{xx} + \sigma{yy}\epsilon{yy} + \sigma{xy}\epsilon{xy}) dx dy \leq \int_{x_1}^{x_2}(\tau_x s_x + \tau_y s_y) dl$

in a more general sense?

Of course, I haven't done the actual calculation, and after my $\sigma_{xy}$ pondering, I wouldn't necessarily trust my intuition tonight.

mallickrishg commented 1 year ago

After thinking about this last night I think the equality between the 2 integrals (volume integral and line integral) should still hold, even for the finite domain size case (fault in a box).

You are right in pointing out that because the outer boundaries are all traction-free, they will have no contribution i.e., $\int_{d\Omega}\tau s dl = 0$.

However, the new tractions on the actual fault will now be different from what we calculated in the full space case because of the stresses that result from the traction-free boundaries.

$\int{full space}\tau s dl \neq \int{box}(\tau{full} + \tau{boundary}) s dl$

brendanjmeade commented 1 year ago

I think you are with about this. In this case, the on-fault stresses are not those calculated directly from the element Greens functions but rather those calculated after the full BEM solution is done.