Dear PyLith developers,
I’m using pylith 2.2.2 built from source. I’ve implemented some custom failure laws: exponential decay with slip, parabolic law, polylinear laws, and some more complex ones. Do you think this is something that will be useful for the community?
I’m about to submit a paper, so there will be something to look at results wise and I can share the codes for the laws as well. If you think it’s worth sharing, what’s the procedure for this? Just GitHub?
Thanks!
The general procedure for contributing to PyLith is to make a pull request via GitHub. Ideally, the pull request for a new feature would include
- code with comments,
- tests verifying the new feature is implemented properly, and
- documentation of the new feature in the PyLith User Guide.
Note: We are not actively developing v2. All new development is focused on v3, including implementation of fault friction. The implementation of the physics is quite different in v3 (which using our multiphysics implementation) compared to v2. We will consider contributions to the v2 branch, but they are less useful compared to contributions to v3.
Hello Brad,
My paper with the custom failure laws is in review and one of the reviewers asked about the availability of those in PyLith.
I’m considering rewriting those for v4, but I don’t see any friction implemented in the current code version at all. Did you remove it completely? Are you planning to reimplement it? If yes, do you know when?
If you have any documentation on pull requests, could you please share it with me (any testing protocols/other specificities etc.)?
Thanks!
Reimplementing spontaneous rupture (fault friction) is still a work in progress for PyLith version 3.0 and later. The governing equations use a completely different implementation and the code for bulk and fault rheologies has a nuch different structure.
There are multiple ways you can contribute your additional fault friction models. If you created a branch off of the PyLith repository, then you can create a pull request to the releases/v2.2 branch. We will want documentation for the friction models like we have for the other ones.
If you created your own repository similar to the templates/friction directory, then you can simply make it public. We can add a link from the PyLith documentation for v2.2 if you let us know the URL and the publication that should be cited.
Hello Brad,
Thank you for letting me know.
Currently, I just have them implemented locally in templates/friction directory (similarly to how viscous friction is implemented).
I can clean up the scripts and open a PR in releases/v2.2 branch.
Is there a good place to put documentation for those then?
Alternatively, I can upload my version of templates/friction folder into my personal github, write the documentation there and just give you the link. Or modify my forked version of pylith releases/v2.2?
Which one is best?
I can keep you posted on the link to the paper once it’s out. I’m only submitting the first round of corrections this week.
Creating your own repository with the files in templates/friction
and sending us the link sounds like the best approach for now.