diff --git a/README.md b/README.md index 94ec54a..f1c95b2 100644 --- a/README.md +++ b/README.md @@ -10,82 +10,54 @@ ![maintained - yes](https://img.shields.io/badge/maintained-yes-green) -**FracAbility** is a Python toolbox that can be used to analyse fracture networks in digitalized rock -outcrops. This package provides tools to: - -1. Define the topology of fracture networks -2. Statistically analyze fracture length distributions while taking into consideration -right censoring effects ([survival analysis](https://en.wikipedia.org/wiki/Survival_analysis)). - -The name Frac**Ability** recalls the [reliability](https://github.com/MatthewReid854/reliability/tree/master)1 -library that inspired and helped in the creation of this project. - - ## Quick introduction ⚡ +![](./docs/images/oniscent_view.png) + Fracture networks are essential for the analysis and modelling of mechanical and hydraulic properties of rock masses. Recently, the use of Digital Outcrop Models (**DOMs**) provided a solid framework for the collection of large and quantitative datasets from which different properties can be extracted. Because of the complex nature of exposed rock outcrops, statistical model fitting can sometimes be challenging. Areas covered by rock debree, vegetation patches or simply the outer boundaries of the outcrop can -introduce right-censoring bias and can often lead to parameter underestimation. - -The following diagram represents an idealized rock outcrop. We can define the wider rectangle as the entire -fractured object while the smaller one as the outcrop that we can see and measure. We can immediately -see what is going wrong; many of the fractures that we can measure are incomplete thus leading to underestimate -fracture length. - -![](./docs/images/example_diagram.png) - -Tools are needed to correct for this bias. Survival analysis techniques, although usually applied -in function of time and not space, accomplishes exactly this. - -## Features 📋 +introduce right-censoring bias and can often lead to parameter underestimation. Tools are needed to correct for estimating the correct distribution parameters while taking into account this bias. Survival analysis techniques, although usually applied in function of time and not length, accomplishes exactly this. -- **Shapefile importing support** - - -- **Rapid topology analysis and identification of I,Y,X and U nodes** - - -- **Backbone(s) identification** - - -- **Statistical analysis tools:** - + Empirical CDF and SF calculation - + Distribution fitting - + Statistical model testing +**FracAbility** is a Python toolbox that can be used to analyse fracture networks and estimate length distributions considering and correcting the effect of right-censoring using survival analysis. This package provides tools to: +1. Define the topology of fracture networks +2. Estimate multiple fracture length distributions while taking into consideration +right censoring effects. +3. Provide methods to choose the most representative distribution using both a visual and a quantitative approach -- **Plotting tools:** - + Network objects plotting using matplotlib or vtk - + Ternary node plot - + Rose diagram - + Statistical plotting +Please refer to the [Docs](https://fracability.readthedocs.io/en/latest/) for a more in depth introduction to the problem, theoretical background, examples and API overview. ## Installation 🔧 -To install fracability pip can be used: +To install FracAbility **pip** can be used: ```bash pip install fracability ``` -## Documentation +Please refer to the [Docs](https://fracability.readthedocs.io/en/latest/Quickstart.html) for further guidance -For usage details please refer to the documentation: +## Documentation 📚 -[![View - Online docs](https://img.shields.io/badge/View-Online_docs-blue?style=for-the-badge)](https://fracability.readthedocs.io/en/latest/index.html "Go to online documentation") +Click here to view the online documentation: -[![view - Documentation](https://img.shields.io/badge/view-Documentation-blue?style=for-the-badge)](/docs/ "Go to project documentation") +[![View - Online docs](https://img.shields.io/badge/View-Online_docs-blue?style=for-the-badge)](https://fracability.readthedocs.io/en/latest/index.html "Go to online documentation") +Click here to view the source code for the documentation: +[![view - Source documentation](https://img.shields.io/badge/view-Documentation-blue?style=for-the-badge)](/docs/ "Go to project documentation") -## References 🎓 -1. Reid, M. (2020). MatthewReid854/reliability: v0. 5.1. version v0, 5. +## Authors 💎✨ + + **Gabriele Benedetti** ([gabri.benedetti@gmail.com](mailto:gabri.benedetti@gmail.com)) + + Stefano Casiraghi ([s.casiraghi21@campus.unimib.it](mailto:s.casiraghi21@campus.unimib.it)) + + Daniela Bertacchi ([daniela.bertacchi@unimib.it](mailto:daniela.bertacchi@unimib.it)) + + Andrea Bistacchi ([andrea.bistacchi@unimib.it](mailto:andrea.bistacchi@unimib.it)) -## License +## License 📄 Released under [AGPL-3.0](/LICENSE) by [@gbene](https://github.com/gbene) diff --git a/docs/index.rst b/docs/index.rst index e3f5ba9..745a6da 100644 --- a/docs/index.rst +++ b/docs/index.rst @@ -5,8 +5,7 @@ Overview --------- -**FracAbility** is a Python toolbox that can be used to analyse fracture networks in digitalized rock -outcrops. +**FracAbility** is a Python toolbox that can be used to analyse fracture networks and estimate length distributions considering and correcting the effect of right-censoring using survival analysis. These are the main features available : @@ -16,19 +15,18 @@ These are the main features available : - **Topological analysis and identification of I,Y,X and U nodes** -- **Fracture network backbone calculation** +- **Backbone identification** - **Statistical analysis tools:** + Empirical CDF and SF calculation - + Distribution fitting - + Statistical model testing - + + Distribution fitting with survival analysis + + Model selection methods - **Plotting tools:** - + Matplotlib or VTK backend + + Network objects plotting using matplotlib or vtk + Ternary node plot - + Statistical plotting + + Probability Integral Transform plots The name FracAbility recalls the `reliability `_ diff --git a/pyproject.toml b/pyproject.toml index ac37a3d..d170c49 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -3,10 +3,13 @@ requires = ['setuptools'] build-backend = 'setuptools.build_meta' [project] -name = 'fracability' +name = 'FracAbility' description = 'Analyse fracture networks for digitalized rock outcrops. ' authors = [ {name = 'Gabriele Benedetti', email = 'gabri.benedetti@gmail.com'}, + {name = 'Stefano Casiraghi', email = 's.casiraghi21@campus.unimib.it'}, + {name = 'Daniela Bertacchi', email = 'daniela.bertacchi@unimib.it'}, + {name = 'Andrea Bistacchi', email = 'andrea.bistacchi@unimib.it'}, ] readme = 'README.md' requires-python = '>=3.8'