Giter Site home page Giter Site logo

co2system.jl's Introduction

Hi there ๐Ÿ‘‹

I am a marine carbonate chemist at NIOZ Royal Netherlands Institute for Sea Research, Texel.

co2system.jl's People

Contributors

jamesorr avatar mphtest avatar mvdh7 avatar

Stargazers

 avatar  avatar  avatar  avatar

Watchers

 avatar  avatar

co2system.jl's Issues

How to cite CO2System.jl

I'm trying to cite this tool in a peer-reviewed publication and wonder if you could help me create a citation for this Julia version of the CO2SYS, i.e., CO2System.jl?

Below is the citation info for this tool according to this Github page. Unfortunately, none of them are specific to the CO2System.jl. Are there any plans to min a citation using Zenodo?

CITATION

If you use any CO2SYS related software, please cite the original work by Lewis and Wallace (1998).
If you use CO2SYS.m, please cite van Heuven et al (2011).
If you use errors.m or derivnum.m, please cite Orr et al. (2018).

[Suggestion] "Scalarize" the main function

Following jamesorr/CO2SYS-MATLAB#2, here is copy-pasted suggestion:

I wanted to suggest converting the main function, which takes scalars or arrays as input, into a function that takes only scalars as inputs. I think a scalar function, called e.g., co2sys(args...), would have many advantages over the current version (in Julia). Note that a scalar function would be easy to broadcast to arrays with Julia's dot syntax, e.g., for a simple example:

julia> f(x,y) = x + y # define the function on scalars
f (generic function with 1 method)

julia> f.([1, 2, 3], 4) # easily broadcast to those inputs that are arrays
3-element Vector{Int64}:
 5
 6
 7

Another potential gain is that the code would be simpler (e.g., less lines of code because no need for all the array treatment, the allocations, and so on). Furthermore, it might be computationally more efficient because, e.g., no need to reallocate the boolean indices array F dozens of times. (Although efficiency would need to be benchmarked against the current vectorized version I guess.)

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.