mallickrishg / bemcs

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

Kinematically consistent models #4

Closed brendanjmeade closed 9 months ago

brendanjmeade commented 1 year ago

Now that the stress singularities along planar segments can be eliminated there is still the issue of the singularities at corners. I think these are always going to be there unless the corners are truly smooth (e.g., C2 mesh). I don't know how to do that.

There are at least two paths forward:

  1. Calculate stresses that are singular or near singular at fault intersections and then use Kelvin volume elements to deal with these stresses via plastic like behavior.
  2. Develop models where slip is kinematically consistent by construction (i.e., block model-like). The way to do this is to introduce block motions as the primary variables and likely lots of fold-like structures. This may not be the simple way a lot of people want to view the world but I think it would solve the core problem. Two examples: a. Rishav paper b. Meade web page
mallickrishg commented 1 year ago

@brendanjmeade - I have been thinking about this in a lot of detail, and I may have finally convinced myself why stresses cannot be continuous at corners no matter how we deal with slip and slip gradients at overlapping nodes of a non=planar fault. This ties back in with the links you posted above (both of our works), as well as implementations of bulk plasticity and/or viscoelasticity. Long story short - the stress singularities exist because we are enforcing continuity of tractions on either side of a node, and the traction vector only has 2 components while the stress tensor has 3. I've provided some details here - https://github.com/brendanjmeade/bemcs/blob/main/Derivation_slipgradient_smoothness.ipynb

I agree with you that unless the mesh is itself smooth, which it is trivially for planar faults, we should not expect continuity of stresses. However, because we are enforcing continuity of the slip vector at a given node and continuity of the direction gradient of the slip vector, we should expect a much milder form of singularity than we would for constant slip elements. Do you think this is worth working out - the order of the singularity?

mallickrishg commented 1 year ago

@brendanjmeade - OMG i am super excited because I may have been totally wrong with my previous comment. Please take a look at https://github.com/brendanjmeade/bemcs/blob/main/Nonplanarpatches_rotation.ipynb Stresses are smooth! I just made sure the unit vectors were properly applied at voila! I am really really hungry right now so maybe it's my low blood sugar talking - but way too excited that it works! will come back from lunch and check again.

brendanjmeade commented 1 year ago

@mallickrishg Ok...I didn't quite expect this, but that's why we do the calculations!

I certainly haven't understood it all, but my reading of the Nonplanarpatches_rotation notebook is that the fundamental idea is to specify slip in global x, y coordinates at element centroids and then solve for the shear and normal slip (at the 3 quadratic nodes per element) that satisfy the prescribed slip at the centers and all of the continuity BCs between elements. With a ton of careful algebra (super impressive and readable!), this works! As I try to understand this, slip on the fault is continuous in (x, y) space by construction.

Outside of being amazed (!) two ideas immediately spring to mind:

  1. What does a solution look like when we force choose u_x and u_y for each element such that there is only shear slip prescribed at each element centroid? Do we get interesting non-zero normal slip (at the 1 and 3 nodes) due to the need for continuity? I'm asking about this sort of problem because it's a great playground to show how continuity and old-school assumptions about how we treat faults (typically shear only) interact. I'm betting there will have to be significant non-zero normal slip associated with the 1 and 3 nodes of each element to make this happen.
  2. Related to the experiment above, it may be interesting for us to also consider the average shear and normal slip over elements rather than their values at centroids. I'm thinking of this because I can imagine a case.

This is so interesting!

mallickrishg commented 1 year ago

@brendanjmeade - response to question 1 is your intuition is spot on. It is such an interesting idea that indeed at node centers we will have 0 fault-normal slip since we imposed it, but that hides the more interesting things that are going on fault element edge nodes. Below are figures for a 3-element fault meeting at right angles where I impose purely shear slip on each element. The stresses are once again continuous, but slip at each node is exactly what you suggested.

Figure of slip at each node ($s_x$ for the first 3 and last 3 nodes is shear-slip, while $s_y$ is shear-slip for the 3 nodes of the middle element fault element) image

Displacements and stresses image image

mallickrishg commented 1 year ago

I keep thinking that we've messed up somewhere, these results are too good to be true.

mallickrishg commented 1 year ago

Another check to show what happens when we force tensile slip to be 0 at fault element centers. Below I plot both ($s_x,s_y$) and the local values of ($s_s,s_n$) for each patch. The big circles are at patch centers. The thing that really stands out to me is that slip in the local $s_s,s_n$ is not continuous. I wonder what the implications of this behaviour is for rough fault simulations.... i wonder what it means for how we think about asperities at the micro-scale. If the stresses are now bounded, does that mean we can start making calculations for what wavelengths of roughness are actually relevant for yielding/bulk damage or things like that? Just thinking out loud here.

image

brendanjmeade commented 1 year ago

