Getting started with NeqSim and Github
The NeqSim library as a jar files can be downloaded from the NeqSim release pages. A shaded library is distributed including all dependent libraries used by NeqSim. Use of NeqSim in a Java program is done by adding NeqSim.jar to the classpath.
Building NeqSim from source is done by cloning the project to a local directory on the developer computer. Building the code is done using JDK8+. NeqSim uses a number of libraries (jar files) for various calculations. These libraries must be available as part of the compilation process. The required libraries are listed in the pom.xml file. NeqSim can be built using the Maven build system (https://maven.apache.org/). All NeqSim build dependencies are given in the pom.xml file.
An interactive demonstration of how to get started as a NeqSim developer is presented in this NeqSim Colab demo.
Also see NeqSim JavaDoc.
And also see the Java tests where a lot of the functionality is demonstrated.
๐ NeqSim Java Documentation - Table of Contents
Navigate through the documentation organized from introductory concepts to advanced topics.
๐ Part I: Getting Started (Beginner)
| # | Topic | Description |
|---|---|---|
| 1 | Getting started with NeqSim and GitHub | Installation and quick start |
| 2 | Getting started as a NeqSim developer | Development environment setup |
| 3 | The NeqSim parameter database | Component database and parameters |
๐งช Part II: Fundamentals - Fluids & Thermodynamics (Beginner-Intermediate)
| # | Topic | Description |
|---|---|---|
| 4 | Example of setting up a fluid and running simple flash calculations | Basic fluid creation and flash |
| 5 | Select thermodynamic model and mixing rule | EOS selection and configuration |
| 6 | Flash calculations and phase envelope calculations using NeqSim | Phase equilibria calculations |
| 7 | Calculation of thermodynamic and physical properties using NeqSim | Property calculation methods |
๐ข๏ธ Part III: Fluid Characterization (Intermediate)
| # | Topic | Description |
|---|---|---|
| 8 | Oil Characterization in NeqSim | Crude oil and condensate characterization |
| 9 | Aqueous fluids and NeqSim | Water and brine systems |
| 10 | Electrolytes and NeqSim | Electrolyte thermodynamics |
โ๏ธ Part IV: Process Simulation (Intermediate)
| # | Topic | Description |
|---|---|---|
| 11 | Process Calculations in NeqSim | Process simulation fundamentals |
Equipment-Specific Guides
| Topic | Description | |โโ-|โโโโ-| | Compressor calculations | Compressor modeling | | Compressor curves | Performance curves and maps |
๐ง Part V: Extending NeqSim (Advanced)
| # | Topic | Description |
|---|---|---|
| 12 | Adding a thermodynamic model in NeqSim | Implement custom EOS models |
| 13 | Adding a viscosity model in NeqSim | Implement custom viscosity correlations |
| 14 | Adding an unit operation in NeqSim | Create custom process equipment |
๐ฅ๏ธ Part VI: Integration & Deployment (Advanced)
| # | Topic | Description |
|---|---|---|
| 15 | How to make a NeqSim API | Building REST APIs with NeqSim |
| 16 | Create native image using GraalVM | Native compilation for performance |
๐ Part VII: Performance & Debugging (Advanced)
| # | Topic | Description |
|---|---|---|
| 17 | Profiling calculations | Performance analysis and optimization |
| 18 | Dynamic process simulations | Transient and dynamic modeling |
๐ Additional Documentation Resources
In-Repository Documentation (docs/ folder)
The repository contains extensive documentation organized by module:
Core Modules
- Modules Overview - Architecture and module structure
- Reference Manual Index - Complete documentation index
Thermodynamics
- Thermodynamics Guide - Comprehensive thermodynamics overview
- Flash Equations and Tests - Flash calculation methods
- Viscosity Models - Viscosity calculation models
- Steam Tables IF97 - Steam table implementation
Process Simulation
- Process Simulation Guide - Process modeling patterns
- Advanced Process Simulation - Advanced techniques
- Distillation Column - Column modeling
- Pump Usage Guide - Pump calculations
Pipeline & Multiphase Flow
- Pipeline Index - Pipeline documentation hub
- Two-Fluid Model - Two-phase flow
- Beggs and Brill Correlation - Pressure drop
- Pipeline Heat Transfer - Thermal modeling
Safety & Dynamics
- PSV Dynamic Sizing - Relief valve sizing
- Process Transient Simulation Guide - Dynamic simulation
- ESD Fire Alarm System - Safety systems
PVT & Characterization
- PVT Simulation Workflows - PVT studies
- Fluid Characterization - Fluid setup
- Black Oil Flash Playbook - Black oil models
Integration
- AI Platform Integration - AI/ML integration
- MPC Integration - Model predictive control
- Real-Time Integration Guide - Real-time systems
Development
- Developer Setup - Environment setup
- Test Overview - Testing guidelines
- Usage Examples - Code examples
๐ Quick Links
| Resource | Link |
|---|---|
| Source Code | github.com/equinor/neqsim |
| JavaDoc | NeqSim JavaDoc |
| Java Tests | Test Examples |
| Colab Demo | Interactive Tutorial |
| Releases | Download JAR |
| Discussions | GitHub Discussions |