PyWake

Contents

  • Installation Guide
    • Pre-Installation
    • Simple Installation
    • Developer Installation
  • Overview
    • The PyWake Philosophy
    • Engineering models
      • Available models in PyWake
    • EllipSys3D (RANS-CDF)
    • General modelling considerations
  • Updates log
    • PyWake 2.5 (February 15, 2023)
      • New Features and API changes
      • New models and functions
      • Bug fixes
    • PyWake 2.4 (July 6, 2022)
      • New features and API changes
      • New models
    • PyWake 2.3 (March 18, 2022)
      • New features and API changes
      • New models
    • PyWake 2.2 (March 26, 2021)
      • New features and API changes
      • New models
    • PyWake 2.1 (September 14, 2020)
      • New features and API changes
      • New models
    • PyWake 2.0 (April 15, 2020)
  • Publications
    • Scientific articles
    • Master thesis
    • Presentations
    • Other

Main Components

  • Quickstart
    • Import and set up of wind turbines, site, and flow model
    • Plot AEP as function of wind turbines, wind direction and wind speed
    • Plot flow maps
  • Site Object
    • UniformWeibullSite
    • WaspGridSite
    • XRSite
      • Gridded non-uniform wind resources as time series with XRSite
      • Wake effects from neighbouring wind farms
        • Local wind
        • Distance
        • Wind resource distribution plots
  • Wind Turbine Object
    • Setting up Windturbine objects
    • Power curves and CT curves
    • Power/CT input arguments
    • Interpolation method
    • Plotting the wind turbines
  • Engineering Wind Farm Models Object
    • PropagateDownwind
    • All2AllIterative
    • PropagateUpDownIterative
    • Predefined Wind Farm Models
  • Wake Deficit Models
    • Definition and configuration
    • NOJDeficit
    • TurboNOJDeficit
    • BastankhahGaussianDeficit
    • IEA37SimpleBastankhahGaussianDeficit
    • NiayifarGaussianDeficit
    • ZongGaussianDeficit
    • CarbajoFuertesGaussianDeficit
    • TurboGaussianDeficit
    • SuperGaussianDeficit
    • FugaDeficit
    • GCLDeficit
    • Comparing wake deficit models
    • Implement your own deficit models
  • Superposition Models
    • LinearSum
    • SquaredSum
    • MaxSum
    • WeightedSum
    • SqrMaxSum
  • Blockage Deficit Models
    • SelfSimilarityDeficit
    • SelfSimilarityDeficit2020
    • FugaDeficit
    • VortexCylinder
    • VortexDipole
    • RankineHalfBody
    • HybridInduction
    • Rathmann
    • Comparing different blockage deficit models
  • Rotor Average Models
    • RotorCenter
    • GridRotorAvg
    • EqGridRotorAvg
    • GQGridRotorAvg
    • PolarGridRotorAvg
    • CGIRotorAvg
    • AreaOverlapModel
    • GaussianOverlapAvgModel
    • Comparing rotor-average models
  • Deflection Models
    • JimenezWakeDeflection
    • FugaDeflection
    • GCLHillDeflection
    • You can also implement your own deflection models
  • Turbulence Models
    • STF2005TurbulenceModel
    • STF2017TurbulenceModel
    • GCLTurbulence
    • CrespoHernandez
    • Comparing turbulence models
  • Ground Models
    • Mirror
    • MultiMirror

Features

  • Wind Farm Simulation
    • Simple simulation - all wind directions and wind speeds
    • Simulation Results
      • Selecting data
      • Plotting data
      • AEP calculation
    • Time series
    • Chunkification and Parallelization
    • Flow map
      • HorizontalGrid (XYGrid)
      • YZGrid
  • Gradients, Parallelization and Precision
    • Gradients
      • Finite difference fd
      • Complex step
      • Automatic Differentiation (Autograd)
      • Comparison - Scalability of example problem
      • Gradients in PyWake
        • Gradients of AEP
      • Comparison - Scalability of AEP gradients
    • Chunkify and Parallelization
      • AEP
      • WS, TI, Power and custom functions
      • AEP gradients
    • Precision
  • Optimization with TOPFARM
    • Example 1 - Optimize AEP wrt. wind turbine position (x,y)
    • Example 2 - Optimize WS, TI, Power and custom functions
      • De-ratable wind turbine
      • Maximize mean power by optimizing de-rating factor and hub height
  • Wind Turbine under Yaw Misalignment
    • Effect 1 - Change of operation due to reduced inflow wind speed
    • Effect 2 - Reduced deficit due to reduced inflow wind speed (\(C_{T,n} \rightarrow C_{T,x}\))
    • Effect 3 - Reduced deficit due to misalignment between thrust and downwind direction
    • Effect 4 - Wake deflection due to traversal thrust component reaction
  • Noise
    • Sound source
    • Noise at receivers