The step-like fault example is extraordinary! You designed a super tough problem that I think aids in understanding. As we discussed earlier in this issue, the slip away from element centroids can do some very different things than at the centroids. I see that there are two interesting ways to understand this:

  1. Comparing a model with centroid specified slip with element average specified slip (not fully developed yet)
  2. The same step geometry but with more elements on each of the three straight segments. Does the solution converge with mesh resolution?

If the stresses are now bounded, does that mean we can start making calculations for what wavelengths of roughness are actually relevant for yielding/bulk damage or things like that? Just thinking out loud here.

Probably (and calculating total strain energy too!), but there's a lot we should really nail down first. In terms of the rough fault questions, I think we now have a real way to do this and it's different. I think the most interesting thing about this is that it's really the combination of continuity and shear and normal slip that makes this possible. I still think that the singularities could be eliminated for the shear-only case if we had C2 meshes. The C2 mesh case is something I don't know how to do analytically because I don't think I could calculate element Green's functions along curved segments.

mallickrishg commented 1 year ago
  1. The same step geometry but with more elements on each of the three straight segments. Does the solution converge with mesh resolution?

I can try this tomorrow

Regarding C2 meshes, I don't think I have ever encountered greens functions for non C0 meshes. I know FEM codes typically use basis functions on higher order meshes, but even there I don't have any exposure to curvilinear meshes.

mallickrishg commented 1 year ago

It just dawned on me while cycling today, I was going downhill on a banked road and it suddenly made sense! Of course if the mesh is itself smooth, then if slip is perfectly parallel to the shape of the fault - that guarantees that for uniform magnitude of slip, its gradients are smooth! Unfortunately c2 mesh greens functions might be really hard to derive. I vaguely recall Pierre Romanet previously at ENS Paris, and later in jamstec, writing a paper or presenting somewhere about this. Need to go search for this.

brendanjmeade commented 1 year ago

I very much agree.

There is a ton of work on C2 mesh approaches.

For Greens functions, see: https://academic.oup.com/qjmam/article/67/3/505/1941937 and references therein. Also numerical integration of point sources over C2 meshes is sometimes used (e.g., https://link.springer.com/book/10.1007/978-3-030-23339-6). In fact, I'd bet there are at least a hundred papers on both. I think it's conceptually the right thing to do in many ways.

However, as with almost everything in the BEM literature, we have to ask questions:

I would use any (all) of these C2 methods if they were closer to the technology stage. I suspect that they are not, and that why things like quadrature by expansion were developed. And the NYU/Flatiron group that developed that seems to be betting on ultra-high order Gaussian nowadays.

I definitely know the Romanet work and it's very very good but it's only developed for small curvature cases. He does a sort of approximation that is supposed to be pretty good for the shear stress. A step in the right direction!

One other thing to consider

There is the idea that one could add fold-like structures at fault intersections and apply appropriate kinematically consistent slip and that the stresses might nearly cancel at near the fault intersection? I've never tried this but perhaps you have in one of your papers?

mallickrishg commented 1 year ago

For Greens functions, see: https://academic.oup.com/qjmam/article/67/3/505/1941937 and references therein. Also numerical integration of point sources over C2 meshes is sometimes used (e.g., https://link.springer.com/book/10.1007/978-3-030-23339-6). In fact, I'd bet there are at least a hundred papers on both. I think it's conceptually the right thing to do in many ways.

Wow! those articles/books are fantastic - i just did not know you could do such cool things with complex representations! mind blown! Though it now makes me think like you - if all these tools exist, is it not in use because people (like me) just haven't come across this work before? Or is it because these tools do not work for general cases?

There is the idea that one could add fold-like structures at fault intersections and apply appropriate kinematically consistent slip and that the stresses might nearly cancel at near the fault intersection? I've never tried this but perhaps you have in one of your papers?

I did think about this previously. In fact in my previous article on this topic I have a figure that looks exactly like what you shared. I had tried to make it work with regular constant slip boundary elements but it needs a lot of careful element size/mesh selection to avoid singularity-related stress blow ups at the junction where 3 fault segments meet. It was really not worth it then, but perhaps now that we have better tools this is something to explore. However, my 2 cents from spending some time thinking about this previously, it is not a short project. To come up with something profound or a meaningful contribution will require us to drop everything and obsess about on-fault & off-fault processes, and I don't think I will have that kind of time in the future.

brendanjmeade commented 1 year ago

Wow! those articles/books are fantastic - i just did not know you could do such cool things with complex representations! mind blown! Though it now makes me think like you - if all these tools exist, is it not in use because people (like me) just haven't come across this work before? Or is it because these tools do not work for general cases?

It makes no sense to me unless a lot of this stuff doesn't work well or is just too complicated. If I ever got a singularity-free C2 mesh version working, I'm pretty sure I'd spend the rest of my career making that thing awesome for applications far beyond earth science. There's just a general sense of "Where is all the code?" after reading these papers.

but it needs a lot of careful element size/mesh selection to avoid singularity-related stress blow ups at the junction where 3 fault segments meet

Understood!