Skip to content

Commit

Permalink
Updated README.md and pyproject.toml to add authors
Browse files Browse the repository at this point in the history
  • Loading branch information
gbene committed May 10, 2024
1 parent 3d83a4a commit 120ef4c
Show file tree
Hide file tree
Showing 3 changed files with 32 additions and 59 deletions.
72 changes: 22 additions & 50 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -10,82 +10,54 @@
![maintained - yes](https://img.shields.io/badge/maintained-yes-green)
</div>

**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)<sup>1</sup>
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)
14 changes: 6 additions & 8 deletions docs/index.rst
Original file line number Diff line number Diff line change
Expand Up @@ -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 :

Expand All @@ -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 <https://github.com/MatthewReid854/reliability/tree/master>`_
Expand Down
5 changes: 4 additions & 1 deletion pyproject.toml
Original file line number Diff line number Diff line change
Expand Up @@ -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'
Expand Down

0 comments on commit 120ef4c

Please sign in to comment.