Examples

  • Experiment: Combine Models
    • Combine and execute model
  • Experiment: Validation
    • Setup Validation
    • Add WindFarmModels
    • Single wake deficit validation
    • Single wake integrated momentum deficit validation
    • Wind farm power validation
  • Experiment: Improve Hornsrev1 Layout
    • The Site object
    • The WindTurbine object
    • AEP Calculation
      • Exercise: Improve the AEP by modifying turbine locations.
  • Exercise: Wake Deflection

Model Verification

  • Ørsted TurbOPark
    • Example 1 - Square farm with identical turbines
    • Example 2 - Two turbine types plus wind speed gradient
  • Gaussian Wake Deficit Models
    • Bastankhah and Porté-Agel (2014)
      • Site and wind turbine
      • Wind farm model
      • Validation
    • Niayifar and Porté-Agel (2016)
      • Site and wind turbine
      • Wind farm model
      • Validation
    • Carbajo Fuertes et al. (2018)
      • Comparison
    • Zong and Porté-Agel (2020)
      • Validation

Validation

  • Validation report

API Reference

  • WindTurbine classes
    • WindTurbine
      • WindTurbine
        • WindTurbine.__init__()
        • WindTurbine.from_WindTurbine_lst()
    • OneTypeWindTurbines
      • OneTypeWindTurbines
  • Site classes
    • Site
      • Site
        • Site.elevation()
        • Site.local_wind()
        • Site.plot_wd_distribution()
        • Site.plot_ws_distribution()
    • UniformSite
      • UniformSite
        • UniformSite.__init__()
    • UniformWeibullSite
      • UniformWeibullSite
        • UniformWeibullSite.__init__()
    • WaspGridSite
      • WaspGridSite
        • WaspGridSite.__init__()
    • XRSite
      • XRSite
        • XRSite.__init__()
  • WindFarmModel
    • WindFarmModel
      • WindFarmModel.__call__()
      • WindFarmModel.aep()
      • WindFarmModel.aep_gradients()
      • WindFarmModel.calc_wt_interaction()
  • Engineering wind farm model classes
    • PropagateDownwind
      • PropagateDownwind
        • PropagateDownwind.__init__()
    • All2AllIterative
      • All2AllIterative
        • All2AllIterative.__init__()
  • Predefined Engineering wind farm model classes
    • NOJ
      • Jensen_1983
        • Jensen_1983.__init__()
    • BastankhahGaussian
      • Bastankhah_PorteAgel_2014
        • Bastankhah_PorteAgel_2014.__init__()
    • IEA37SimpleBastankhahGaussian
      • IEA37SimpleBastankhahGaussian
        • IEA37SimpleBastankhahGaussian.__init__()
    • NiayifarGaussian
      • Niayifar_PorteAgel_2016
        • Niayifar_PorteAgel_2016.__init__()
    • ZongGaussian
      • Zong_PorteAgel_2020
        • Zong_PorteAgel_2020.__init__()
    • SuperGaussian
      • Blondel_Cathelain_2020
        • Blondel_Cathelain_2020.__init__()
    • TurbOPark
      • Nygaard_2022
        • Nygaard_2022.__init__()
    • Fuga
      • Ott_Nielsen_2014
        • Ott_Nielsen_2014.__init__()
    • FugaBlockage
      • Ott_Nielsen_2014_Blockage
        • Ott_Nielsen_2014_Blockage.__init__()
  • SimulationResult
    • SimulationResult
      • SimulationResult.aep()
      • SimulationResult.aep_ilk()
      • SimulationResult.flow_map()
      • SimulationResult.load()
      • SimulationResult.sel()
  • FlowMap
    • FlowMap
      • FlowMap.aep_xy()
      • FlowMap.aep_xylk()
      • FlowMap.plot()
      • FlowMap.plot_ti_map()
      • FlowMap.plot_wake_map()
PyWake
  • Overview: module code

All modules for which code is available

  • py_wake.deficit_models.gaussian
  • py_wake.flow_map
  • py_wake.literature.fuga
  • py_wake.literature.gaussian_models
  • py_wake.literature.noj
  • py_wake.literature.turbopark
  • py_wake.site._site
  • py_wake.site.wasp_grid_site
  • py_wake.site.xrsite
  • py_wake.wind_farm_models.engineering_models
  • py_wake.wind_farm_models.wind_farm_model
  • py_wake.wind_turbines._wind_turbines

© Copyright 2018, DTU Wind Energy.

Built with Sphinx using a theme provided by Read the Docs.