Trace Id is missing
November 14, 2023

Vestas uses .NET to manage sophisticated simulations and streamline development

Sustainability is always front and center for Vestas, and the global company relies on a robust cloud-native architecture to run high-performance computing resources like Vestas Turbine Simulator and Vestas Climate Library that help it reach its sustainability goals. With the open-source, cross-platform Microsoft .NET, Vestas can easily run sophisticated simulations at scale. The company has a multiplatform, multitool development environment, and .NET fits in seamlessly, providing much of the infrastructure that keeps Vestas Turbine Simulator and Vestas Climate Library running smoothly. Vestas has found that .NET offers excellent performance, cloud-native development, cross-platform compatibility, and easy interoperation with Azure services.

Vestas

“Unlike many open-source tools—which may be there tomorrow or may not—.NET is backed by Microsoft, so we know it will always be around and will just keep getting better.”

Libish Jacob, Lead Engineer, Vestas

Harnessing non-fossil energy to power the world

Through more than 40 years of developing massive wind power plants, Vestas has become a global leader in sustainable energy. The company is proud to share that its efforts so far have kept 1.9 billion cubic tons of C02 out of the atmosphere—that’s the equivalent of taking millions of cars off the road for a year (Source: United States Environmental Protection Agency). To remain a leader in the increasingly competitive non-fossil energy space, Vestas needs to respond quickly to customer needs, so it depends on a powerful and robust IT infrastructure to make that possible.

Two of the company’s most important and compute-heavy projects are Vestas Turbine Simulator and Vestas Climate Library. By efficiently utilizing these resources, Vestas ensures that it puts the right turbine with the right configuration in the right location to maximize both energy output and turbine life. Choosing the right turbine design can also mean significant material and cost savings and guarantees that a multiturbine wind field will be arranged to optimize the performance of all equipment in the grid.

Vestas Climate Library includes a database representing 15 years—with plans to increase to 25 years—of high-resolution data on atmospheric conditions computed at 60 levels above ground for the entire land mass of Earth and offshore. Pick any point in the world, and you can see wind speed, temperature, and other parameters at different levels and across time. These seven petabytes of data need to be stored, analyzed, and served up on demand to provide the climate insight and help determine the best arrangement and turbine model(s) for a particular customer site.

Vestas Turbine Simulator is the way Vestas figures out which turbine model would be best suited for a customer location. By pairing Vestas Climate Library data with detailed information about every turbine model and configuration, the company can run simulations that help determine the optimal hardware for that particular spot on the globe. These simulations are compute-intensive, and before moving its on-premises supercomputer to the cloud, Vestas had an extensive backlog of simulations that it can now complete more quickly and easily with the help of cloud-native Microsoft .NET apps while running up to 400,000 cores and processing petabytes of data.

The accompanying video dives into some of the software and development tools—including .NET—that Vestas used to produce Vestas Turbine Simulator, but we wanted to go further and get additional details about what the company and its employees love about .NET for both Vestas Turbine Simulator and Vestas Climate Library. Peter Enevoldsen, Vice President and Module Owner, Modelling & Analytics at Vestas, and Libish Jacob, Lead Engineer at Vestas, took us on a deeper dive into the inner workings of the turbine simulator and climate library and the part that .NET development plays in each of them.

Why is cloud-native development essential for you?

JACOB: In many ways, developing in a cloud-native environment like .NET is future-proofing our work because the cloud is the future. We also gain access to all the functionality of Microsoft Azure, like Azure Functions and Azure Kubernetes Service (AKS), to incorporate into our applications and infrastructure. It’s also just simpler for a global organization like Vestas to have all developers working in the cloud rather than in a vast number of local repositories. Being in the cloud also gives us almost unlimited scale on demand as we need it.

Is it important to you that .NET is open source?

JACOB: Microsoft made a great choice moving .NET to open source. It has opened the door to a lot of community development, which is really boosting its capabilities. For example, one of the biggest advantages of using Python is the wide range of libraries available for machine learning and other functionality that might not have been so easy with .NET in the past. But now, the community can contribute new libraries that will extend .NET functionality and make it an even more compelling development resource. And unlike many open-source tools—which may be there tomorrow or may not—.NET is backed by Microsoft, so we know it will always be around and will just keep getting better.

ENEVOLDSEN: So often, when we try to implement open-source products, they become more trouble than they are worth. But .NET is already a stable, mature, and much more standardized tool, so working with it is highly predictable and reliable.

How does .NET fit into your multiplatform, multitool development environment?

JACOB: We use both Windows and Linux, and we work with a variety of development languages and tools, including Python, Delphi, and others; .NET fits seamlessly into that environment. We currently use .NET primarily for our infrastructure, and other tools handle the engineering and simulations, but I see us eventually moving those portions into .NET as well, giving us a single, consolidated code base to work with. With .NET, we also have the flexibility to use Visual Studio or Visual Studio Code—it’s up to each developer to choose which is best for their work—and over time, I think more and more developers will choose .NET over the other development options.

ENEVOLDSEN: With Vestas Climate Library, we also rely on .NET as the glue that holds our infrastructure together. It serves as the backbone of our system, orchestrating the REST APIs, web application interface, and various other components, while we use Python for specific heavy computational tasks. .NET fits right into our development mix, letting us choose the right tool for any particular task. The first version of Vestas Climate Library was built with Hadoop and Spark on-premises, but even then we needed .NET to build the API layer, so it’s been part of Vestas Climate Library from the very beginning.

How are the performance and ease of development with .NET?

ENEVOLDSEN: Working in .NET makes it straightforward for us to incorporate Azure services into our work, and that gives us the ability to easily do containerization with AKS as part of our development and incorporate Docker on Linux because .NET is natively cross-platform. It’s a really good overall package that reduces our need for multiple languages for different tasks, even though it also makes it easy to use those other languages when the need arises. Because the performance of .NET is better than Python, it consumes less memory and works faster, which saves us both time and money. It’s also easy to learn .NET because there is a wealth of documentation and other resources available, along with a vibrant developer community. I think a lot of projects will be more successful and get to market faster if you choose .NET development from the beginning.

JACOB: Because .NET is part of a larger development ecosystem, it really makes our life easier. Everything is in one package, so we can focus on the problem we’re trying to solve and not worry about trying to install and coordinate a bunch of different development tools. I’ve also seen a lot of performance improvement with each version of .NET, and I expect that will continue. With Python, one of the big headaches is runtime failures, but with .NET, we get errors right away at compile time, and the ecosystem comes with debuggers and profiling tools we need to solve them quickly. If a developer were to ask me which one language they should learn to set themselves up for now and the future, I’d definitely recommend C# in .NET.

Find out more about Vestas on Twitter, Facebook, and LinkedIn.


“If a developer were to ask me which one language they should learn to set themselves up for now and the future, I’d definitely recommend C# in .NET.”

Libish Jacob, Lead Engineer, Vestas

Discover more details

Take the next step

Fuel innovation with Microsoft

Talk to an expert about custom solutions

Let us help you create customized solutions and achieve your unique business goals.

Drive results with proven solutions

Achieve more with the products and solutions that helped our customers reach their goals.

Follow Microsoft