Change Duct Loss Coefficient to Another Fitting in ASHRAE Table

Anyone know how to change multiple ASHRAE duct fitting coefficient to another ASHRAE fitting? Attempting to do static calcs in Revit and the one hold up is having to change each fitting individually.

1 Like

Could you please try and explain in a little bit more detail what you are trying to do? Not everyone is an MEP engineer :slight_smile:

Have you searched the forums for anything similar?

Sorry, my bad about the bad explanation.

Each fitting has a loss method (ASHRAE coefficient, specific coefficient, specific loss, or not defined). Whatever method you use, it will create a static pressure loss value from that (ex. 0.25 inches water column (in. wc.)). The total static pressure loss of the system is the sum of all static pressure loss values of all the fittings, duct runs, and pieces of equipment.

When I do a calculation, if I do it without Dynamo in Revit, I have to select each individual fitting (ex. all elbows) click on the “Loss Method Settings” edit and change what type of fitting its using in the ASHRAE Table (Table in first picture).

I’ve looked at this post, MEP - How to set dialog box values, which shows how to set the Loss Method dropdown (Warnings_NoLossDefined (1).dyn (6.9 KB)
And with this script, (Change-Coeff.-loss-fitting-duct.dyn (7.5 KB)
) they changed the “Specified Coefficient” to a number.

What I’m looking to do is reuse the python script to change the fitting from the ASHRAE table. I think the biggest part would be finding how to they relate each fitting in the table to a value or string.

I’m recognizing that this reply could just make it even more confusing.

Hi @nathaniel.g.macdonal,

If you install the Lookup Addins from the MEP - How to set dialog box values link, I think you can take a deeper look into the parameters needed to modify the python script in the direction your looking for.

I haven’t touched Dynamo for a while so I can’t help or point in a specific direction other than recommend @Kulkul’s Python/MEP expertise in this matter.


Happy new year!

Thanks @Jonathan_Roy. I had actually done that already after reading through your post more thoroughly. Although I can snoop to see the Loss Method parameter, the Loss Method Settings parameter ends up relatively blank with this.

So I can’t find a unique parameter value for the type of fitting. Therefore I’m guessing its a little more complicated with something in python.

Hi @nathaniel.g.macdonal. I’m also trying to change duct fitting coefficient to another ASHRAE fitting. Did you manage to update python?


Change-Coeff.-loss-fitting-duct_ASHRAE.dyn (7.8 KB)


Wow. @til.shviger, that’s exactly what I needed. Thank you. Looking at your code is allowing me to understand how its done a little better.

So in the first python script, you are making sure that the Loss Method is set to the correct parameter (Coefficient from ASHRAE Table).



In the second script you are changing the value of the fitting by the server.

If any of this is a bad assumption, let me know. Thanks again!

See @til.shviger reply above.

Yes and im forgot add one most important detail in out list… just a moment …


for example for Loss Method: Specific Coefficient
parameter name ="Coefficient"

Are you adding that to let the user know that it used the correct server?

it gives access to the tables inside to adjust values
this table

I’m a total newbie with Python. Could you please show me how to make this script work with a list of inputs?

Many thanks

try x.ToString()

The input is a list of Strings. isn’t it the same thing?

Can you paste here your full code. my code (base code is not mine. I just little corrected them) is works with one element (not with list of elements)


your code is very useful, but we use to manage a lot of elements… any hep would be very appreciated :sweat_smile: I don’t know how to edit it… so the code is exactly yours

can you add little example of rvt (you can erase/delete all not important for code exist elements inside ) file (i dont work with this tables and i havent them ) and dyn file

Ok… two words on the workflow:

  1. Sometimes Revit just chooses the wrong table, as sometimes tables are similar
  2. With my collegues, we decided to write the corresponding Table code as a string into a type parameter (“Tabella ASHRAE”)
  3. So Dynamo should read this value and use the corresponding table for the pressure drop calculation.
  4. For some reason, after setting the right ASHRAE code, Revit does not refresh the Pressure drop value. We have found a trick: to set the Calculation method as “undefined”, and then back to “ASHRAE Table”. Not the cleanest solution ever, but it works.

In attachement you will find all the stuff

Gruppo 1.rvt (2.9 MB)

Pick ASHRAE table from Family Type and set calculation accordingly.dyn (17.1 KB)

Thank you!!

next code work just with duct accessory

for another category you must looking for here