Skip to content
Merged
Show file tree
Hide file tree
Changes from 19 commits
Commits
Show all changes
26 commits
Select commit Hold shift + click to select a range
14d1132
Create geos-pv package with geosLogReader
mlemayTTE Mar 26, 2025
a5a9819
Move PV tools and delete PVPythonViewConfigurator
Mar 26, 2025
79612ce
Merge branch 'main' into lemay/feature/geospv_package
mlemayTTE Apr 2, 2025
c556362
set local dependency path management
mlemayTTE Apr 2, 2025
341613c
update doc
mlemayTTE Apr 3, 2025
8b417e3
fix doc
mlemayTTE Apr 3, 2025
078808e
update project config
mlemayTTE Apr 3, 2025
18123f0
Manage PV plugins dependency
mlemayTTE Apr 3, 2025
9ee93a6
typing and linting fix
mlemayTTE Apr 3, 2025
1c100a8
Merge branch 'main' into lemay/feature/geospv_package
mlemayTTE Apr 4, 2025
d5b608c
Merge branch 'main' into lemay/feature/geospv_package
mlemayTTE Apr 7, 2025
0e542e1
add .vscode to .gitignore
mlemayTTE Apr 7, 2025
e39555f
linting and formatting
mlemayTTE Apr 7, 2025
a4f97e1
bug fix and settup geos-pv tests
mlemayTTE Apr 7, 2025
32463d2
fix doc issues
mlemayTTE Apr 7, 2025
7d5fe5d
fix ci geos-geomecanics and linting
mlemayTTE Apr 7, 2025
a891a83
Merge branch 'main' into lemay/feature/geospv_package
mlemayTTE Apr 8, 2025
5eec486
update geos-pv doc
mlemayTTE Apr 9, 2025
b6f9116
Merge branch 'main' into lemay/feature/geospv_package
alexbenedicto Apr 10, 2025
99686dd
Add contribution explanations for geos-pv
mlemayTTE Apr 11, 2025
ec09cf9
Merge branch 'main' into lemay/feature/geospv_package
mlemayTTE Apr 14, 2025
1759dc5
Fix doc ci
mlemayTTE Apr 14, 2025
2c39455
Update pyproject and requirements
alexbenedicto Apr 15, 2025
625b45d
Revert "Update pyproject and requirements"
mlemayTTE Apr 15, 2025
33e78e0
Harmonize dependency versions
mlemayTTE Apr 15, 2025
b8f499f
Update installation instructions
mlemayTTE Apr 15, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 4 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -162,4 +162,7 @@ cython_debug/
# be found at https://github.com/github/gitignore/blob/main/Global/JetBrains.gitignore
# and can be added to the global gitignore or merged into this file. For a more nuclear
# option (not recommended) you can uncomment the following to ignore the entire idea folder.
#.idea/
#.idea/

# VSCode
.vscode
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -142,7 +142,7 @@ If you would like to contribute to GEOS Python packages, please respect the foll

1. Create a new branch named from this template: `[CONTRIBUTOR]/[TYPE]/[TITLE]` where CONTRIBUTOR is the name of the contributor, TYPE is the type of contribution among 'feature', 'refactor', 'doc', 'ci', TITLE is a short title for the branch.
1. Add your code trying to integrate into the current code architecture.
1. Push the branch, open a new PR, and add reviewers
1. Push the branch, open a new PR respecting naming [semantics](https://gist.github.com/joshbuchea/6f47e86d2510bce28f8e7f42ae84c716), and add reviewers

If you do not have the rights to push the code and open new PRs, consider opening a new issue to explain what you want to do and ask for the dev rights.

Expand Down
5 changes: 3 additions & 2 deletions docs/conf.py
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,8 @@

# Add python modules to be documented
python_root = '..'
python_modules = ( 'geos-ats', 'geos-mesh', 'geos-posp', 'geos-timehistory', 'geos-utils', 'geos-xml-tools', 'hdf5-wrapper', 'pygeos-tools', 'geos-geomechanics' )
python_modules = ( 'geos-ats', 'geos-geomechanics', 'geos-mesh', 'geos-posp', 'geos-pv', 'geos-timehistory', 'geos-utils', 'geos-xml-tools', 'hdf5-wrapper', 'pygeos-tools' )


for m in python_modules:
sys.path.insert( 0, os.path.abspath( os.path.join( python_root, m, 'src' ) ) )
Expand Down Expand Up @@ -48,7 +49,7 @@
]

