Coder Social home page Coder Social logo

superwell's Introduction

build

IN DEVELOPMENT!

superwell: A model to estimate groundwater availability and extraction costs

The superwell package will provide functions to calculate estimates of the global volume and unit-costs of accessible groundwater production in 235 GCAM water regions.

Description

The superwell package is used to determine...

Get Started with superwell

superwell can be installed directly from its GitHub repository using the R devtools package. From an R prompt, run the command:

devtools::install_github('JGCRI/superwell')

Inputs

The superwell code requires three input files:

  • wellParams.yml
  • GCAM_Electrical_Rates.yml
  • Inputs.csv

File wellParams.yml contains values of the following parameters:

  • Annual operation time
  • Depletion Limit
  • Energy cost rate
  • Interest Rate
  • Maintenance factor
  • Max lifetime in years
  • Pump efficiency
  • Specific weight
  • Static head
  • Well diameter
  • Well Install 10
  • Well Install 20
  • Well Install 30
  • Initial Well Yield.

File GCAM_Electrical_Rates.yml contains assumptions on the cost of electricity in 172 countries.

File Inputs.csv contains data on permeability, porosity, depth, thickness, area and the WHY class of 235 water basins.

Output

The output file contains the following:

  • Number of iteration
  • Time (1-20 years)
  • Unit cost
  • Hydraulic conductivity
  • Radial extent
  • Number of wells
  • Volume of water produced
  • Total volume of water produced
  • Total volume of water Available
  • Continent
  • Object ID
  • Country GCAM ID
  • Basin name

superwell's People

Contributors

crvernon avatar hassaniazi avatar nealtg avatar nkholod avatar

Stargazers

 avatar  avatar

Watchers

 avatar  avatar  avatar  avatar

Forkers

ifthompson

superwell's Issues

Update to revised source code

Update working code as it is currently represented from /connie-1/projects/JGCRI_YONK/JGCRI/DJ_Share/R Code/MENA_Results_161216/updatedformat/5/superwell.R

Add CI for build test and other

Setup this repository and codebase with continuous integration via Travis-CI. Setup for initial package build tests and set stage for development test suite.

Add existing code

Add existing code as found on //pnl/projects/JGCRI_YONK/JGCRI/DJ_Share/ downloaded on July 31, 2019

Replace hard-coded values

Replace hard-coded values with variable names within the code. We will want to be able to manipulate these values without having to reach into the functions that use them.

Structure code as an R package

Hey, team, I noticed that the code for this project is in an R script at the top level of the repository. Is there any chance I could talk you guys into structuring the code as an R package? Making it a package would make it a lot easier for prospective users to install it, and it also allows you to more easily manage dependencies on other packages. Also, when you install a package, the code goes into a discoverable location, which is a feature that our model coupling code uses to find the code that implements its components. Finally, R packages have a very nice documentation system that you could take advantage of if you were to package the code.

Restructure the way the output file is written

Currently, the output file of superwell is written line by line in a series of loops. It would be create to write this at the end of the process to not have so much IO causing performance decreases. We would also like to be able to return the output as a data frame.

Debug existing codebase

Debug existing codebase that has been converted into a package to prep development effort.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.