👍 Thank you for taking the time to contribute to the WPRAutoencoders project! 👍
We expect to receive various types of contributions from individuals, research institutions, startups, companies and oil operators partners.
In this guide we present how each of the expected contributions might be proposed.
The recommended first step is to read the project's README for an overview of what this repository contains.
Please do not open issues to ask questions. Please use the Discussions section accessed through the link that appears in the top menu.
Before you can contribute to this project, we require you read and agree to the following documents:
- CODE OF CONDUCT;
- CONTRIBUTOR LICENSE AGREEMENT;
- This contributing guide.
It is also very important to know, participate and follow the discussions. Click on the Discussions link that appears in the top menu.
We expect to receive contributions at different levels, as shown in the figure below. Some examples for each level are:
- Basic:
- Identify and report any issues in the dataset;
- Intermediary:
- Identify, report and fix bugs;
- Suggest documentation improvements;
- Suggest new reservoir or well models to be simulated by the wellbore pressure response generator;
- Advanced:
- Suggest or develop new approaches for the wellbore pressure response generator;
- Improve the Autoencoder network architecture or its parameters;
The WPRAutoencoders repository contains three different parts:
- A Wellbore Pressure Response Generator available inside the WPRAutoencoders folder;
- An Autoencoder Neural Network available inside the notebooks folder; A Wellbore Pressure Response Dataset available inside the dataset folder.
Before using any of the code or Jupyter notebooks available in this repository, we recommend you set up a Python Virtual Environment with the packages versions listed in the requirements.txt.
For each type of expected contribution, there is a subsection below with specific instructions. The last subsection specifies additional requirements for contributions to be incorporated into this project.
If you use any resource published in this repository, we ask that it be properly cited in your work. Click on the Cite this repository link on this repository landing page to access different citation formats supported by the GitHub citation feature.
Please open an issue to report any bug. If you've implemented a fix, please create a pull request on a branch called bugs
.
We believe that any part of the documentation for this project can be improved, including this guide. You can work on that and then create a pull requests on a branch called documentation_improvements
directly.
Changes that are cosmetic in nature and do not add anything substantial to the stability, functionality, or testability of the WPRAutoencoders project are also welcome. In this case, please create a pull requests on a branch called cosmetic_improvements
directly.
If you intend to work and propose a more significant improvement, please consult our backlog first. If you have any questions about the best strategy for the WPRAutoencoders project, please contact us or start new discussions. When your proposed improvement is ready, please create a pull request on a branch called other_improvements
.
It is important to keep in mind that all source code is implemented according to the style guide established by PEP 8. This is guaranteed with the use of the Black formatter with default options. Therefore, while codes have lines up to 88 characters (Black formatter's default option), each line with docstring or comment must be up to 72 characters long as established in PEP 8.
The list of priority improvements for the WPRAutoencoders project that we intend to develop collaboratively with the community is detailed in the file BACKLOG.md.