Skip to content

Typologies

BEMGen has one plan generator for each family of its precedent set, eighteen in all, housing and non-residential, all in panel 2 Generate, and fifteen generators for the DOE reference buildings. The families come from four books on housing and building planning; they fix only which parts a plan has and how they connect, so every dimension and count below is a design input with a default chosen for BEMGen. The family SYN-TYP-013 (an incremental row with reserved expansion bays) has no generator. Family rules and sources: four-source typology families.

The images show each family's example definition in the viewport: the default plan (left) and the building after its simplifier and floor aggregator (right), as listed under Example definitions.

Every generator works as the workflow describes: dimensions in metres, a Floor Height (floor-to-floor) and an Orientation (degrees clockwise from true north, default 0), one required preset input per space type, Preview Location last, and one Plan output. Housing families zone one zone per dwelling (plus stairs and corridors); non-residential families zone one zone per department.

Overview

The counts are those of the default plan with the default presets of the matching space types.

Generator (nickname) Family Preset inputs Zones Floor area Windows
Linear Plan Generator (Linear) SYN-TYP-009 double-sided internal corridor bar Dwelling Unit, Corridor, Stair 6 432 m² 10
Stair Bay Bar (SBar) SYN-TYP-001 repeated stair bays in a linear bar Dwelling Unit, Stair 9 612 m² 20
Stair Pair (SPair) SYN-TYP-008 one stair between a dwelling pair Dwelling Unit, Stair 3 204 m² 8
Gallery Bar (GBar) SYN-TYP-002 continuous external gallery beside a linear bar Dwelling Unit, Stair 8 440 m² 18
Terrace Row (Terr) SYN-TYP-006 attached narrow terrace row Dwelling Unit 6 330 m² 14
Point Plate (PPlate) SYN-TYP-007 compact point-access tower plate Dwelling Unit, Stair 5 484 m² 8
Winged Band (WBand) SYN-TYP-003 projecting wings joined by a common band Dwelling Unit, Stair 21 1452 m² 43
Open Court (OCourt) SYN-TYP-004 open U-shaped court with stair-served wings Dwelling Unit, Stair 15 984 m² 30
Enclosed Court (ECourt) SYN-TYP-005 enclosed courtyard residential block Dwelling Unit, Stair 24 1728 m² 44
Court Cluster (CCluster) SYN-TYP-011 linked housing clusters around several courts Dwelling Unit, Stair 39 2880 m² 72
Radial Lobes (RLobes) SYN-TYP-010 radial lobes around a point tower core Dwelling Unit, Stair 9 624 m² 16
Stepped Band (SBand) SYN-TYP-012 stepped dwelling bands with exposed terraces Dwelling Unit, Corridor, Stair 7 per storey 576, 468, 360 m² 11 per storey
Office Plate (OPlate) SYN-TYP-017 central service core within an office plate Office, Core 2 1260 m² 4
Cafeteria (Cafe) SYN-TYP-016 cafeteria service edge beside a dining field Kitchen, Dining 2 690 m² 6
Branching Mall (BMall) SYN-TYP-014 branching public mall between retail wings Mall, Retail 10 7744 m² 16
Care Hub (CHub) SYN-TYP-018 communal hub serving elder-care bedroom groups Care Bedroom, Care Communal, Corridor 10 1552 m² 16
Foyer Halls (FHalls) SYN-TYP-019 public foyer branching to distinct activity spaces Lobby, Activity Hall, Service 4 1800 m² 10
Operating Suite (OSuite) SYN-TYP-015 operating suite with separated clean and dirty routes Operating Theatre, Clean Corridor, Dirty Corridor, Clinical Support 6 1046.4 m² 8

Wire each preset input from the built-in preset component of the same name in 1 Program Presets (Dwelling Unit Preset into Dwelling Unit, and so on), from a general Program Preset of that space type, or from Any Program Preset to use another program (workflow).

Housing

Linear Plan Generator

A bar with a full-depth stair at the west end (ST), a double-loaded corridor along the middle (CO), and a row of equal dwellings on each side (US1, US2, … south, UN1, UN2, … north). Inputs: Length (L) 24, Unit Depth (UD) 8, Corridor Width (CW) 2, Unit Width (UW) 10, the target dwelling width, the rows being divided evenly, Stair Length (SL) 4, Floor Height (FH) 3, Orientation (O) 0. Lineage: HDHM-TYP-009. The end-to-end example uses it.

