1212 * Fluent builder for creating pre-configured thermodynamic fluid systems.
1313 *
1414 * <p>
15- * Provides both a fluent builder API for custom fluids and static factory methods for common
16- * industry fluid types. All fluids are returned as {@link SystemInterface} with the mixing rule
15+ * Provides both a fluent builder API for custom fluids and static factory
16+ * methods for common
17+ * industry fluid types. All fluids are returned as {@link SystemInterface} with
18+ * the mixing rule
1719 * already set, ready for flash calculations.
1820 * </p>
1921 *
@@ -98,7 +100,9 @@ public enum EOSType {
98100 SRK_PENELOUX ,
99101 /** PR 1978 modification. */
100102 PR_1978 ,
101- /** Peng-Robinson with PR76 alpha function and Lee-Kesler BWR enthalpy (PR-LK). */
103+ /**
104+ * Peng-Robinson with PR76 alpha function and Lee-Kesler BWR enthalpy (PR-LK).
105+ */
102106 PR_LK
103107 }
104108
@@ -127,7 +131,7 @@ public static FluidBuilder create(double temperatureK, double pressureBara) {
127131 /**
128132 * Adds a component with a mole fraction.
129133 *
130- * @param name component name (e.g., "methane", "CO2")
134+ * @param name component name (e.g., "methane", "CO2")
131135 * @param moleFraction mole fraction (0 to 1)
132136 * @return this builder for chaining
133137 */
@@ -139,10 +143,10 @@ public FluidBuilder addComponent(String name, double moleFraction) {
139143 /**
140144 * Adds a TBP (True Boiling Point) fraction for oil characterization.
141145 *
142- * @param name fraction name (e.g., "C7", "C8")
143- * @param moleFraction mole fraction
146+ * @param name fraction name (e.g., "C7", "C8")
147+ * @param moleFraction mole fraction
144148 * @param molarMassKgPerMol molar mass in kg/mol
145- * @param density density in g/cm3
149+ * @param density density in g/cm3
146150 * @return this builder for chaining
147151 */
148152 public FluidBuilder addTBPFraction (String name , double moleFraction , double molarMassKgPerMol ,
@@ -154,10 +158,10 @@ public FluidBuilder addTBPFraction(String name, double moleFraction, double mola
154158 /**
155159 * Adds a plus fraction (e.g., C20+) for oil characterization.
156160 *
157- * @param name fraction name (e.g., "C20+")
158- * @param moleFraction mole fraction
161+ * @param name fraction name (e.g., "C20+")
162+ * @param moleFraction mole fraction
159163 * @param molarMassKgPerMol molar mass in kg/mol
160- * @param density density in g/cm3
164+ * @param density density in g/cm3
161165 * @return this builder for chaining
162166 */
163167 public FluidBuilder addPlusFraction (String name , double moleFraction , double molarMassKgPerMol ,
@@ -315,7 +319,8 @@ private SystemInterface createSystem() {
315319 * Creates a lean natural gas (dry gas) with typical North Sea composition.
316320 *
317321 * <p>
318- * Composition: CH4 (85%), C2H6 (8%), C3H8 (3%), iC4 (0.5%), nC4 (1%), N2 (1.5%), CO2 (1%). Uses
322+ * Composition: CH4 (85%), C2H6 (8%), C3H8 (3%), iC4 (0.5%), nC4 (1%), N2
323+ * (1.5%), CO2 (1%). Uses
319324 * SRK EOS with classic mixing rule.
320325 * </p>
321326 *
@@ -334,7 +339,8 @@ public static SystemInterface leanNaturalGas(double temperatureK, double pressur
334339 * Creates a rich natural gas (wet gas) with heavier components.
335340 *
336341 * <p>
337- * Composition: CH4 (72%), C2H6 (10%), C3H8 (6%), iC4 (2%), nC4 (3%), iC5 (1%), nC5 (1%), N2 (1%),
342+ * Composition: CH4 (72%), C2H6 (10%), C3H8 (6%), iC4 (2%), nC4 (3%), iC5 (1%),
343+ * nC5 (1%), N2 (1%),
338344 * CO2 (2%), nC6 (1%), nC8 (1%). Uses SRK EOS with classic mixing rule.
339345 * </p>
340346 *
@@ -355,7 +361,8 @@ public static SystemInterface richNaturalGas(double temperatureK, double pressur
355361 * Creates a typical black oil with C7+ characterization.
356362 *
357363 * <p>
358- * Includes light ends plus TBP fractions for C7-C10 and a C20+ plus fraction. Uses PR EOS with
364+ * Includes light ends plus TBP fractions for C7-C10 and a C20+ plus fraction.
365+ * Uses PR EOS with
359366 * classic mixing rule and automatic characterization with 6 lumped components.
360367 * </p>
361368 *
@@ -380,7 +387,8 @@ public static SystemInterface typicalBlackOil(double temperatureK, double pressu
380387 * Creates a CO2-rich stream typical for carbon capture and storage (CCS).
381388 *
382389 * <p>
383- * Composition: CO2 (95%), N2 (2%), methane (2%), H2S (0.5%), water (0.5%). Uses SRK-CPA EOS
390+ * Composition: CO2 (95%), N2 (2%), methane (2%), H2S (0.5%), water (0.5%). Uses
391+ * SRK-CPA EOS
384392 * (mixing rule 10) with multi-phase check to handle water-CO2 phase behavior.
385393 * </p>
386394 *
@@ -398,7 +406,8 @@ public static SystemInterface co2Rich(double temperatureK, double pressureBara)
398406 * Creates an acid gas stream with significant H2S and CO2 content.
399407 *
400408 * <p>
401- * Composition: methane (70%), CO2 (10%), H2S (5%), ethane (5%), propane (3%), n-butane (2%),
409+ * Composition: methane (70%), CO2 (10%), H2S (5%), ethane (5%), propane (3%),
410+ * n-butane (2%),
402411 * water (2%), nitrogen (3%). Uses SRK-CPA EOS with multi-phase check.
403412 * </p>
404413 *
@@ -417,7 +426,8 @@ public static SystemInterface acidGas(double temperatureK, double pressureBara)
417426 * Creates a gas condensate fluid.
418427 *
419428 * <p>
420- * Composition: CH4 (75%), C2H6 (7%), C3H8 (4%), iC4 (1.5%), nC4 (2%), iC5 (1%), nC5 (1%), nC6
429+ * Composition: CH4 (75%), C2H6 (7%), C3H8 (4%), iC4 (1.5%), nC4 (2%), iC5 (1%),
430+ * nC5 (1%), nC6
421431 * (1.5%), plus C7-C10 TBP fractions and C15+ plus fraction. Uses SRK EOS.
422432 * </p>
423433 *
@@ -441,7 +451,8 @@ public static SystemInterface gasCondensate(double temperatureK, double pressure
441451 * Creates a dry export gas with simple composition.
442452 *
443453 * <p>
444- * Composition: CH4 (92%), C2H6 (4%), C3H8 (1.5%), N2 (1.5%), CO2 (1%). Uses SRK EOS. Suitable for
454+ * Composition: CH4 (92%), C2H6 (4%), C3H8 (1.5%), N2 (1.5%), CO2 (1%). Uses SRK
455+ * EOS. Suitable for
445456 * pipeline transport calculations.
446457 * </p>
447458 *
@@ -470,7 +481,7 @@ private static class ComponentEntry implements Serializable {
470481 /**
471482 * Creates a component entry.
472483 *
473- * @param name component name
484+ * @param name component name
474485 * @param moleFraction mole fraction
475486 */
476487 ComponentEntry (String name , double moleFraction ) {
@@ -492,10 +503,10 @@ private static class TBPEntry implements Serializable {
492503 /**
493504 * Creates a TBP entry.
494505 *
495- * @param name fraction name
506+ * @param name fraction name
496507 * @param moleFraction mole fraction
497- * @param molarMass molar mass in kg/mol
498- * @param density density in g/cm3
508+ * @param molarMass molar mass in kg/mol
509+ * @param density density in g/cm3
499510 */
500511 TBPEntry (String name , double moleFraction , double molarMass , double density ) {
501512 this .name = name ;
0 commit comments