Code Monkey home page Code Monkey logo

neqsim's Introduction

Build Status Build maven

NeqSim

NeqSim is the main part of the NeqSim project. NeqSim (Non-Equilibrium Simulator) is a Java library for estimation of fluid behavior and process design for oil and gas production. The basis for NeqSim is a library of fundamental mathematical models related to phase behavior and physical properties of oil and gas. NeqSim is easilly extended with new method. NeqSim development was initiated at the Norwegian University of Science and Technology (NTNU).

Releases

NeqSim releases are available as java packages (jar files) and as source code. NeqSim can be used in a third party application by adding NeqSim.jar to the classpath.

Getting started as a NeqSim Java user

NeqSim can be used in a Java application by adding the NeqSim.jar found in NeqSim releases to the classpath. A demonstration of dowloading the library and running a TPflash bencmark is illustrated in this NeqSim Colab demo.

Getting Started as a NeqSim Java developer

See the NeqSim Java Wiki for how to use the NeqSim API. NeqSim can be built using the Maven build system (https://maven.apache.org/). All NeqSim build dependencies are given in the pom.xml file.

Initial setup

The NeqSim source code is downloaded by cloning the library to your local computer (alternatively fork it to your private reprository). The following commands are dependent on a local installation of GIT and Maven.

git clone https://github.com/equinor/neqsim.git
cd neqsim
mvn install

An interactive demonstration of how to get started as a NeqSim developer is presented in this NeqSim Colab demo.

Running the tests

The test files are written in JUnit5 and placed in the test directory. All test have to be passed before merging to the master. Test code shuld be written for all new code added to the project.

Deployment

The NeqSim source code is compiled and distributed as a Java library. NeqSim releases are available for download from the release pages.

Built With

Maven - Dependency Management

Contributing

See the getting started as a NeqSim developer documentation. Please read CONTRIBUTING.md for details on our code of conduct, and the process for submitting pull requests. An interactive demonstration of how to get started as a NeqSim developer is presented in this NeqSim Colab demo.

Discussion forum

Questions related to neqsim can be posted in the github discussion pages.

Versioning

NeqSim use SemVer for versioning.

Authors and contact persons

Even Solbraa ([email protected]), Marlene Louise Lund

Licence

NeqSim is distributed under the Apache-2.0 licence.

Acknowledgments

A number of master and PhD students at NTNU have contributed to development of NeqSim. We greatly acknowledge their contributions.

NeqSim modules

NeqSim is built upon six base modules:

  1. Thermodynamic Routines
  2. Physical Properties Routines
  3. Fluid Mechanic Routines
  4. Unit Operations
  5. Chemical Reactions Routines
  6. Parameter Fitting Routines
  7. Process simulation routines

File System

neqsim/: main library with all modules

neqsim/thermo/: Main path for thermodynamic routines neqsim/thermo/util/examples/: examples of use of Thermodynamic Models and Routines

neqsim/thermodynamicOperation: Main path for flash routines (TPflash, phase envelopes, etc.) neqsim/thermodynamicOperation/util/example/: examples of use of thermodynamic operations (eg. flash calculations etc.)

neqsim/physicalProperties: Main path for Physical Property methods neqsim/physicalProperties/util/examples/: Examples of use of physical properties calculations

neqsim/physicalProperties: Main path for Physical Property methods neqsim/physicalProperties/util/examples/: Examples of use of physical properties calculations

neqsim/processSimulation: Main path for Process Simulation Calculations neqsim/processSimulation/util/examples/: Examples of use of Process Simulation calculations

changelog.txt : History of what changed between each version. license.txt: license document

Toolboxes

See NeqSim homepage. NeqSim toolboxes are avalable via GitHub for alternative programming languages.

Related open source projects:

NeqSim Python/Colab

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.