Plan of the Linear Plan Generator example Building of the Linear Plan Generator example

Example: linear-plan.gh (canvas); reference: Linear Plan Generator.

Stair Bay Bar

Repeated bays of dwelling, stair, dwelling through the full depth, each stair serving the two dwellings beside it; no corridor. Zones ST1…, then U1…. Inputs: Bay Count (BC) 3 (at least 2), Unit Width (UW) 7, Depth (D) 12, Stair Width (SW) 3, Floor Height (FH) 3, Orientation (O) 0. Lineage: HDHM-TYP-001.

Plan of the Stair Bay Bar example Building of the Stair Bay Bar example

Example: stair-bay-bar.gh (canvas); reference: Stair Bay Bar.

Stair Pair

One stair bay of the Stair Bay Bar as its own building: two dwellings on either side of one stair (ST1, U1, U2). Inputs: Unit Width (UW) 7, Depth (D) 12, Stair Width (SW) 3, Floor Height (FH) 3, Orientation (O) 0. Lineage: HDHM-TYP-008.

Plan of the Stair Pair example Building of the Stair Pair example

Example: stair-pair.gh (canvas); reference: Stair Pair.

A row of dwellings through the bar depth between a stair at each end (ST1 west, ST2 east, U1…). The external gallery itself is not modelled: there is no gallery zone, and the gallery side is an ordinary outdoor façade. Inputs: Unit Count (UC) 6 (at least 2), Unit Width (UW) 6, Depth (D) 10, Stair Width (SW) 4, Floor Height (FH) 3, Orientation (O) 0. Lineage: HDHM-TYP-002.

Plan of the Gallery Bar example Building of the Gallery Bar example

Example: gallery-bar.gh (canvas); reference: Gallery Bar.

Terrace Row

Attached house plots sharing dividing walls, one dwelling zone per plot and storey (U1…, named House i); each house's own stair is inside the dwelling and not zoned. Inputs: Plot Count (PC) 6 (at least 2), Plot Width (PW) 5.5, Depth (D) 10, Floor Height (FH) 3, Orientation (O) 0. Only a Dwelling Unit preset. Lineage: HDHM-TYP-006.

Plan of the Terrace Row example Building of the Terrace Row example

Example: terrace-row.gh (canvas); reference: Terrace Row.

Point Plate

A square plate of side Core Width + 2 × Dwelling Depth (22 m by default) with a central core ST (a Stair zone without outdoor walls) and four dwellings U1…U4 in a pinwheel around it, each with two façades. Inputs: Dwelling Depth (DD) 8, Core Width (CW) 6, Floor Height (FH) 3, Orientation (O) 0. Lineage: HDHM-TYP-007.

Plan of the Point Plate example Building of the Point Plate example

Example: point-plate.gh (canvas); reference: Point Plate.

Winged Band

A band of stair bays with wings of stair bays projecting to plan north, each joined to the band along its whole root, so the outline is a comb. Zones B-ST1…, B-U1… (band), then W{i}-ST1…, W{i}-U1… (wing i). The dwelling width is adjusted so that the bays fill the band and each wing exactly; a band façade fragment shorter than 1 m between wings gets no window. Inputs: Wing Count (WC) 3 (at least 2), Wing Length (WL) 17, Wing Spacing (WS) 17, Depth (D) 12, Unit Width (UW) 7, Stair Width (SW) 3, Floor Height (FH) 3, Orientation (O) 0. Lineage: HDHM-TYP-003.

Plan of the Winged Band example Building of the Winged Band example

Example: winged-band.gh (canvas); reference: Winged Band.

Open Court

West, east, and north wings of stair bays around a court open to plan south; every dwelling adjoins a stair of its bay. Zones N-…, then W-… and E-…. Inputs: Court Width (CW) 24, Court Depth (CD) 17, Depth (D) 12, Unit Width (UW) 7, Stair Width (SW) 3, Floor Height (FH) 3, Orientation (O) 0. Lineage: HDHM-TYP-004.

