# Generate Unit Mix around Circulation

### 1. Draw a Custom Core (or upload it)

{% embed url="<https://youtu.be/_rqzb0ho17A>" %}

* Enter the story view by double clicking on a story.
* Draw a custom core using the wall tool (k).

{% hint style="info" %}
To move walls specific distances, type in a number (mm) while dragging.

To copy walls specific distances, type in a number (mm) while dragging and then press alt.
{% endhint %}

{% hint style="success" %}
Don't want to draw your core in Finch? [Upload it](https://docs.finch3d.com/overview/new-features#upload-walls) from Rhino or Revit instead.
{% endhint %}

<figure><img src="/files/loeN35ucGDj6VOqRIBjK" alt=""><figcaption><p>Draw and assign the circulation program</p></figcaption></figure>

### 2. Assign a corridor

* Select the custom core, and hit **`Edit Unit`** to enter the unit plan level.
* Draw space types using the wall or space divider tool, and create and assign **`corridor`**, elevator and stair space types.

{% hint style="danger" %}
A **`corridor`** space type is required to run the algorithm around a custom core. Other space types that will block corridor access (such as elevators, stairs, etc) are recommended but not required.
{% endhint %}

<figure><img src="/files/Y4PmhKm4XwhMRm3nPc58" alt=""><figcaption><p>Draw and assign a corridor space type inside of the circulation unit</p></figcaption></figure>

{% hint style="info" %}
The floor plate algorithm uses the **`corridor`** space type to ensure that each apartment has entry access.
{% endhint %}

### 3. Start the generation

{% hint style="danger" %}
A **`corridor`** space type is required to run the algorithm around a custom core.
{% endhint %}

* Select the areas you want to generate in (hold shift to select multiple) and hit **`Generate Floor Plate`** on the **`Context Menu`**.
* The generation will begin to run.

<figure><img src="/files/qavyFI75dXUfaguISFRV" alt=""><figcaption></figcaption></figure>

{% hint style="success" %}
**By splitting the floor plate into sections by drawing dividing walls before generating, you can have localized control over your unit mix and optimization.**

Need large apartments on the outer facade and smaller apartments optimized for daylight on the inner facade? Split the building into an outer and inner section by drawing walls, and run two generations. Request a large unit mix for the exterior section and a smaller unit mix optimized for facade/floor area ratio (daylight) for the interior section.
{% endhint %}

### 4. Input the Unit Mix

{% hint style="info" %}
The more iterations that run, the more accurate the result will become.
{% endhint %}

* Input the desired **`Unit Mix`** in the upper left panel.
* Check the **`Residential Unit Mix`** accordion menu on the right panel to see if the units are hitting your requirements. Units that are outside of your ranges will be displayed in grey.
* Your **`Residential Unit Mix`** visualization ranges can be edited before, during and after generation.

<figure><img src="/files/MPAbzSZuFptGbJrQfzTo" alt=""><figcaption></figcaption></figure>

### 5. Control which metrics the algorithm prioritizes

{% hint style="info" %}
Users can continously change parameters to interact with the algorithm throughout the generation process.
{% endhint %}

* In the bottom left corner, interact with the algorithm weights to optimize for certain metrics.
* Metrics with their sliders further to the right will be prioritized.

<figure><img src="/files/N0NcenfspJjihbLMKXVY" alt=""><figcaption></figcaption></figure>

### 6. Assign to story

* Once you are satisifed with the generation, **`pause`** the algorithm and hit **`Assign to Story`** to bake it out.

<figure><img src="/files/L2wp0gstfL72LszJ4b37" alt=""><figcaption></figcaption></figure>

### 7. Edit the results

{% hint style="info" %}
Finch is a complete editing tool. All generated plans can be fully edited and customized.
{% endhint %}

* Drag walls specific distances by typing the distance as you move.

<figure><img src="/files/oM9W0F3mzy2dhNCBv6eg" alt=""><figcaption><p>Drag specific distances</p></figcaption></figure>

* Mirror walls using the **`Mirror`** icon (shift+m) that appears when walls are selected.

<figure><img src="/files/o568rEyYiZ5fQgj1TrOl" alt=""><figcaption><p>Mirror</p></figcaption></figure>

* Align walls by dragging and holding shift.

<figure><img src="/files/1MLGgxGSy1Z6TNK2ojkV" alt=""><figcaption><p>Align</p></figcaption></figure>

* Change wall widths by selecting a wall and inputting the new wall thickness in the **`Context Menu`**.

<figure><img src="/files/JheY5xwr4lerAR3fqujO" alt=""><figcaption><p>Change wall widths</p></figcaption></figure>

{% hint style="info" %}
Like one half of the floor plate but not the other? Finch can generate in sections!

Delete the unwanted walls and run the algorithm again in the new section, or draw your own sections using the wall tool.
{% endhint %}

<figure><img src="/files/N9rG8fPHvBVCAzaqvLbc" alt=""><figcaption></figcaption></figure>

***


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.finch3d.com/docs/projects-and-variants/story-editor/generate-unit-mix-around-circulation.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
