Python package to Create, Read, Write, Edit, and Visualize GSFLOW models

Overview

pyGSFLOW logo

pygsflow continuous integration codecov PyPI

pygsflow

pyGSFLOW is a python package to Create, Read, Write, Edit, and Visualize GSFLOW models

API Documentation

pyGSFLOW API documentation can be found @

https://pygsflow.github.io/pygsflowdocs/

Examples

Ipython notebook example problems can be found in the examples directory.
https://github.com/pygsflow/pygsflow/tree/master/examples

Installation

The pygsflow repository can be installed using pip. To install the most recent release version, open a command prompt or anaconda prompt terminal and type:

pip install pygsflow

or

pip install https://github.com/pygsflow/pygsflow/zipball/master

Or to install the development version with the most recent updates

pip install https://github.com/pygsflow/pygsflow/zipball/develop

Alternatively the user can download a copy of the repository, open a command prompt or anaconda promt terminal, cd into the trunk directory and type:

pip install .

Authors

Ayman Alzraiee, Joshua Larsen, Donald Martin, Rich Niswonger

How to Cite

Larsen, J. D., Alzraiee, A., Niswonger, R., 2021, pyGSFLOW v1.0.0: U.S. Geological Survey Software Release, 2 July 2021, https://doi.org/10.5066/P9NPZ5AD

Bugs

The code is in active development and although there is a testing infrastructure set up we cannot catch all the software bugs without the help of users. If you find a bug or have an issue, please report it by opening a new issue. You can open a new issue by clicking the issues tab near the top of the page.

Project History

This project is a refinement and continuation of the original pygsflow repository at:

https://github.com/aymanalz/pygsflow

Disclaimer

This software is preliminary or provisional and is subject to revision. It is being provided to meet the need for timely best science. The software has not received final approval by the U.S. Geological Survey (USGS). No warranty, expressed or implied, is made by the USGS or the U.S. Government as to the functionality of the software and related material nor shall the fact of release constitute any such warranty. The software is provided on the condition that neither the USGS nor the U.S. Government shall be held liable for any damages resulting from the authorized or unauthorized use of the software