Plan of the Open Court example Building of the Open Court example

Example: open-court.gh (canvas); reference: Open Court.

Enclosed Court

Four wings of stair bays around a court closed on all four sides. The footprint has the court as a hole: the court is outside the building, and its façades are outdoor walls with windows facing into it (16 of the 44 windows by default). Perimeter Core zones the court façades separately (P-Court-North, …) around a ring-shaped core. Zones S-…, N-…, then W-…, E-…. Inputs: Court Width (CW) 24, Court Depth (CD) 24, Depth (D) 12, Unit Width (UW) 7, Stair Width (SW) 3, Floor Height (FH) 3, Orientation (O) 0. Lineage: HDHM-TYP-005.

Plan of the Enclosed Court example Building of the Enclosed Court example

Example: enclosed-court.gh (canvas); reference: Enclosed Court.

Court Cluster

A row of courts closed by wings of stair bays: south and north wings across the full width, and a west, middle, and east wing between them, each middle wing bordering two courts. The footprint has one hole per court. Zones S-…, N-…, then W-…, M1-…, …, E-…. Inputs: Court Count (CC) 2 (at least 2), Court Width (CW) 24, Court Depth (CD) 24, Depth (D) 12, Unit Width (UW) 7, Stair Width (SW) 3, Floor Height (FH) 3, Orientation (O) 0.

Plan of the Court Cluster example Building of the Court Cluster example

Example: court-cluster.gh (canvas); reference: Court Cluster.

Radial Lobes

Three or four lobes on the sides of a square core ST, east, north, west, then south, each lobe holding two dwellings side by side (L{i}-U1, L{i}-U2) that both adjoin the core; no other circulation. With three lobes the core's south side is a façade. Inputs: Lobe Count (LC) 4 (3 or 4), Lobe Length (LL) 10, Lobe Width (LW) 12 (at most Core Width), Core Width (CW) 12, Floor Height (FH) 3, Orientation (O) 0.

Plan of the Radial Lobes example Building of the Radial Lobes example

Example: radial-lobes.gh (canvas); reference: Radial Lobes.

Stepped Band

A band of dwellings between a west stair ST and a rear corridor CO that steps back storey by storey on the south side, so that each lower roof keeps a terrace. It is the only generator with one plan per storey: its Plan output is the list of storey plans, bottom to top. Simplify the list and give the floors to an aggregator with Multipliers unconnected (storey plans). Inputs: Storey Count (SC) 3 (at least 2), Length (L) 36, Base Depth (BD) 14 (the dwelling depth on the ground storey; it must exceed (Storey Count − 1) × Step Depth), Step Depth (SD) 3 (the terrace depth), Corridor Width (CW) 2, Unit Width (UW) 6, Stair Width (SW) 4, Floor Height (FH) 3, Orientation (O) 0. By default five dwellings of 6.4 m per storey, and storeys of 576, 468, and 360 m², drawn at 0, 3, and 6 m.

Plan of the Stepped Band example Building of the Stepped Band example

Example: stepped-band.gh (canvas); reference: Stepped Band.

Non-residential

Office Plate

A rectangular plate whose office work area OF is one zone, a ring around a central service core SC (a Core zone without outdoor walls). The core must leave at least 3 m of work area at every façade. Inputs: Plate Length (L) 42, Plate Depth (D) 30, Core Length (CL) 18, Core Depth (CD) 6, Floor Height (FH) 3.8, Orientation (O) 0.

Plan of the Office Plate example Building of the Office Plate example

Example: office-plate.gh (canvas); reference: Office Plate.

Cafeteria

The kitchen and servery KS, one zone, along the whole north edge of a larger dining field DI; the servery counter is their shared edge. Inputs: Length (L) 30, Dining Depth (DD) 15, Kitchen Depth (KD) 8 (smaller than Dining Depth), Floor Height (FH) 4, Orientation (O) 0.

Plan of the Cafeteria example Building of the Cafeteria example

Example: cafeteria.gh (canvas); reference: Cafeteria.

Branching Mall

