The Journal of Supercomputing

, Volume 75, Issue 3, pp 1641–1653 | Cite as

Wind farm simulations based on a DFIG machine using parallel programming

  • Alberto Jiménez-Ruiz
  • Miguel Cañas-Carretón
  • Gerardo Fernández-EscribanoEmail author
  • Damián Ruiz-Coll
  • Sergio Martín-Martínez
  • Emilio Gómez-Lázaro


New computational techniques for simulating a large array of wind turbines are highly needed to model modern electrical grid networks. In this paper, an implementation of a doubly fed induction generator wind turbine model solver is proposed. This solver will run on an NVIDIA graphic processing unit, and it will be coded using the compute unified device architecture (CUDA). The implementation will integrate a linear time-invariant system represented by state-space matrices. It has been implemented a CUDA kernel capable of simulating many wind turbines in parallel with different wind profiles and using different configurations. Strategies such as optimizing memory access and overlapping data transfers with the kernel were used to obtain the results. The CUDA implementation reaches an occupancy of 95%, while simulating 500 wind turbines where each unit is subject to a different wind profile or using different configuration parameters.


DFIG Wind turbine Parallel programming CUDA 



The authors would like to thank the Spanish Ministry of Economy (MINECO) and Competitiveness and the European Union FEDER for the financial support received through the research project ENE2016-78214-C2-1-R and the TIN2015-66972-C5-2-R.


  1. 1.
    Wang W, Huang GM (2017) Impacts of DFIG reactive power/voltage control on power system oscillations through mode coupling. In: Proceedings IEEE Power & Energy Society General MeetingGoogle Scholar
  2. 2.
    Moore GE (2006) Cramming more components onto integrated circuits. IEEE Solid-State Circuits Society Newsletter 38(8):33–35CrossRefGoogle Scholar
  3. 3.
    Fernández LM, García CA, Saenz JR, Jurado F (2009) Equivalent models of wind farms by using aggregated wind turbines and equivalent winds. Energy Conver Manag 50:691–704CrossRefGoogle Scholar
  4. 4.
    Cañas-Carretón M, Gómez-Lázaro E, Amat-Plata S, Molina-García Á (2015) Simulation of DFIG wind turbines for transient studies: an alternative approach based on symbolic–numeric computations. J Franklin Inst 352(4):1417–1439CrossRefzbMATHGoogle Scholar
  5. 5.
    A Ishchenko, JMA Myrzik, WL Kling (2007) Linearization of dynamic model of squirrel-cage induction generator wind turbine. In: Power Engineering Society General Meeting, 2007. IEEEGoogle Scholar
  6. 6.
    Cañas-Carretón M (2013) Nuevas propuestas de resolución de modelos electromecánicos de aerogeneradores: aplicación a problemas de agregación. UPCT, CartagenaGoogle Scholar
  7. 7.
    Jiménez-Ruiz A, Cañas-Carretón M, Fernández-Escribano G, Ruiz-Coll D, Martín-Martínez S, Gómez-Lázaro E (2018) Simulation of the electromechanical model of a doubly-fed induction generator wind turbine using an NVIDIA GPU. In: CMMSE 2018: Proceedings of the 18th International Conference on Mathematical Methods in Science and Engineering (Manuscript Submitted for Publication), ISBN: 978-84-697-7861-6Google Scholar
  8. 8.
    Jiang Z, Yang L, Gao Z, Moan T (2014) Numerical simulation of a wind turbine with a hydraulic transmission system. Energy Procedia 53:44–55CrossRefGoogle Scholar
  9. 9.
    Ascher UM, Petzold LR (1998) Computer methods for ordinary differential equations and differential-algebraic equations. Society for Industrial and Applied Mathematics, PhiladelphiaCrossRefzbMATHGoogle Scholar
  10. 10.
    Sigrist L, Lobato E, Echavarren FM, Egido I, Rouco L (2016) Island power systems. CRC Press, Boca RatonCrossRefGoogle Scholar
  11. 11.
    Red Eléctrica de España “P.O. 9.0 “Información intercambiada por el operador del sistema”/Grid Code P.O. 9.0 Information exchanged by transport system operator”. Accessed 30 Oct 2018
  12. 12.
    Flynn MJ (1966) Very high-speed computing systems. In: Proceedings of the IEEEGoogle Scholar
  13. 13.
    Sørensen HHB (2011) High-performance matrix-vector multiplication on the GPU. In: European Conference on Parallel ProcessingGoogle Scholar
  14. 14.
    NVIDIA (2018) What’s new in CUDA 9.2. NVIDIA. Accessed 25 July 2018
  15. 15.
    C. NVIDIA (2018) C programming guide, Version 9.2Google Scholar
  16. 16.
    Volkov V (2010) Better performance at lower occupancy. In: Proceedings of the GPU Technology Conference, GTC, 2010Google Scholar
  17. 17.
    IEEE (2008) 754-2008—IEEE standard for floating-point arithmetic. IEEE Std 754-2008, vol 754, pp 1–70Google Scholar
  18. 18.
    Harris M (2018) How to access global memory efficiently in CUDA C/C ++ kernels. NVIDIA, 07 01 2013. Accessed 23 July 2018

Copyright information

© Springer Science+Business Media, LLC, part of Springer Nature 2018

Authors and Affiliations

  1. 1.Departamento de Ingeniería Eléctrica, Electrónica, Automática y Comunicaciones. Renewable Energy Research InstituteUniversity of Castilla-La ManchaCiudad RealSpain
  2. 2.Computer Systems Department, Instituto de Investigación en Informática de AlbaceteUniversity of Castilla-La ManchaCiudad RealSpain
  3. 3.Signal Theory and Communications DepartmentUniversity of Rey Juan CarlosMadridSpain

Personalised recommendations