June 26, 2012

ACA: Occupancy Load Calculations with a Column Total

In the thread in the Autodesk AutoCAD® Architecture Discussion Group that was the basis for my previous blog article post on occupant load calculations, Ted Evans pointed out that if you add a total to the occupant load column, the sum may not reflect the total of the displayed values. He is correct, if the displayed values have a sufficient number of cases where small fractional amounts were rounded up. Because any fractional amount is being rounded up in this case, there is no opportunity for round ups to be offset by round downs, making the fact that ACA uses the unformatted values when calculating the total even more apparent than in a situation where rounding is done to "nearest".

My reply today explained the reason why the total was not the same as the sum of the displayed numbers, and I indicated that in order for the total to be correct, the rounding should be done within the formula property, rather than by the Property Data Format. [For other options, see this blog article, which includes several means of achieving real number rounding and getting correct column totals.]

By placing the results of each branch of the second If statement in a variable [occs] instead of making it the RETURN value, I was able to then process the value in variable occs. If occs is not a whole number (that is, if subtracting the integer portion of occs from itself does not result in a value of zero), the value of occs is reset to the integer portion of occs plus one. Otherwise, occs is a whole number, and rounding up is not necessary. The revised formula is shown below; a sample file was included in my reply in the Discussion Group.
occLoad = [SpaceStylesCalcs:Occupant_Load]

If occLoad = 0 Then
 doCalc = 0
 occLoad = 1
 doCalc = 1
End If

If doCalc = 1 Then
 occs = [SpaceStyles:BaseArea] / occLoad
 occs = 0
End If

If occs - Int (occs) <> 0 Then
 occs = Int (occs) + 1
End If

RESULT = occs


Ted E said...

One other question about this. Can duplicate rooms be scheduled as a single line item? I know you can now group rooms together but although the name will be a single line item the square footage for each room is a separate line item. I would like to see it schedule for example if there are 2 toilets there would be one line item with the room name toilet and the square footages added to gether as one entry. This seems to be a more practicle way to use this as a Occupancy load schedule.

David Koch said...

Multiple rooms (or multiple objects of any type being scheduled) can be represented by a single line in a Schedule Table if, and only if, you include a Quantity column in your Schedule Table Style and the data to be displayed in EVERY column is EXACTLY the same. If you do not want to show quantities in the Schedule Table, you can hide that column.

For your example, where you want a total area for all of the Spaces, you will also need to add a formula column to calculate the product of the Area and Quantity columns. (You can hide the Area column if you only want to show the total.)

Be forewarned that the values must truly be exactly the same; objects with column values that are different but which round to the same number will not collapse into one line. I have several posts that discuss how to do the rounding so that ACA treats the rounded result as the value to compare.

You may also want to be careful about combining multiple Spaces when calculating occupancy if the Spaces represent distinct areas that are physically separated (by partitions or other Spaces), unless you are certain that the AHJ will accept combining them.

Cindy Kearney said...

Years later...I had my IT guy help me decipher all your similar posts and we ended up just creating a second PSD to just round another PSD's Occupant Load value by:

0 - INT( 0 - [OccupantLoad])

to round to the next largest whole number.