One mall zone MALL through a central court and three or four branches (east, north, west, then south), each with a shop wing on either side of the mall (B{i}-S1, B{i}-S2) and an anchor store B{i}-AN across its end. Inputs: Branch Count (BC) 3 (3 or 4), Branch Length (BL) 40, Mall Width (MW) 8, Shop Depth (SD) 12, Anchor Depth (AD) 30, Floor Height (FH) 5, Orientation (O) 0.

Plan of the Branching Mall example Building of the Branching Mall example

Example: branching-mall.gh (canvas); reference: Branching Mall.

Care Hub

Two to four bedroom wings around a communal hub HUB, each wing a corridor W{i}-CO from the hub to the wing's end between two bedroom zones W{i}-B1, W{i}-B2. The wing width, 2 × Bedroom Depth + Corridor Width, must not exceed Hub Width. Inputs: Wing Count (WC) 3 (2 to 4), Wing Length (WL) 30, Bedroom Depth (BD) 6, Corridor Width (CoW) 2.4, Hub Width (HW) 16, Floor Height (FH) 3, Orientation (O) 0.

Plan of the Care Hub example Building of the Care Hub example

Example: care-hub.gh (canvas); reference: Care Hub.

Foyer Halls

Two or three activity halls and a support wing around a square public foyer FO: hall 1 east, the support wing SV north, hall 2 west, hall 3 south. Inputs: Hall Count (HC) 2 (2 or 3), Hall Length (HL) 30, Hall Width (HW) 20 (at most Foyer Width), Support Length (SL) 10, Foyer Width (FW) 20, Floor Height (FH) 6, Orientation (O) 0.

Plan of the Foyer Halls example Building of the Foyer Halls example

Example: foyer-halls.gh (canvas); reference: Foyer Halls.

Operating Suite

Support rooms SUP across the west end, then bands from south to north: a dirty corridor, and per bank a bank of theatres and the next corridor, the corridors alternating dirty and clean (DC1, TB1, CC1, TB2, DC2, …). Every bank lies between one clean and one dirty corridor. With the default theatre preset (WWR 0) the banks have no windows. Inputs: Bank Count (BC) 2 (at least 2), Bank Length (BL) 36, Theatre Depth (TD) 7, Clean Corridor Width (CW) 3, Dirty Corridor Width (DW) 2.4, Support Length (SL) 12, Floor Height (FH) 4.2, Orientation (O) 0.

Plan of the Operating Suite example Building of the Operating Suite example

Example: operating-suite.gh (canvas); reference: Operating Suite.

DOE reference buildings

Fifteen more generators in 2 Generate draw the DOE commercial reference buildings. These are not precedent families: each draws one reference building with its DOE zones, and every dimension is an input whose default is the reference building's. - Presets: instead of one preset input per space type, a DOE generator has a Program Map that gives a preset to each program key. Its Program Keys output lists the keys, and its matching Programs component in 1 Program Presets gives a map of illustrative presets with the reference building's window ratios, or, with its strip Get from Atlas…, the atlas's programs of one of its eleven families (five, and the six IECC editions for eleven of the prototypes) with the same window ratios (What's new). DOE Program Map in 1 Program builds a map from edited presets. - Outputs: a DOE generator gives a Plan for every storey, bottom-up. Its Multipliers output says how many storeys each plan stands for; wire it into the floor aggregator's Multipliers.

Generator (nickname) Programs component (nickname)
DOE Small Office (DoeSOff) DOE Small Office Programs (DoeSOffP)
DOE Medium Office (DoeMOff) DOE Medium Office Programs (DoeMOffP)
DOE Large Office (DoeLOff) DOE Large Office Programs (DoeLOffP)
DOE Stand-alone Retail (DoeRet) DOE Stand-alone Retail Programs (DoeRetP)
DOE Strip Mall (DoeSMall) DOE Strip Mall Programs (DoeSMallP)
DOE Supermarket (DoeSMkt) DOE Supermarket Programs (DoeSMktP)
DOE Warehouse (DoeWare) DOE Warehouse Programs (DoeWareP)
DOE Primary School (DoePSch) DOE Primary School Programs (DoePSchP)
DOE Secondary School (DoeSSch) DOE Secondary School Programs (DoeSSchP)
DOE Small Hotel (DoeSHot) DOE Small Hotel Programs (DoeSHotP)
DOE Large Hotel (DoeLHtl) DOE Large Hotel Programs (DoeLHtlP)
DOE Quick-Service Restaurant (DoeQSR) DOE Quick-Service Restaurant Programs (DoeQSRP)
DOE Full-Service Restaurant (DoeFSR) DOE Full-Service Restaurant Programs (DoeFSRP)
DOE Outpatient (DoeOutP) DOE Outpatient Programs (DoeOutPP)
DOE Hospital (DoeHosp) DOE Hospital Programs (DoeHospP)

