Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

refact: use getPhase(PhaseType.SOLID), getPhase(PhaseType.SOLIDCOMPLEX) #1195

Draft
wants to merge 1 commit into
base: master
Choose a base branch
from
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions src/main/java/neqsim/thermo/system/SystemThermo.java
Original file line number Diff line number Diff line change
Expand Up @@ -4813,7 +4813,7 @@ public void setSolidPhaseCheck(boolean solidPhaseCheck) {
for (int phaseNum = 0; phaseNum < numberOfPhases; phaseNum++) {
for (int k = 0; k < getPhases()[0].getNumberOfComponents(); k++) {
getPhase(phaseNum).getComponent(k).setSolidCheck(solidPhaseCheck);
getPhase(3).getComponent(k).setSolidCheck(solidPhaseCheck);
getPhase(PhaseType.SOLID).getComponent(k).setSolidCheck(solidPhaseCheck);
}
}
setNumberOfPhases(oldphase);
Expand All @@ -4833,7 +4833,7 @@ public void setSolidPhaseCheck(String solidComponent) {
for (int phaseNum = 0; phaseNum < getMaxNumberOfPhases(); phaseNum++) {
try {
getPhase(phaseNum).getComponent(solidComponent).setSolidCheck(true);
getPhase(3).getComponent(solidComponent).setSolidCheck(true);
getPhase(PhaseType.SOLID).getComponent(solidComponent).setSolidCheck(true);
} catch (Exception ex) {
logger.error(ex.getMessage(), ex);
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -396,19 +396,19 @@ public void solidPhaseFlash() {
if (system.getPhase(0).getComponent(k).doSolidCheck()) {
tempVar[k] = system.getPhase(0).getComponent(k).getz();
for (int i = 0; i < system.getNumberOfPhases() - 1; i++) {
tempVar[k] -=
system.getBeta(i) * system.getPhases()[3].getComponent(k).getFugacityCoefficient()
/ system.getPhase(i).getComponent(k).getFugacityCoefficient();
tempVar[k] -= system.getBeta(i)
* system.getPhase(PhaseType.SOLID).getComponent(k).getFugacityCoefficient()
/ system.getPhase(i).getComponent(k).getFugacityCoefficient();
}

if (tempVar[k] > 0.0 && tempVar[k] > frac) {
solidPhase = true;
solid = k;
frac = tempVar[k];
for (int p = 0; p < system.getPhases()[0].getNumberOfComponents(); p++) {
system.getPhases()[3].getComponent(p).setx(1.0e-20);
system.getPhase(PhaseType.SOLID).getComponent(p).setx(1.0e-20);
}
system.getPhases()[3].getComponents()[solid].setx(1.0);
system.getPhase(PhaseType.SOLID).getComponents()[solid].setx(1.0);
}
// logger.info("tempVar: " + tempVar[k]);
}
Expand All @@ -425,7 +425,7 @@ public void solidPhaseFlash() {
system.setBeta(system.getNumberOfPhases() - 1, frac);
system.initBeta();
system.setBeta(system.getNumberOfPhases() - 1,
system.getPhases()[3].getComponent(solid).getNumberOfmoles()
system.getPhase(PhaseType.SOLID).getComponent(solid).getNumberOfmoles()
/ system.getNumberOfMoles());
// double phasetot=0.0;
// for(int ph=0;ph<system.getNumberOfPhases();ph++){
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -68,8 +68,8 @@ public void run() {
* double solidEnthalpy = 0.0;
*
* if (system.doSolidPhaseCheck()) { system.init(3, 3); solidEnthalpy =
* system.getPhases()[3].getEnthalpy() / system.getPhases()[3].getNumberOfMolesInPhase()
* system.getTotalNumberOfMoles();
* system.getPhase(PhaseType.SOLID).getEnthalpy() /
* system.getPhase(PhaseType.SOLID).getNumberOfMolesInPhase() system.getTotalNumberOfMoles();
*
* if (Hspec < liqEnthalpy && Hspec > solidEnthalpy) { double solidbeta = (Hspec - liqEnthalpy)
* / (gasEnthalpy - liqEnthalpy); } }
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -135,12 +135,12 @@ public void calcE() {
}
// E[solidComponent] +=
// system.getBeta(system.getNumberOfPhases()-1) /
// system.getPhase(3).getComponent(solidComponent).getFugacityCoefficient();
// system.getPhase(PhaseType.SOLID).getComponent(solidComponent).getFugacityCoefficient();
E[solidComponent] = system.getPhase(0).getComponent(solidComponent).getz()
/ system.getPhases()[3].getComponents()[solidComponent].getFugacityCoefficient();
/ system.getPhase(PhaseType.SOLID).getComponents()[solidComponent].getFugacityCoefficient();
// logger.info("Ei " +E[solidComponent]);
// logger.info("fug "
// +system.getPhase(3).getComponent(solidComponent).getFugacityCoefficient());
// +system.getPhase(PhaseType.SOLID).getComponent(solidComponent).getFugacityCoefficient());
// logger.info("zi " +system.getPhase(0).getComponent(solidComponent).getz());
}

Expand All @@ -167,9 +167,9 @@ public double calcQ() {
}

for (int k = 0; k < system.getNumberOfPhases() - 1; k++) {
dQdbeta[k] =
1.0 - system.getPhases()[3].getComponents()[solidComponent].getFugacityCoefficient()
/ system.getPhase(k).getComponent(solidComponent).getFugacityCoefficient();
dQdbeta[k] = 1.0 - system.getPhase(PhaseType.SOLID).getComponents()[solidComponent]
.getFugacityCoefficient()
/ system.getPhase(k).getComponent(solidComponent).getFugacityCoefficient();
for (int i = 0; i < system.getPhases()[0].getNumberOfComponents(); i++) {
if (i != solidComponent) {
dQdbeta[k] -= system.getPhase(0).getComponent(i).getz() * 1.0 / E[i]
Expand Down Expand Up @@ -317,7 +317,7 @@ public void calcSolidBeta() {
// double beta = 1.0;
for (int i = 0; i < system.getNumberOfPhases() - 1; i++) {
tempVar -= system.getBeta(i)
* system.getPhase(3).getComponent(solidComponent).getFugacityCoefficient()
* system.getPhase(PhaseType.SOLID).getComponent(solidComponent).getFugacityCoefficient()
/ system.getPhase(i).getComponent(solidComponent).getFugacityCoefficient();
// beta -= system.getBeta(i);
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -61,7 +61,7 @@ public void setXY() {
/ system.getPhase(k).getComponent(i).getFugacityCoefficient());
} else {
system.getPhase(k).getComponent(i)
.setx(system.getPhases()[3].getComponent(i).getFugacityCoefficient()
.setx(system.getPhase(PhaseType.SOLID).getComponent(i).getFugacityCoefficient()
/ system.getPhase(k).getComponent(i).getFugacityCoefficient());
}
}
Expand Down Expand Up @@ -137,11 +137,11 @@ public double calcQ() {
}
for (int i = 0; i < solidsNumber; i++) {
Q += system.getPhase(0).getComponent(solidIndex).getz()
* (1 - Math.log(system.getPhase(0).getComponent(solidIndex).getz()
/ system.getPhases()[3].getComponent(solidIndex).getFugacityCoefficient()));
* (1 - Math.log(system.getPhase(0).getComponent(solidIndex).getz() / system
.getPhase(PhaseType.SOLID).getComponent(solidIndex).getFugacityCoefficient()));
for (int j = 0; j < system.getNumberOfPhases() - solidsNumber; j++) {
Q -= system.getBeta(j)
* system.getPhases()[3].getComponent(solidIndex).getFugacityCoefficient()
* system.getPhase(PhaseType.SOLID).getComponent(solidIndex).getFugacityCoefficient()
/ system.getPhase(j).getComponent(solidIndex).getFugacityCoefficient();
}
}
Expand All @@ -158,8 +158,9 @@ public void calcQbeta() {
dQdbeta[k] = 1.0;
for (int i = 0; i < system.getPhases()[0].getNumberOfComponents(); i++) {
if (i == solidIndex) {
dQdbeta[k] -= system.getPhases()[3].getComponents()[solidIndex].getFugacityCoefficient()
/ system.getPhase(k).getComponent(solidIndex).getFugacityCoefficient();
dQdbeta[k] -=
system.getPhase(PhaseType.SOLID).getComponents()[solidIndex].getFugacityCoefficient()
/ system.getPhase(k).getComponent(solidIndex).getFugacityCoefficient();
} else {
dQdbeta[k] -= system.getPhase(0).getComponent(i).getz() / E[i]
/ system.getPhase(k).getComponent(i).getFugacityCoefficient();
Expand All @@ -182,8 +183,9 @@ public void calcGradientAndHesian() {
dQdbeta[k] = 1.0;
for (int i = 0; i < system.getPhases()[0].getNumberOfComponents(); i++) {
if (i == solidIndex) {
dQdbeta[k] -= system.getPhases()[3].getComponent(solidIndex).getFugacityCoefficient()
/ system.getPhase(k).getComponent(solidIndex).getFugacityCoefficient();
dQdbeta[k] -=
system.getPhase(PhaseType.SOLID).getComponent(solidIndex).getFugacityCoefficient()
/ system.getPhase(k).getComponent(solidIndex).getFugacityCoefficient();
} else {
dQdbeta[k] -= system.getPhase(0).getComponent(i).getz() / E[i]
/ system.getPhase(k).getComponent(i).getFugacityCoefficient();
Expand Down Expand Up @@ -365,7 +367,7 @@ public double calcSolidBeta() {
for (int i = 0; i < system.getNumberOfPhases() - solidsNumber; i++) {
if (FluidPhaseActiveDescriptors[i] == 1) {
tempVar -= system.getBeta(i)
* system.getPhases()[3].getComponent(solidIndex).getFugacityCoefficient()
* system.getPhase(PhaseType.SOLID).getComponent(solidIndex).getFugacityCoefficient()
/ system.getPhase(i).getComponent(solidIndex).getFugacityCoefficient();
// beta -= system.getBeta(i);
}
Expand Down Expand Up @@ -398,7 +400,7 @@ public void run() {
}
if (system.getPhase(0).getNumberOfComponents() == 1) {
system.init(1);
if (system.getPhase(0).getFugacity(0) > system.getPhases()[3].getFugacity(0)) {
if (system.getPhase(0).getFugacity(0) > system.getPhase(PhaseType.SOLID).getFugacity(0)) {
system.setPhaseIndex(0, 3);
} else {
}
Expand Down Expand Up @@ -453,12 +455,13 @@ public int checkAndAddSolidPhase() {
solidCandidate[k] = 0;
} else {
solidCandidate[k] = system.getPhase(0).getComponent(k).getz();
system.getPhases()[3].getComponent(k).setx(1.0);
system.getPhase(PhaseType.SOLID).getComponent(k).setx(1.0);
for (int i = 0; i < system.getNumberOfPhases(); i++) {
// double e = system.getBeta(i)*
// system.getPhases()[3].getComponent(k).fugcoef(system.getPhases()[3]);
// system.getPhase(PhaseType.SOLID).getComponent(k).fugcoef(system.getPhase(PhaseType.SOLID));
solidCandidate[k] -= system.getBeta(i)
* system.getPhases()[3].getComponent(k).fugcoef(system.getPhases()[3])
* system.getPhase(PhaseType.SOLID).getComponent(k)
.fugcoef(system.getPhase(PhaseType.SOLID))
/ system.getPhase(i).getComponent(k).getFugacityCoefficient();
}
}
Expand All @@ -468,12 +471,12 @@ public int checkAndAddSolidPhase() {
totalSolidFrac = 0;
for (int i = 0; i < solidCandidate.length; i++) {
if (solidCandidate[i] > 1e-20) {
system.getPhases()[3].getComponent(i).setx(1.0);
system.getPhase(PhaseType.SOLID).getComponent(i).setx(1.0);
solidIndex = i;
solidsNumber++;
totalSolidFrac += solidCandidate[i];
} else {
system.getPhases()[3].getComponent(i).setx(0.0);
system.getPhase(PhaseType.SOLID).getComponent(i).setx(0.0);
}
}
for (int i = oldSolidsNumber; i < solidsNumber; i++) {
Expand Down Expand Up @@ -513,9 +516,9 @@ public double solvebeta1() {
iter++;
solidCandidate = system.getPhase(0).getComponents()[solidIndex].getz();
for (int i = 0; i < system.getNumberOfPhases(); i++) {
solidCandidate -=
system.getPhases()[3].getComponent(solidIndex).fugcoef(system.getPhases()[3])
/ system.getPhase(i).getComponent(solidIndex).getFugacityCoefficient();
solidCandidate -= system.getPhase(PhaseType.SOLID).getComponent(solidIndex)
.fugcoef(system.getPhase(PhaseType.SOLID))
/ system.getPhase(i).getComponent(solidIndex).getFugacityCoefficient();
}
double dsoliddn = (solidCandidate - solidCandidateOld) / dn;
dn = -0.5 * solidCandidate / dsoliddn;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -65,7 +65,7 @@ public void setXY() {
/ system.getPhase(k).getComponent(i).getFugacityCoefficient());
} else {
system.getPhase(k).getComponent(i)
.setx(system.getPhases()[3].getComponent(i).getFugacityCoefficient()
.setx(system.getPhase(PhaseType.SOLID).getComponent(i).getFugacityCoefficient()
/ system.getPhase(k).getComponent(i).getFugacityCoefficient());
}
}
Expand Down Expand Up @@ -142,11 +142,11 @@ public double calcQ() {

for (int i = 0; i < solidsNumber; i++) {
Q += system.getPhase(0).getComponent(solidIndex).getz()
* (1 - Math.log(system.getPhase(0).getComponent(solidIndex).getz()
/ system.getPhases()[3].getComponent(solidIndex).getFugacityCoefficient()));
* (1 - Math.log(system.getPhase(0).getComponent(solidIndex).getz() / system
.getPhase(PhaseType.SOLID).getComponent(solidIndex).getFugacityCoefficient()));
for (int j = 0; j < system.getNumberOfPhases() - solidsNumber; j++) {
Q -= system.getBeta(j)
* system.getPhases()[3].getComponent(solidIndex).getFugacityCoefficient()
* system.getPhase(PhaseType.SOLID).getComponent(solidIndex).getFugacityCoefficient()
/ system.getPhase(j).getComponent(solidIndex).getFugacityCoefficient();
}
}
Expand All @@ -155,8 +155,9 @@ public double calcQ() {
dQdbeta[k] = 1.0;
for (int i = 0; i < system.getPhases()[0].getNumberOfComponents(); i++) {
if (i == solidIndex) {
dQdbeta[k] -= system.getPhases()[3].getComponents()[solidIndex].getFugacityCoefficient()
/ system.getPhase(k).getComponent(solidIndex).getFugacityCoefficient();
dQdbeta[k] -=
system.getPhase(PhaseType.SOLID).getComponents()[solidIndex].getFugacityCoefficient()
/ system.getPhase(k).getComponent(solidIndex).getFugacityCoefficient();
} else {
dQdbeta[k] -= system.getPhase(0).getComponent(i).getz() / E[i]
/ system.getPhase(k).getComponent(i).getFugacityCoefficient();
Expand Down Expand Up @@ -288,9 +289,9 @@ public void calcSolidBeta() {
double tempVar = system.getPhase(0).getComponents()[solidIndex].getz();
// double beta = 1.0;
for (int i = 0; i < system.getNumberOfPhases() - 1; i++) {
tempVar -=
system.getBeta(i) * system.getPhase(3).getComponent(solidIndex).getFugacityCoefficient()
/ system.getPhase(i).getComponent(solidIndex).getFugacityCoefficient();
tempVar -= system.getBeta(i)
* system.getPhase(PhaseType.SOLID).getComponent(solidIndex).getFugacityCoefficient()
/ system.getPhase(i).getComponent(solidIndex).getFugacityCoefficient();
// beta -= system.getBeta(i);
}
if (tempVar > 0 && tempVar < 1.0) {
Expand Down Expand Up @@ -337,22 +338,23 @@ public int checkAndAddSolidPhase() {
solidCandidate[k] = -10;
} else {
solidCandidate[k] = system.getPhase(0).getComponent(k).getz();
system.getPhases()[3].getComponent(k).setx(1.0);
system.getPhase(PhaseType.SOLID).getComponent(k).setx(1.0);

for (int i = 0; i < system.getNumberOfPhases(); i++) {
solidCandidate[k] -= system.getPhases()[3].getComponent(k).fugcoef(system.getPhases()[3])
solidCandidate[k] -= system.getPhase(PhaseType.SOLID).getComponent(k)
.fugcoef(system.getPhase(PhaseType.SOLID))
/ system.getPhase(i).getComponent(k).getFugacityCoefficient();
}
}
}

for (int i = 0; i < solidCandidate.length; i++) {
if (solidCandidate[i] > 0.0) {
system.getPhases()[3].getComponent(i).setx(1.0);
system.getPhase(PhaseType.SOLID).getComponent(i).setx(1.0);
solidIndex = i;
solidsNumber++;
} else {
system.getPhases()[3].getComponent(i).setx(0.0);
system.getPhase(PhaseType.SOLID).getComponent(i).setx(0.0);
}
}

Expand Down Expand Up @@ -392,9 +394,9 @@ public double solvebeta1() {
iter++;
solidCandidate = system.getPhase(0).getComponents()[solidIndex].getz();
for (int i = 0; i < system.getNumberOfPhases(); i++) {
solidCandidate -=
system.getPhases()[3].getComponent(solidIndex).fugcoef(system.getPhases()[3])
/ system.getPhase(i).getComponent(solidIndex).getFugacityCoefficient();
solidCandidate -= system.getPhase(PhaseType.SOLID).getComponent(solidIndex)
.fugcoef(system.getPhase(PhaseType.SOLID))
/ system.getPhase(i).getComponent(solidIndex).getFugacityCoefficient();
}
double dsoliddn = (solidCandidate - solidCandidateOld) / dn;
dn = -0.5 * solidCandidate / dsoliddn;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,7 @@
import org.apache.logging.log4j.LogManager;
import org.apache.logging.log4j.Logger;
import neqsim.thermo.ThermodynamicConstantsInterface;
import neqsim.thermo.phase.PhaseType;
import neqsim.thermo.system.SystemInterface;
import neqsim.thermodynamicoperations.ThermodynamicOperations;

Expand Down Expand Up @@ -69,7 +70,8 @@ public double calcFunc() {
// logger.info("Checking all the components " + k);
if (system.getPhase(0).getComponent(k).doSolidCheck()) {
ops.TPflash(false);
SolidFugCoeff = system.getPhases()[3].getComponent(k).fugcoef(system.getPhases()[3]);
SolidFugCoeff = system.getPhase(PhaseType.SOLID).getComponent(k)
.fugcoef(system.getPhase(PhaseType.SOLID));
funk = system.getPhase(0).getComponent(k).getz();
for (int i = 0; i < system.getNumberOfPhases(); i++) {
funk -= system.getPhase(i).getBeta() * SolidFugCoeff
Expand Down Expand Up @@ -120,7 +122,8 @@ public void run() {
iterations++;
// oldPhaseType = system.getPhase(0).getType();
ops.TPflash(false);
SolidFugCoeff = system.getPhases()[3].getComponent(k).fugcoef(system.getPhases()[3]);
SolidFugCoeff = system.getPhase(PhaseType.SOLID).getComponent(k)
.fugcoef(system.getPhase(PhaseType.SOLID));
funk = system.getPhase(0).getComponent(k).getz();
for (int i = 0; i < system.getNumberOfPhases(); i++) {
funk -= system.getPhase(i).getBeta() * SolidFugCoeff
Expand Down
Loading
Loading