autoclass_content = 'both'
autodoc_mock_imports = [ "ats", "h5py", "lxml", "paraview", "pygeosx", "pylvarray", "meshio", "mpi4py", "scipy" ]
autodoc_mock_imports = [ "ats", "h5py", "lxml", "paraview", "pygeosx", "pylvarray", "meshio", "mpi4py", "scipy", "pandas", "matplotlib" ]
autodoc_typehints = 'none'
autodoc_typehints_format = 'short'
suppress_warnings = [ "" ]
Expand Down
12 changes: 12 additions & 0 deletions docs/geos-pv.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
GEOS Paraview plugins
=====================

.. toctree::
:maxdepth: 5
:caption: Contents:

./geos_pv_docs/home.rst

./geos_pv_docs/modules.rst

./geos_pv_docs/readers.rst
14 changes: 0 additions & 14 deletions docs/geos_posp_docs/PVplugins.rst
Original file line number Diff line number Diff line change
Expand Up @@ -87,13 +87,6 @@ PVplugins.PVGeomechanicsWorkflowVolumeWell module
:members:
:undoc-members:

PVplugins.PVGeosLogReader module
--------------------------------

.. automodule:: PVplugins.PVGeosLogReader
:members:
:undoc-members:

PVplugins.PVMergeBlocksEnhanced module
--------------------------------------

Expand All @@ -108,13 +101,6 @@ PVplugins.PVMohrCirclePlot module
:members:
:undoc-members:

PVplugins.PVPythonViewConfigurator module
-----------------------------------------

.. automodule:: PVplugins.PVPythonViewConfigurator
:members:
:undoc-members:

PVplugins.PVSurfaceGeomechanics module
--------------------------------------

Expand Down
2 changes: 0 additions & 2 deletions docs/geos_posp_docs/modules.rst
Original file line number Diff line number Diff line change
Expand Up @@ -6,8 +6,6 @@ Processing

filters

readers

processing

pyvistaTools
33 changes: 0 additions & 33 deletions docs/geos_posp_docs/processing.rst
Original file line number Diff line number Diff line change
Expand Up @@ -3,39 +3,6 @@ Processing functions

This package define functions to process data.


geos_posp.processing.geomechanicsCalculatorFunctions module
---------------------------------------------------------------

.. automodule:: geos_posp.processing.geomechanicsCalculatorFunctions
:members:
:undoc-members:
:show-inheritance:

geos_posp.processing.geosLogReaderFunctions module
------------------------------------------------------

.. automodule:: geos_posp.processing.geosLogReaderFunctions
:members:
:undoc-members:
:show-inheritance:

geos_posp.processing.MohrCircle module
------------------------------------------

.. automodule:: geos_posp.processing.MohrCircle
:members:
:undoc-members:
:show-inheritance:

geos_posp.processing.MohrCoulomb module
-------------------------------------------

.. automodule:: geos_posp.processing.MohrCoulomb
:members:
:undoc-members:
:show-inheritance:

geos_posp.processing.multiblockInpectorTreeFunctions module
---------------------------------------------------------------

Expand Down
36 changes: 0 additions & 36 deletions docs/geos_posp_docs/readers.rst

This file was deleted.

23 changes: 0 additions & 23 deletions docs/geos_posp_docs/visu.pythonViewUtils.rst

This file was deleted.

4 changes: 1 addition & 3 deletions docs/geos_posp_docs/visu.rst
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,4 @@ This package includes visualization tools dedicated to Paraview software.

visu.PVUtils

visu.mohrCircles

visu.pythonViewUtils
visu.mohrCircles
45 changes: 45 additions & 0 deletions docs/geos_pv_docs/geosLogReaderUtils.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,45 @@
GeosLogReaderUtils functions
============================

This package define functions dedicated to the GeosLogReader.


geos.pv.geosLogReaderUtils.GeosLogReaderAquifers module
-------------------------------------------------------------------

.. automodule:: geos.pv.geosLogReaderUtils.GeosLogReaderAquifers
:members:
:undoc-members:
:show-inheritance:

geos.pv.geosLogReaderUtils.geosLogReaderConvergence module
---------------------------------------------------------------------

.. automodule:: geos.pv.geosLogReaderUtils.GeosLogReaderConvergence
:members:
:undoc-members:
:show-inheritance:

geos.pv.geosLogReaderUtils.GeosLogReaderFlow module
---------------------------------------------------------------

.. automodule:: geos.pv.geosLogReaderUtils.GeosLogReaderFlow
:members:
:undoc-members:
:show-inheritance:

geos.pv.geosLogReaderUtils.GeosLogReaderFunctions module
--------------------------------------------------------------------

.. automodule:: geos.pv.geosLogReaderUtils.geosLogReaderFunctions
:members:
:undoc-members:
:show-inheritance:

geos.pv.geosLogReaderUtils.GeosLogReaderWells module
--------------------------------------------------------------------

