Skip to content

SaiKiranMatta/gas-turbine-sim

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

10 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Gas Turbine Thermodynamic Simulation

A comprehensive Go-based simulation tool for analyzing gas turbine performance across multiple configurations. This tool explores various combinations of compression ratios, turbine inlet temperatures, reheat configurations, and bottoming cycles to identify optimal system efficiency with in the set constraints. It performs parametric thermodynamic analysis based on the Brayton cycle and bottoming cycles focusing purely on cycle-level efficiency calculations, not CFD or flow-field simulations.

Features

  • Multi-stage Compression: Axial + Centrifugal compressor simulation
  • Advanced Combustion: Primary combustor with configurable efficiency and pressure losses
  • Reheat Cycles: Variable reheat temperature and positioning between turbine stages
  • Bottoming Cycles: Organic Rankine Cycle (ORC) integration for waste heat recovery
  • Parallel Processing: Go routines for efficient simulation of thousands of configurations
  • Comprehensive Output: Excel exports with detailed analysis and interactive HTML plots
  • Configurable Parameters: YAML-based configuration for easy customization

Installation

  1. Prerequisites: Go 1.21 or higher

  2. Clone and setup:

git clone 
cd gas-turbine-sim
go mod tidy
  1. Build the application:
go build -o gas-turbine-sim

Usage

Basic Simulation

./gas-turbine-sim

Using Custom Configuration

./gas-turbine-sim --config config/custom.yaml

Configuration Options

The simulation is controlled via YAML configuration files. Key parameters include:

Ambient Conditions

  • ambient_temp: Ambient temperature (K)
  • ambient_pressure: Ambient pressure (Pa)
  • exit_pressure: Minimum exit pressure (Pa)

Compressor Settings

  • axial_efficiency: Axial compressor isentropic efficiency
  • centrifugal_efficiency: Centrifugal compressor isentropic efficiency
  • max_axial_pr: Maximum axial pressure ratio
  • max_total_pr: Maximum total compression ratio

Combustor Settings

  • max_tit: Maximum turbine inlet temperature (K)
  • combustor_efficiency: Combustion efficiency
  • combustor_pressure_loss: Pressure loss fraction

Reheat Configuration

  • reheat_efficiency: Reheat combustor efficiency
  • min_reheat_position: Minimum expansion ratio before reheat
  • max_reheat_position: Maximum expansion ratio before reheat

Simulation Parameters

  • axial_pr_steps: Resolution for axial PR variation
  • tit_steps: Resolution for TIT variation
  • max_workers: Parallel processing threads

Output

Each simulation run creates a timestamped folder in outputs/ containing:

  1. Configuration Backup: Copy of the configuration used
  2. Excel Spreadsheet: Detailed results with all parameters and efficiencies
  3. Interactive Plots: HTML charts showing:
    • Efficiency vs. Pressure Ratio
    • Efficiency vs. Turbine Inlet Temperature
    • Efficiency vs. Reheat Position

Technical Details

Thermodynamic Model

The simulation implements:

  • Isentropic processes with realistic efficiencies
  • Combustion modeling with efficiency and pressure losses
  • Multi-stage expansion with reheat capabilities
  • Bottoming cycle integration for waste heat recovery

Performance Optimization

  • Parallel processing using Go routines
  • Constraint validation to eliminate invalid configurations
  • Efficient memory usage with streaming result processing

Results

The simulation typically evaluates 100,000+ configurations and identifies optimal operating points. Findings:

  • Best Efficiency: 54% with a 1500K TIT, with reheat showing no benefit. 49% with a 1220K TIT (uncooled turbine), with reheat being beneficial. Efficiency-vs-TIT

Development

Adding New Features

  1. Thermodynamic Models: Extend internal/thermodynamics/properties.go
  2. Simulation Logic: Modify internal/simulation/simulator.go
  3. Output Formats: Add to internal/output/

Testing

go test ./...

Building for Different Platforms

# Linux
GOOS=linux GOARCH=amd64 go build -o gas-turbine-sim-linux

# Windows
GOOS=windows GOARCH=amd64 go build -o gas-turbine-sim.exe

# macOS
GOOS=darwin GOARCH=amd64 go build -o gas-turbine-sim-mac

About

Parametric analysis tool for Brayton and bottoming cycle efficiencies across configurable multi-stage gas turbine architectures.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors