Skip to content

Commit 0d508ad

Browse files
docs: Update README (#160)
* DBG * More modifications * Fix typo
1 parent 2a57050 commit 0d508ad

File tree

1 file changed

+64
-74
lines changed

1 file changed

+64
-74
lines changed

README.md

Lines changed: 64 additions & 74 deletions
Original file line numberDiff line numberDiff line change
@@ -3,103 +3,94 @@
33
[![CI](https://github.com/GEOS-DEV/GEOS/actions/workflows/ci_tests.yml/badge.svg)](https://github.com/GEOS-DEV/geosPythonPackages/actions?query=branch%3Adevelop)
44
[![docs](https://readthedocs.com/projects/geosx-geosx/badge/?version=latest)](https://geosx-geosx.readthedocs-hosted.com/projects/geosx-geospythonpackages/en/latest/)
55

6-
Welcome to the GEOS Python Package Repository!
7-
==============================================
6+
Welcome to the GEOS Python Package Repository !
7+
===============================================
88

9-
This repository contains a set of python packages that are used alongside [GEOS](https://github.com/GEOS-DEV/GEOS).
9+
The `geosPythonPackages` repository contains a set of python tools that are used alongside [GEOS](https://github.com/GEOS-DEV/GEOS). They include testing tools, pre- and post-processing filters and plugins, as well as diverse executables. You will find below a brief description of the different packages, please refer to the [Python Tools documentation](https://geosx-geosx.readthedocs-hosted.com/projects/geosx-geospythonpackages/en/latest/) for more details.
1010

1111

12-
Package summary
13-
---------------
12+
Packages organization
13+
---------------------
1414

15-
**WARNING: This repository is currently under refactoring to improve package organization, maintainability, and dependency management. The following describes the final package organisation. Some packages may still miss or contain code that will be move later.**
15+
> [!WARNING]
16+
> This repository is currently under refactoring to improve package organization, maintainability, and dependency management. The following describes the final package organisation. Some packages may still miss or contain code that will be moved later.
1617
17-
* `geos-ats` package includes tools for managing integrated tests for GEOS.
18-
* `pygeos-tools` package adds a variety of tools for working with *pygeosx* objects.
18+
* Data structures and processing packages
19+
* `geos-ats`: tools for managing integrated tests for GEOS.
20+
* `pygeos-tools`: variety of tools for working with *pygeosx* objects.
21+
* `geos-utils`: basic utilities
22+
* `geos-geomechanics`: geomechanics functions and data model
23+
* `geos-mesh`: generic mesh processing tools
24+
* `hdf5-wrapper`: wrapper to load hdf5 files
25+
* `geos-xml-tools`: xml reader and writer dedicated to GEOS xml file
26+
* User-oriented API packages
27+
* `geos-processing`: GEOS pre- and post-processing VTK filters
28+
* `xml-vtk`: conversion of GEOS xml to VTK objects and conversely
29+
* Hands-on executables that can be used through command line
30+
* `mesh-doctor`: GEOS pre-processing mesh validation application
31+
* `geos-timehistory`: load and plot hdf5 files
32+
* `geos-trame`: web interface to check, display objects, and edit GEOS xml file (see [Trame documentation](https://kitware.github.io/trame/guide/tutorial/))
33+
* Paraview plugins (see [Paraview](https://docs.paraview.org/) documentation)
34+
* `geos-pv`: plugins that wrap GEOS Python tools
1935

20-
The next packages are dedicated to pre- and post-process GEOS inputs/outputs.
21-
22-
The following packages contain basic utilities used by the other ones:
23-
24-
* `geos-utils`: basic utilities
25-
* `geos-geomecanics`: geomechanics functions and data model
26-
27-
28-
The following packages define data models, vtk filters, and user-oriented API:
29-
30-
* `geos-xml-tools`: xml reader and writer dedicated to GEOS xml file
31-
* `hdf5-wrapper`: wrapper to load hdf5 files
32-
* `geos-mesh`: general mesh processing tools
33-
* `geos-prep`: GEOS pre-processing tools
34-
* `geos-posp`: GEOS post-processing tools
35-
36-
37-
The following packages define hands-on executables that can be used through the command line:
38-
39-
* `mesh-doctor`: GEOS pre-processing application
40-
* `time-history`: load and plot hdf5 files
41-
* `geos-xml-viewer`: load GEOS xml file and display geometrical objects (mesh, boxes, wells)
42-
* `geos-trame`: web interface to check, display objects, and edit GEOS xml file (see [Trame documentation](https://kitware.github.io/trame/guide/tutorial/))
43-
44-
45-
The following package defines [Paraview](https://docs.paraview.org/) plugins that wrap GEOS Python tools
46-
47-
* `geos-pv`
4836

4937
GEOS Python packages dependency tree (inter-dependency and main external dependencies) is the following:
5038

5139
```
5240
├── geos-ats
5341
├── pygeos-tools
42+
│ ├── geos-utils
43+
│ ├── geos-xml-tools
44+
│ ├── geos-mesh
45+
│ ├── vtk
46+
│ └── h5py
47+
|
5448
├── geos-utils
49+
|
5550
├── geos-geomechanics
51+
│ └── geos-utils
52+
|
53+
├── geos-mesh
5654
│ ├── geos-utils
57-
55+
│ └── vtk
56+
|
5857
├── hdf5-wrapper
59-
── h5py
60-
58+
── h5py
59+
|
6160
├── geos-xml-tools
62-
│ ├── lxml
63-
64-
├── geos-mesh
6561
│ ├── geos-utils
66-
── vtk
67-
68-
├── geos-prep
62+
── lxml
63+
|
64+
├── geos-processing
6965
│ ├── geos-mesh
70-
── geos-xml-tools
71-
72-
├── geos-posp
66+
── geos-geomechanics
67+
|
68+
├── xml-vtk
7369
│ ├── geos-mesh
74-
│ ├── geos-geomechanics
75-
76-
├── time-history
77-
│ ├── hdf5-wrapper
70+
| └── geos-xml-tools
7871
72+
├── geos-timehistory
73+
│ └── hdf5-wrapper
74+
|
7975
├── mesh-doctor
8076
│ ├── geos-prep
81-
── pyvista
82-
77+
── pyvista
78+
|
8379
├── geos-trame
8480
│ ├── geos-xml-tools
8581
│ ├── geos-mesh
8682
│ ├── pyvista
87-
── trame
83+
── trame
8884
89-
├── geos-xml-viewer
90-
│ ├── geos-xml-tools
91-
│ ├── geos-mesh
92-
│ ├── pyvista
93-
94-
├── geos-pv
95-
├── geos-prep
96-
├── geos-posp
85+
└── geos-pv
86+
├── geos-processing
87+
├── geos-mesh
88+
├── geos-geomechanics
89+
├── geos-utils
9790
├── geos-xml-tools
98-
── paraview
91+
── paraview
9992
```
10093

101-
See the [documentation](https://geosx-geosx.readthedocs-hosted.com/projects/geosx-geospythonpackages/en/latest/) for additional details about the packages and how to use them.
102-
10394

10495
Installation
10596
-------------
@@ -112,8 +103,7 @@ Installation
112103

113104
GEOS Python packages can be manually installed with pip using `python` >= 3.10.
114105

115-
To install any package, run the following commands from the geosPythonPackage directory:
116-
106+
To install any package, run the following commands from the `geosPythonPackage` directory:
117107
```
118108
python -m venv .venv
119109
source .venv/bin/activate
@@ -122,16 +112,16 @@ Installation
122112
```
123113
124114
You can test installed package by running the commands:
125-
126115
```
127116
python -m pip install pytest
128117
python -m pytest ./<PACKAGE_NAME>
129118
```
130119
131-
[!WARNING]
120+
>[!WARNING]
132121
Due to local package conflicts with `pip install`, it is recommended to use the `--upgrade` option when building packages, or to use the script `install_packages.sh` located at the root of the repository.
133-
[!NOTE]
134-
geos-pv package cannot be build alone, but together with Paraview ([see Paraview compilation guide](https://gitlab.kitware.com/paraview/paraview/-/blob/master/Documentation/dev/build.md)). It is recommended to use Paraview v5.12+, which is based on python 3.10+. Alternatively, plugins from `geos-pv/src/geos/pv/plugins` can be manually loaded into Paraview ([see documentation](https://docs.paraview.org/en/latest/ReferenceManual/pythonProgrammableFilter.html#python-algorithm)).
122+
123+
>[!NOTE]
124+
`geos-pv` package cannot be build alone, but together with Paraview ([see Paraview compilation guide](https://gitlab.kitware.com/paraview/paraview/-/blob/master/Documentation/dev/build.md)). It is recommended to use Paraview v5.13+, which is based on python 3.10+. Alternatively, plugins from `geos-pv/src/geos/pv/plugins` can be manually loaded into Paraview ([see documentation](https://docs.paraview.org/en/latest/ReferenceManual/pythonProgrammableFilter.html#python-algorithm)).
135125
136126
137127
Contributions
@@ -180,8 +170,8 @@ dependencies = [
180170
]
181171
```
182172
183-
[!IMPORTANT]
184-
geos-pv dependencies are managed using a `requirements.txt` (together with the `setup.py`) file where all internal (and external if needed) dependencies are present. It ensures that internal dependency paths are correctly set when plugins are manually loaded into Paraview.
173+
>[!IMPORTANT]
174+
`geos-pv` dependencies are managed using a `requirements.txt` (together with the `setup.py`) file where all internal (and external if needed) dependencies are present. It ensures that internal dependency paths are correctly set when plugins are manually loaded into Paraview.
185175
186176
Release
187177
-------

0 commit comments

Comments
 (0)