Comments
  • JOSS review feedback

    JOSS review feedback

    Hello pygsflow team! I'm a reviewer for your submission to JOSS tracked here. I'll use this issue to track my feedback on the paper and software -- feel free to split out my comments into separate issues if that helps your workflow.

    README.md

    • [x] #13

    Paper

    • [x] #18
    • [x] Paragraph starting on line 62: since you mention external sensitivity analysis software, it could be useful for readers to cite the calibration software typically used in GSFLOW applications

    Jupyter notebooks

    • [x] #15
    • [x] #16
    • [x] #17
    • [x] #14
    • [x] Just wanted to say that the plots in the stream vector notebook are really nice looking!
    opened by thurber 4
  • remove_record() method does not recognize parameter names

    remove_record() method does not recognize parameter names

    I am trying to remove parameters from the control file.

    I can get_record(name='soilzone_module'):

    soilzone_module 1 4 soilzone

    But I can't remove_record(name='soilzone_module'):

    /home/mrush/miniconda3/lib/python3.8/site-packages/gsflow/param_base.py:211: UserWarning: The record does not exist: soilzone_module warnings.warn("The record does not exist: {}".format(name),

    opened by mrush-usgs 2
  • Typo in pyGSFLOW documentation

    Typo in pyGSFLOW documentation

    Greetings, pyGSFLOW documentation site has a typo in its text as well as in its page title. It states "Welocme" instead of "Welcome".

    PoC: https://pygsflow.github.io/pygsflowdocs/#welocme-to-the-pygsflow-documentation

    opened by ccalvocm 1
  • JOSS review feedback 2

    JOSS review feedback 2

    Hi all, this checklist will contain feedback related to your JOSS Review. I will continue to update this checklist as I move through my review:

    Installation

    • [x] Indicate which python versions are supported in the README.
    • [x] Installation fails from develop branch on Python3.6 with EnvironmentError("pyGSFLOW is only supported with python 3.7 and above"). Please indicate that Python3.6 is not supported in the README.
    • [x] Installation fails from develop branch on Python3.7 due to dependency error ERROR: Could not find a version that satisfies the requirement flopy>=3.3.5
    • [x] Installation fails from develop branch on Python3.8 due to dependency error ERROR: Could not find a version that satisfies the requirement flopy>=3.3.5
    • [x] Installation fails from develop branch on Python3.9 due to dependency error ERROR: Could not find a version that satisfies the requirement flopy>=3.3.5
    • [x] Installation fails from develop branch on Python3.10 due to dependency error: ERROR: Could not find a version that satisfies the requirement flopy>=3.3.5
    • [x] #24
    • [x] #25

    Documentation

    • [x] Cannot find contributing guidelines in README.
    • [x] #23
    • [x] #22

    Misc

    • [x] 'Dependency' issue tag is misspelled.
    • [x] #21
    • [x] #20
    opened by mdbartos 1
  • Parameter 'Width' Integers Not Required in Parameter File

    Parameter 'Width' Integers Not Required in Parameter File

    prms_parameter.py currently prints the parameter 'width' attribute (default 10) to the parameter file. These numbers are not required for prms/gsflow.

    https://github.com/pygsflow/pygsflow/blob/master/gsflow/prms/prms_parameter.py

    Lines 535 and 584

    opened by mrush-usgs 1
  • Adding building Parameters with JSON - Defaults

    Adding building Parameters with JSON - Defaults

    I added the build by default for parameters in the JSON file. I think I am missing a default file that I can upload later, but I put different cases with different dimensions for parameters in the docs of the function

    opened by jonathanqv 0
  • NetCDF4 and Rasterio conflict: HDF error when trying to write Dataset

    NetCDF4 and Rasterio conflict: HDF error when trying to write Dataset

    The rasterio wheels on PyPI include HDF5 and netCDF4 shared libraries and they can create conflicts with the netCDF4 wheel.

    The proposed workaround is to install rasterio from the source distribution instead of from binary wheel.

    pip install netcdf4
    pip install --no-binary rasterio rasterio
    

    This method works on all tested sytems (ubuntu, macos, and windows) to avoid binary library conflicts.

    opened by jlarsen-usgs 0
Releases(1.1.0)
Owner
pyGSFLOW
pyGSFLOW is a python package for GSFLOW integrated models
pyGSFLOW
Fractals plotted on MatPlotLib in Python.

About The Project Learning more about fractals through the process of visualization. Built With Matplotlib Numpy License This project is licensed unde

Akeel Ather Medina 2 Aug 30, 2022
Simple function to plot multiple barplots in the same figure.

Simple function to plot multiple barplots in the same figure. Supports padding and custom color.

Matthias Jakobs 2 Feb 21, 2022
A tool for creating Toontown-style nametags in Panda3D

Toontown-Nametag Toontown-Nametag is a tool for creating Toontown Online/Toontown Rewritten-style nametags in Panda3D. It contains a function, createN

BoggoTV 2 Dec 23, 2021
RockNext is an Open Source extending ERPNext built on top of Frappe bringing enterprise ready utilization.

RockNext is an Open Source extending ERPNext built on top of Frappe bringing enterprise ready utilization.

Matheus Breguêz 13 Oct 12, 2022
Python package to Create, Read, Write, Edit, and Visualize GSFLOW models

pygsflow pyGSFLOW is a python package to Create, Read, Write, Edit, and Visualize GSFLOW models API Documentation pyGSFLOW API documentation can be fo

pyGSFLOW 21 Dec 14, 2022
This is a Web scraping project using BeautifulSoup and Python to scrape basic information of all the Test matches played till Jan 2022.

Scraping-test-matches-data This is a Web scraping project using BeautifulSoup and Python to scrape basic information of all the Test matches played ti

Souradeep Banerjee 4 Oct 10, 2022
Custom Plotly Dash components based on Mantine React Components library

Dash Mantine Components Dash Mantine Components is a Dash component library based on Mantine React Components Library. It makes it easier to create go

Snehil Vijay 239 Jan 08, 2023
HW 02 for CS40 - matplotlib practice

HW 02 for CS40 - matplotlib practice project instructions https://github.com/mikeizbicki/cmc-csci040/tree/2021fall/hw_02 Drake Lyric Analysis Bar Char

13 Oct 27, 2021
FairLens is an open source Python library for automatically discovering bias and measuring fairness in data

FairLens FairLens is an open source Python library for automatically discovering bias and measuring fairness in data. The package can be used to quick

Synthesized 69 Dec 15, 2022
The windML framework provides an easy-to-use access to wind data sources within the Python world, building upon numpy, scipy, sklearn, and matplotlib. Renewable Wind Energy, Forecasting, Prediction

windml Build status : The importance of wind in smart grids with a large number of renewable energy resources is increasing. With the growing infrastr

Computational Intelligence Group 125 Dec 24, 2022
A Python library created to assist programmers with complex mathematical functions

libmaths was created not only as a learning experience for me, but as a way to make mathematical models in seconds for Python users using mat

Simple 73 Oct 02, 2022
PyFlow is a general purpose visual scripting framework for python

PyFlow is a general purpose visual scripting framework for python. State Base structure of program implemented, such things as packages disco

1.8k Jan 07, 2023
Draw datasets from within Jupyter.

drawdata This small python app allows you to draw a dataset in a jupyter notebook. This should be very useful when teaching machine learning algorithm

vincent d warmerdam 505 Nov 27, 2022
Simple spectra visualization tool for astronomers

SpecViewer A simple visualization tool for astronomers. Dependencies Python = 3.7.4 PyQt5 = 5.15.4 pyqtgraph == 0.10.0 numpy = 1.19.4 How to use py

5 Oct 07, 2021
view cool stats related to your discord account.

DiscoStats cool statistics generated using your discord data. How? DiscoStats is not a service that breaks the Discord Terms of Service or Community G

ibrahim hisham 5 Jun 02, 2022
Leyna's Visualizing Data With Python

Leyna's Visualizing Data Below is information on the number of bilingual students in three school districts in Massachusetts. You will also find infor

11 Oct 28, 2021
A Python-based non-fungible token (NFT) generator built using Samilla and Matplotlib

PyNFT A Pythonic NF (non-fungible token) generator built using Samilla and Matplotlib Use python pynft.py [amount] The intention behind this generato

Ayush Gundawar 6 Feb 07, 2022
3D rendered visualization of the austrian monuments registry

Visualization of the Austrian Monuments Visualization of the monument landscape of the austrian monuments registry (Bundesdenkmalamt Denkmalverzeichni

Nikolai Janakiev 3 Oct 24, 2019
Interactive chemical viewer for 2D structures of small molecules

👀 mols2grid mols2grid is an interactive chemical viewer for 2D structures of small molecules, based on RDKit. ➡️ Try the demo notebook on Google Cola

Cédric Bouysset 154 Dec 26, 2022
visualize_ML is a python package made to visualize some of the steps involved while dealing with a Machine Learning problem

visualize_ML visualize_ML is a python package made to visualize some of the steps involved while dealing with a Machine Learning problem. It is build

Ayush Singh 164 Dec 12, 2022