Class SystemElectricalDesign

java.lang.Object
neqsim.process.electricaldesign.system.SystemElectricalDesign
All Implemented Interfaces:
Serializable

public class SystemElectricalDesign extends Object implements Serializable
Plant-wide electrical design summary and power distribution analysis.

Aggregates electrical loads across all equipment in a ProcessSystem, calculates power distribution requirements, and sizes the main incoming transformer and emergency/essential power systems. This class complements equipment-level electrical designs by providing a system-level view.

Typical plant-wide additions beyond equipment loads:

  • Utility loads: HVAC, plant lighting, fire and gas detection (5-10% of process load)
  • UPS loads: Critical instrumentation and safety systems (1-3% of process load)
  • Future expansion margin: Typically 10-20% of total demand
Version:
1.0
Author:
Even Solbraa
See Also:
  • Field Details

    • serialVersionUID

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

      private ProcessSystem processSystem
    • utilityLoadKW

      private double utilityLoadKW
    • upsLoadKW

      private double upsLoadKW
    • futureExpansionFraction

      private double futureExpansionFraction
    • mainBusVoltageV

      private double mainBusVoltageV
    • distributionVoltageV

      private double distributionVoltageV
    • frequencyHz

      private double frequencyHz
    • totalProcessLoadKW

      private double totalProcessLoadKW
    • totalPlantLoadKW

      private double totalPlantLoadKW
    • mainTransformerKVA

      private double mainTransformerKVA
    • emergencyGeneratorKVA

      private double emergencyGeneratorKVA
    • overallPowerFactor

      private double overallPowerFactor
    • loadList

      private ElectricalLoadList loadList
  • Constructor Details

    • SystemElectricalDesign

      public SystemElectricalDesign(ProcessSystem processSystem)
      Constructor for SystemElectricalDesign.
      Parameters:
      processSystem - the process system to analyse
  • Method Details

    • calcDesign

      public void calcDesign()
      Run the system-level electrical design.

      Calls runAllElectricalDesigns() on the process system, then aggregates loads and sizes the main transformer and emergency power.

    • getLoadList

      public ElectricalLoadList getLoadList()
      Get the electrical load list for all process equipment.
      Returns:
      the load list, or null if calcDesign() has not been called
    • getTotalProcessLoadKW

      public double getTotalProcessLoadKW()
      Get total process electrical load (maximum demand) in kW.
      Returns:
      total process load in kW
    • getTotalPlantLoadKW

      public double getTotalPlantLoadKW()
      Get total plant electrical load including utility and UPS in kW.
      Returns:
      total plant load in kW
    • getMainTransformerKVA

      public double getMainTransformerKVA()
      Get the required main transformer rating in kVA.
      Returns:
      main transformer kVA
    • getEmergencyGeneratorKVA

      public double getEmergencyGeneratorKVA()
      Get the required emergency generator rating in kVA.
      Returns:
      emergency generator kVA
    • getOverallPowerFactor

      public double getOverallPowerFactor()
      Get the overall power factor for the plant.
      Returns:
      overall power factor
    • getUtilityLoadKW

      public double getUtilityLoadKW()
      Get utility load in kW.
      Returns:
      utility load in kW
    • setUtilityLoadKW

      public void setUtilityLoadKW(double utilityLoadKW)
      Set utility load in kW. Set to 0 to use automatic estimation (7% of process load).
      Parameters:
      utilityLoadKW - utility load in kW
    • getUpsLoadKW

      public double getUpsLoadKW()
      Get UPS load in kW.
      Returns:
      UPS load in kW
    • setUpsLoadKW

      public void setUpsLoadKW(double upsLoadKW)
      Set UPS load in kW. Set to 0 to use automatic estimation (2% of process load).
      Parameters:
      upsLoadKW - UPS load in kW
    • getFutureExpansionFraction

      public double getFutureExpansionFraction()
      Get future expansion margin fraction.
      Returns:
      expansion fraction (e.g. 0.15 for 15%)
    • setFutureExpansionFraction

      public void setFutureExpansionFraction(double futureExpansionFraction)
      Set future expansion margin fraction.
      Parameters:
      futureExpansionFraction - expansion fraction (e.g. 0.15 for 15%)
    • getMainBusVoltageV

      public double getMainBusVoltageV()
      Get main bus voltage in volts.
      Returns:
      main bus voltage in V
    • setMainBusVoltageV

      public void setMainBusVoltageV(double mainBusVoltageV)
      Set main bus voltage in volts.
      Parameters:
      mainBusVoltageV - main bus voltage in V
    • getDistributionVoltageV

      public double getDistributionVoltageV()
      Get distribution voltage in volts.
      Returns:
      distribution voltage in V
    • setDistributionVoltageV

      public void setDistributionVoltageV(double distributionVoltageV)
      Set distribution voltage in volts.
      Parameters:
      distributionVoltageV - distribution voltage in V
    • getFrequencyHz

      public double getFrequencyHz()
      Get system frequency in Hz.
      Returns:
      frequency in Hz
    • setFrequencyHz

      public void setFrequencyHz(double frequencyHz)
      Set system frequency in Hz.
      Parameters:
      frequencyHz - frequency in Hz
    • getProcessSystem

      public ProcessSystem getProcessSystem()
      Get the process system.
      Returns:
      the process system