Amr-Wind

In this guide, we will walk you through AMR-Wind’s setup, one of the built-in simulators available via the Inductiva API.

We will cover:

  • Configuring Amr-Wind simulations using the Inductiva API.

  • Example code to help you get started with simulations.

Amr-Wind#

AMR-Wind is a highly parallel, block-structured adaptive-mesh solver specifically designed for simulating incompressible flows in wind turbines and wind farms. It is built on incflo and optimized for wind-related computations.

AMR-Wind utilizes the AMReX library, which provides the necessary mesh data structures, adaptive mesh refinement (AMR) capabilities, and linear solvers needed to solve the governing equations efficiently.

We are currently running AMR-Wind version 1.4.0 for CPU, and support for GPU is coming soon. The solver is compiled with OpenMPI 4.1.2 to ensure robust performance in parallel simulations.

Amr-Wind Example Code#

Below is an example of running an Amr-Wind simulation via the Inductiva API:

"""AMR-Wind example"""
import inductiva

# Instantiate machine group
machine_group = inductiva.resources.MachineGroup("c2-standard-4")
machine_group.start()

# Set simulation input directory
input_dir = inductiva.utils.download_from_url(
    "https://storage.googleapis.com/inductiva-api-demo-files/"
    "amr-wind-input-example.zip",
    unzip=True)

# Initialize the Simulator
amr_wind = inductiva.simulators.AmrWind()

# Run simulation with config files in the input directory
task = amr_wind.run(input_dir=input_dir,
                    sim_config_filename="abl_amd_wenoz.inp",
                    on=machine_group,
                    n_vcpus=4)

task.wait()
task.download_outputs()

machine_group.terminate()