Class ElectrolyzerMechanicalDesign

java.lang.Object
neqsim.process.mechanicaldesign.MechanicalDesign
neqsim.process.mechanicaldesign.electrolyzer.ElectrolyzerMechanicalDesign
All Implemented Interfaces:
Serializable

public class ElectrolyzerMechanicalDesign extends MechanicalDesign
Mechanical design for water electrolyzers (PEM and alkaline).

Covers stack configuration, membrane/electrode area sizing, power consumption estimation, balance-of-plant equipment sizing, and weight/cost estimation. Applicable to both PEM (proton-exchange-membrane) and alkaline electrolyzers.

Version:
1.0
Author:
esol
See Also:
  • Field Details

    • serialVersionUID

      private static final long serialVersionUID
      Serialization version UID.
      See Also:
    • FARADAY

      private static final double FARADAY
      Faraday constant in C/mol.
      See Also:
    • MW_WATER

      private static final double MW_WATER
      Molar mass of water in kg/mol.
      See Also:
    • MW_H2

      private static final double MW_H2
      Molar mass of hydrogen in kg/mol.
      See Also:
    • electrolyzerType

      private String electrolyzerType
      Electrolyzer type: "PEM" or "ALKALINE".
    • cellVoltage

      private double cellVoltage
      Cell voltage in V.
    • currentDensity

      private double currentDensity
      Current density in A/cm2.
    • cellActiveArea

      private double cellActiveArea
      Cell active area in cm2 per cell.
    • cellsPerStack

      private int cellsPerStack
      Number of cells per stack.
    • numberOfStacks

      private int numberOfStacks
      Number of stacks.
    • stackEfficiency

      private double stackEfficiency
      Stack efficiency (HHV basis).
    • totalPowerKW

      private double totalPowerKW
      Total power consumption in kW.
    • specificEnergyKWhPerKg

      private double specificEnergyKWhPerKg
      Specific energy consumption in kWh/kgH2.
    • h2ProductionRateKgHr

      private double h2ProductionRateKgHr
      Hydrogen production rate in kg/hr.
    • totalMembraneArea

      private double totalMembraneArea
      Total membrane area in m2.
    • stackPressure

      private double stackPressure
      Stack operating pressure in bara.
    • stackTemperatureC

      private double stackTemperatureC
      Stack operating temperature in Celsius.
    • designPressure

      private double designPressure
      Design pressure in bara.
    • stackWeightKg

      private double stackWeightKg
      Estimated stack weight in kg.
    • totalSystemWeightKg

      private double totalSystemWeightKg
      Estimated total system weight in kg (including BOP).
    • waterConsumptionKgHr

      private double waterConsumptionKgHr
      Water consumption in kg/hr.
    • moduleFootprintM2

      private double moduleFootprintM2
      Module footprint in m2.
  • Constructor Details

    • ElectrolyzerMechanicalDesign

      public ElectrolyzerMechanicalDesign(ProcessEquipmentInterface equipment)
      Constructor for ElectrolyzerMechanicalDesign.
      Parameters:
      equipment - the electrolyzer equipment
  • Method Details

    • calcDesign

      public void calcDesign()

      calcDesign.

      Overrides:
      calcDesign in class MechanicalDesign
    • getElectrolyzerType

      public String getElectrolyzerType()
      Gets the electrolyzer type.
      Returns:
      "PEM" or "ALKALINE"
    • setElectrolyzerType

      public void setElectrolyzerType(String type)
      Sets the electrolyzer type.
      Parameters:
      type - "PEM" or "ALKALINE"
    • getCurrentDensity

      public double getCurrentDensity()
      Gets the current density.
      Returns:
      current density in A/cm2
    • setCurrentDensity

      public void setCurrentDensity(double currentDensity)
      Sets the current density.
      Parameters:
      currentDensity - current density in A/cm2
    • getCellsPerStack

      public int getCellsPerStack()
      Gets the number of cells per stack.
      Returns:
      cells per stack
    • getNumberOfStacks

      public int getNumberOfStacks()
      Gets the number of stacks.
      Returns:
      number of stacks
    • getTotalPowerKW

      public double getTotalPowerKW()
      Gets the total power consumption.
      Returns:
      power in kW
    • getSpecificEnergyKWhPerKg

      public double getSpecificEnergyKWhPerKg()
      Gets the specific energy consumption.
      Returns:
      kWh per kg H2
    • getStackEfficiency

      public double getStackEfficiency()
      Gets the stack efficiency (HHV basis).
      Returns:
      efficiency (0-1)
    • getH2ProductionRateKgHr

      public double getH2ProductionRateKgHr()
      Gets the H2 production rate.
      Returns:
      rate in kg/hr
    • setH2ProductionRateKgHr

      public void setH2ProductionRateKgHr(double rate)
      Sets the H2 production rate target.
      Parameters:
      rate - rate in kg/hr
    • getTotalMembraneArea

      public double getTotalMembraneArea()
      Gets the total membrane area.
      Returns:
      area in m2
    • getWaterConsumptionKgHr

      public double getWaterConsumptionKgHr()
      Gets the water consumption rate.
      Returns:
      rate in kg/hr
    • getTotalSystemWeightKg

      public double getTotalSystemWeightKg()
      Gets the total system weight.
      Returns:
      weight in kg
    • setCellActiveArea

      public void setCellActiveArea(double area)
      Sets the cell active area.
      Parameters:
      area - area in cm2
    • setStackPressure

      public void setStackPressure(double pressure)
      Sets the stack operating pressure.
      Parameters:
      pressure - pressure in bara
    • getStackWeightKg

      public double getStackWeightKg()
      Gets the stack weight.
      Returns:
      stack weight in kg
    • getModuleFootprintM2

      public double getModuleFootprintM2()
      Gets the module footprint.
      Returns:
      footprint in m2