Skip to the content.

title: Development Documentation description: Guides for developers contributing to NeqSim, extending models, and creating custom components. —

Development Documentation

Guides for developers contributing to NeqSim, extending the library with new models, and integrating with Python.


Overview

This folder contains documentation for:


Getting Started

Document Description
DEVELOPER_SETUP.md Development environment setup
contributing-structure.md Contributing guidelines and code structure
jupyter_development_workflow.md Jupyter notebooks for live Java development

Extending NeqSim

These guides explain how to add new functionality to NeqSim:

Guide Description
Extending Process Equipment Add custom separators, reactors, and other unit operations
Extending Physical Properties Add custom viscosity, conductivity, and diffusivity models
Extending Thermodynamic Models Add custom equations of state and activity models
Python Extension Patterns Use NeqSim from Python, create wrappers, implement interfaces

Extension Quick Reference

Process Equipment: Extend ProcessEquipmentBaseClass, implement run() method

public class MyEquipment extends ProcessEquipmentBaseClass {
    @Override
    public void run(UUID id) {
        // Get inlet, calculate, set outlet
    }
}

Physical Properties: Extend Viscosity/Conductivity/Diffusivity, implement calcViscosity() etc.

public class MyViscosityModel extends Viscosity {
    @Override
    public double calcViscosity() {
        // Your correlation here
    }
}

Thermodynamic Models: Extend SystemEos, create matching PhaseXxxEos and ComponentXxx

public class SystemMyEos extends SystemEos {
    public SystemMyEos(double T, double P) {
        // Initialize phases with PhaseMyEos
    }
}

Python Integration: Use jneqsim gateway or implement Java interfaces with @JImplements

from neqsim import jneqsim
fluid = jneqsim.thermo.system.SystemSrkEos(300.0, 50.0)

Architecture References

For deeper understanding of NeqSim’s architecture:

Topic Location
Thermodynamic Systems ../thermo/
Process Equipment ../process/
Physical Properties ../physical_properties/
Validation Framework ../integration/ai_validation_framework.md