.. automodule:: geos.pv.geosLogReaderUtils.GeosLogReaderWells
:members:
:undoc-members:
:show-inheritance:
18 changes: 18 additions & 0 deletions docs/geos_pv_docs/home.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
Home
====

**geos-pv** is a Python package that gathers `Paraview <https://www.paraview.org/>`_ plugins of GEOS python tools.

It includes:

* Paraview readers allowing to load data;
* generic tools to processes meshes;
* GEOS pre-processing tools to clean and check GEOS input mesh;
* GEOS post-processing tools to clean GEOS output mesh, compute additional properties, or create specific plots such as Mohr's circle plot.

The packages can be loaded into Paraview using the Plugin Manager from `Tools > Plugin Manager`. On success, you will
see the selected plugin in the `Filters`` menu (see `Paraview documentation <https://docs.paraview.org/en/latest/ReferenceManual/pythonProgrammableFilter.html>`.

Alternatively, geos-pv package can be build 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+. If you need to build geos-pv package with the paraview dependency, use the command:
`pip install Path/To/geosPythonPackages/geos-pv[paraview]`
11 changes: 11 additions & 0 deletions docs/geos_pv_docs/modules.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
Processing
==========

.. toctree::
:maxdepth: 5

geosLogReaderUtils

pyplotUtils

utils
13 changes: 13 additions & 0 deletions docs/geos_pv_docs/pyplotUtils.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
pyplotUtils functions
=====================

This package define options for matplotlib.


geos.pv.pyplotUtils.matplotlibOptions module
---------------------------------------------

.. automodule:: geos.pv.pyplotUtils.matplotlibOptions
:members:
:undoc-members:
:show-inheritance:
10 changes: 10 additions & 0 deletions docs/geos_pv_docs/readers.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
Paraview readers
================

readers.PVGeosLogReader module
----------------------------------

.. automodule:: readers.PVGeosLogReader
:members:
:undoc-members:
:show-inheritance:
29 changes: 29 additions & 0 deletions docs/geos_pv_docs/utils.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
Utilities
=========

This package defines utilities for Paraview plugins.


geos.pv.utils.checkboxFunction module
---------------------------------------------

.. automodule:: geos.pv.utils.checkboxFunction
:members:
:undoc-members:
:show-inheritance:

geos.pv.utils.DisplayOrganizationParaview module
-------------------------------------------------

.. automodule:: geos.pv.utils.DisplayOrganizationParaview
:members:
:undoc-members:
:show-inheritance:

geos.pv.utils.paraviewTreatments module
---------------------------------------------

.. automodule:: geos.pv.utils.paraviewTreatments
:members:
:undoc-members:
:show-inheritance:
6 changes: 4 additions & 2 deletions docs/index.rst
Original file line number Diff line number Diff line change
Expand Up @@ -80,11 +80,13 @@ Packages

geos-ats

geos-geomechanics

geos-mesh

geos-posp

geos-geomechanics
geos-pv

geos-timehistory

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@
import numpy.typing as npt
from typing_extensions import Self

from geos_posp.processing.geomechanicsCalculatorFunctions import (
from geos.geomechanics.processing.geomechanicsCalculatorFunctions import (
computeStressPrincipalComponentsFromStressVector, )

__doc__ = """
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@
import numpy as np
import numpy.typing as npt

from geos_posp.processing.MohrCoulomb import MohrCoulomb
from geos.geomechanics.model.MohrCoulomb import MohrCoulomb
from geos.utils.algebraFunctions import getAttributeMatrixFromVector
from geos.utils.PhysicalConstants import (
EPSILON, )
Expand Down
3 changes: 3 additions & 0 deletions geos-posp/src/PVplugins/PVAttributeMapping.py
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,8 @@
if parent_dir_path not in sys.path:
sys.path.append( parent_dir_path )

import PVplugins # noqa: F401

from geos.utils.Logger import Logger, getLogger
from geos_posp.filters.AttributeMappingFromCellCoords import (
AttributeMappingFromCellCoords, )
Expand Down Expand Up @@ -211,6 +213,7 @@ def RequestData(
"Use either vtkUnstructuredGrid or vtkMultiBlockDataSet" )

outData.Modified()

mess: str = "Attributes were successfully transferred ."
self.m_logger.info( mess )
except AssertionError as e:
Expand Down
2 changes: 2 additions & 0 deletions geos-posp/src/PVplugins/PVCreateConstantAttributePerRegion.py
Original file line number Diff line number Diff line change
Expand Up @@ -15,6 +15,8 @@
if parent_dir_path not in sys.path:
sys.path.append( parent_dir_path )

import PVplugins # noqa: F401

import vtkmodules.util.numpy_support as vnp
from geos.utils.Logger import Logger, getLogger
from geos_posp.processing.multiblockInpectorTreeFunctions import (
Expand Down
Loading