The programs components' loads are illustrative, like the other built-in presets; only their window ratios are the reference building's. For a program's own values, give Program JSON's presets to DOE Program Map.

Example definitions

The examples zip of each release, bemgen-<version>-examples.zip, holds one Grasshopper definition per typology, end-to-end.gh, program-json-office.gh, schedule-draw.gh, and doe-atlas-map.gh. Each reads left to right: the default preset components, the generator with its default inputs, a plan simplifier, a floor aggregator with a panel of storey multipliers, Validate, and Convert2BEM and Convert2IDF with Write off, in coloured groups with short notes. The simplifiers and aggregators vary across the examples so that each appears several times (except Conditioned Merge, which no example uses); any simplifier works with any aggregator. Open one in Grasshopper with the plugin installed; each solves without warnings or errors and validates.

Definition Simplifier Aggregator Multipliers
linear-plan.gh No Simplification Stack Floors 3
stair-bay-bar.gh Semantic Merge Stacked Floor Zone Multiplier 3
stair-pair.gh Perimeter Core Single Zone per Floor Type 2
gallery-bar.gh Single Zone per Floor Single Zone Building 3
terrace-row.gh Semantic Merge Stack Floors 2
point-plate.gh Perimeter Core Stacked Floor Zone Multiplier 4
winged-band.gh Single Zone per Floor Single Zone per Floor Type 3
open-court.gh No Simplification Single Zone Building 3
enclosed-court.gh Perimeter Core Stack Floors 3
office-plate.gh Single Zone per Floor Stacked Floor Zone Multiplier 4
cafeteria.gh No Simplification Single Zone per Floor Type 1
radial-lobes.gh Semantic Merge Single Zone Building 2
branching-mall.gh Single Zone per Floor Stack Floors 1
care-hub.gh No Simplification Stacked Floor Zone Multiplier 2
foyer-halls.gh Semantic Merge Single Zone per Floor Type 1
operating-suite.gh Perimeter Core Single Zone Building 1
court-cluster.gh Semantic Merge Stacked Floor Zone Multiplier 3
stepped-band.gh Perimeter Core Stack Floors none: one plan per storey, one floor each
end-to-end.gh Perimeter Core (Depth 4.57) Stack Floors 1, 3, 1 (end-to-end example)
program-json-office.gh Semantic Merge Stacked Floor Zone Multiplier 3
schedule-draw.gh No Simplification Stack Floors 3
doe-atlas-map.gh No Simplification Stack Floors the generator's Multipliers

All values are the components' defaults, except in program-json-office.gh, schedule-draw.gh, and doe-atlas-map.gh. In program-json-office.gh there is an Office Plate whose office preset comes from Program JSON, which holds the atlas's Medium Office program in a panel, with Space Type Office and the default WWR 0.4, beside the default Core Preset; its program values are the atlas's, not illustrative. schedule-draw.gh holds the atlas's DOE Ref 1980–2004 Medium Office program, the generation.json of its folder in atlas release 2.4.0, and a setting 2.0.0 in panels, wired into Schedule Draw (Seed 42, Command atlas-schedules); a Stream Filter gated by the Run toggle gives Program JSON the program as it is (Run false, as saved) or the drawn program (Run true, with the generator installed). Program JSON warns that the program's hot-water zone gains are not modelled. doe-atlas-map.gh is the DOE Medium Office at its defaults whose Program Map comes from DOE Medium Office Programs with an atlas map stored: the filled programs of the atlas family 90.1-2007, release 2.3.0, so it solves without a network; the generator's Multipliers feed Stack Floors. The zip's README.md describes the definitions.