First time here? Check our help page!
3

How to set spacetype.people by measure?

I'd like to understand how I can add modify the People loads in a Space Type, using the OpenStudio sdk.

SpaceType.people is a frozen array.

SpaceType methods for setting people loads all seem to remove existing people loads, predicated on the idea that there should only be one People per zone.

My goal is to write a measure that modifies existing space types (which would have 1 people load) to have people with half the load each.

TomB's avatar
1.7k
TomB
asked 2018-09-10 00:53:07 -0500
__AmirRoth__'s avatar
4.4k
__AmirRoth__
updated 2018-09-10 10:07:18 -0500
edit flag offensive 0 remove flag close merge delete

Comments

add a comment see more comments

1 Answer

2

All Space Loads derive from the same parent classes, see the inheritance diagram for People, but here's the basic idea:

People > SpaceLoadInstance > SpaceLoad > SpaceItem > (ModeObject > etc )

As a result, it's the SpaceLoadInstance that references directly either the Space or SpaceType.

SpaceLoadInstances instantiate a given SpaceLoadDefinition in a Space or SpaceType by defining a multiplier and a schedule

SpaceType and Spaces both have convenience functions to return all "People" objects that reference it (and all other loads).

What this means is that when you get a given SpaceType, you can rest assured that you can modify the SpaceLoadInstance object (multiplier and Schedule) without affecting other SpaceTypes/Spaces. If you start touching the SpaceLoadDefinition, then you should probably start by counting how many time it's used, to see if you should clone it before you modify it.

Julien Marrec's avatar
29.7k
Julien Marrec
answered 2018-09-10 03:57:44 -0500
edit flag offensive 0 remove flag delete link

Comments

add a comment see more comments