Question-and-Answer Resource for the Building Energy Modeling Community
Get started with the Help page
Ask Your Question
4

Natural vented cavity

asked 2015-03-06 05:39:09 -0600

giofer's avatar

updated 2015-07-11 17:16:04 -0600

I have created a model in SketchUp with OpenStudio.

How can I avoid to losing data in the switch between osm and idf? For example, I created a natural vented cavity with idf editor. Then, if I need to change the model with graphic input (as I use SketchUp) I lose that information.

Now the natural vented cavity is actually the most boring input overall when you have about 20 surfaces with it. How can maintain the information?

edit retag flag offensive close merge delete

1 Answer

Sort by ยป oldest newest most voted
5

answered 2015-03-06 09:01:25 -0600

updated 2015-03-06 09:04:10 -0600

I would write an EnergyPlus measure to edit the surface objects and add the natural vented cavity to the idf when you run your OpenStudio model. The run portion of the measure would probably look something like this:

# create other side conditions model object
sideConditionModel = "
SurfaceProperty:OtherSideConditionsModel,
    ScreenCavityModel,          ! OtherSideConditionsModel Name
    GapConvectionRadiation;         ! Type of Modeling used to determine Boundary Conditions
    "       
object = OpenStudio::IdfObject::load(sideConditionModel).get
wsObject = workspace.addObject(object)

# get all building surfaces in the starting model
heat_transfer_surfaces = workspace.getObjectsByType("BuildingSurface:Detailed".to_IddObjectType)

surface_names = []

heat_transfer_surfaces.each do |surface|
    # change outside boundary condition based on surface construction name
    construction_name = surface.getString(2)
    if construction_name.match("Ext wall - Insulated metal siding")
        surface.setString(4,"OtherSideConditionsModel")
        surface.setString(5,"ScreenCavityModel")
    end
    # put surface name in array
    surface_name = surface.getString(0)
    surface_names << surface_name
end

naturallyVentedCavity = "
SurfaceProperty:ExteriorNaturalVentedCavity,
    Vented Cavity Exterior Surface,     ! Name
    ScreenCavityModel,      ! OtherSideConditionsModel Object Name
    0.02,                       ! Area Fraction of Openings
    0.9,                        ! Thermal Emissivity of Exterior Baffle Material
    0.92,                       ! Solar Absorbtivity of Exterior Baffle
    0.05,                       ! Height scale for bouyancy-driven ventilation
    0.05,                       ! Effective Thickness of Cavity Behind Exterior Baffle
    0.97,                       ! Ratio of Actual surface area to projected surface area
    Smooth ,                    ! Roughness of collector
    0.1 ,                       ! Cv, Effectiveness for perforations with respect to Wind
    0.5 ,                       ! Cd, Discharge Coefficient for Openings with respect to bouyancy-driven flow
    #{surface_names.join(",")} ;            ! Surface Name
    "   
cavity = OpenStudio::IdfObject::load(naturallyVentedCavity).get
wsCavity = workspace.addObject(cavity)
edit flag offensive delete link more

Comments

I took the liberty of marking this answer as accepted (answered a year and a half ago). @giofer, remember to mark answers as accepted if they solved your problem in the future. Thanks!

Julien Marrec's avatar Julien Marrec  ( 2017-01-31 07:38:14 -0600 )edit

Your Answer

Please start posting anonymously - your entry will be published after you log in or create a new account.

Add Answer

Training Workshops

Careers

Question Tools

1 follower

Stats

Asked: 2015-03-06 05:39:09 -0600

Seen: 499 times

Last updated: Mar 06 '15