neqsim
neqsim copied to clipboard
Implement Gamma distribution model for plus fraction characterization
Is your feature request related to a problem? Please describe. Implement Gamma distribution model for plus fraction characterization. Currently the only model in NeqSim is the Pedersen linear model as described in Pedersen.
It is in the PlusFraction model we need to add the gamma model (in the same way as the PedersenPlusModel class is defined as an inner class).
Also a related model is the lunping model (how to lump components after a PlusFraction characterization) https://github.com/equinor/neqsim/blob/master/src/main/java/neqsim/thermo/characterization/LumpingModel.java
Describe the solution you'd like The gamma model of Whitson should be added to the above file -and eg. name it "Gamma model". Documentation of varios models is given here and here.
Additional context Also tests are missing of these models and should be implemented. The tests can be added to PlusFractionModelTest
How a characterization works:
-
The Characterization object is created in a fluid. Link.
-
In the Characterization object the following objects are created:
The model for characterization of oil components (various models could be selected: like "Lee-Kesler", "Twu", etc.
TBPfractionModelSelector = new TBPfractionModel();
TBPfractionModel = TBPfractionModelSelector.getModel("");
The model for how to lump components are defined (lumping models like "PVTlumpingModel", "no lumping", etc are defined: lumpingModelSelector = new LumpingModel(system); lumpingModel = lumpingModelSelector.getModel("");
The model for how to characterize the plus fraction are defined (default is currently PedersenPlusModel but also "heavyOil" can be set). plusFractionModelSelector = new PlusFractionModel(system); plusFractionModel = plusFractionModelSelector.getModel("");
It is in the PlusFraction model we need to add the gamma model.