# Cyclic (AMI/ACMI)

Source: https://help.sim-flow.com/boundary-conditions/cyclic-ami-acmi
Last updated: 2026-10-01

## Description

The **Cyclic (AMI)** and **Cyclic (ACMI)** boundary conditions update the values on the boundary faces by interpolating values from a coupled neighbor patch. Often they are used to simulate periodic geometries or flow fields where the periodic faces do not align perfectly.

- **Cyclic (AMI)** (Arbitrary Mesh Interface) handles cases where the periodic faces do not align perfectly (non-conforming meshes). It assumes full coverage between the owner and neighbor patches.
- **Cyclic (ACMI)** (Arbitrary Coupled Mesh Interface) extends AMI to handle **partial overlap**. It allows parts of the interface to be covered (blocked) or uncovered (open) during the simulation.

\[\phi_{f} = \alpha \cdot \phi_{AMI} + (1 - \alpha) \cdot \phi_{def}\]

where:

- \(\phi_{f}\) - final value on the boundary face
- \(\phi_{AMI}\) - interpolated value from the neighbor patch
- \(\alpha\) - mask fraction (1 for AMI/open ACMI, 0 for blocked ACMI)
- \(\phi_{def}\) - default value for the non-overlapping (blocked) portion

### Cyclic (ACMI) vs Cyclic (AMI)

**Cyclic (ACMI)** is a more advanced and versatile boundary condition than **Cyclic (AMI)**. While **Cyclic (AMI)** handles interpolation between non-matching boundaries (ideal for standard rotating machinery), **Cyclic (ACMI)** adds the ability to handle interfaces that are **inactive** or **not aligned**.

It combines standard interpolation with masking capability, making it particularly useful for: * Rotating machinery with complex geometries. * Cases where a part of the mesh is moving or deforming. * Modeling the opening and closing of parts of the boundary.

## Understanding Cyclic (AMI/ACMI)

The fundamental principle of AMI is **Galilean transformation** and interpolation. When mesh faces on the boundary do not match one-to-one (e.g., due to separate meshing or rotation), the solver computes weights to map data from the **source** patch to the **target** patch.

- **For AMI**: The interpolation weights sum to 1 (\(\alpha=1\)), ensuring flux continuity across the entire interface.
- **For ACMI**: The method computes a `mask` field. Where the patches overlap, data is transferred. Where they do not overlap, the boundary acts like a wall (or the specified default condition).

## Application & Physical Interpretation

These BCs are essential for moving mesh simulations (**DyM**) and complex connections.

### Cyclic (AMI) in Rotating Machinery

**Example applications**: Wind turbines, pumps, fans

The **Cyclic AMI** boundary condition is used to model the periodic motion of rotor blades. It allows simulating a sector of the geometry (e.g., one blade) or connecting a rotating rotor mesh to a stationary stator mesh. It maps the flow field from one side to the other, maintaining continuity despite the mesh mismatch.

### Cyclic (ACMI) in Sliding Valves

**Example applications**: Piston engines, gate valves, sliding ports

In cases like a sliding valve where a port opens and closes, **Cyclic ACMI** is required. The non-overlapping part of the boundary (where the port is covered by the wall) acts as a solid wall preventing flow, while the overlapping part allows fluid to pass through.

## Cyclic (AMI/ACMI) in SimFlow

To define Cyclic (AMI/ACMI), the two patches must first be connected into an AMI or ACMI interface in the **Mesh** panel. Once the interface is created, select the patch in the **Boundary Conditions** panel and choose the appropriate type.

![Cyclic (AMI/ACMI) configuration in SimFlow](https://help.sim-flow.com/boundary-conditions/images/cyclic-ami-acmi/cyclic-ami-bc-01.png)

Figure 1. Cyclic (AMI/ACMI) configuration in SimFlow

## Cyclic (AMI/ACMI) - Alternatives

In this section, we propose boundary conditions that are alternative to Cyclic (AMI/ACMI). While they may fulfill similar purposes, they might be better suited for a specific application and provide a better approximation of physical world conditions.

| Boundary Condition | Description |
| --- | --- |
| **[Fixed Jump (AMI)](https://help.sim-flow.com/boundary-conditions/fixed-jump-ami)** | Based on AMI but adds a constant offset (jump) to the value across the interface (e.g. for fan pressure rise). |
