4

Constant boundary condition

How can I set a constant boundary condition in a surface?

I already search in EnergyPlus manual and this function would be set Outside Boundary Condition to Other Side Coefficients and use the constants to set the boundary. Althought, when I try to set OtherSideCoefficients in OpenStudio, it is not possible.

Beyond that, I don't know how to set all parameters of OtherSideCoefficients only using the field Outside Boundary Condition Object. image description

Geraldo Pithon's avatar
1.3k
Geraldo Pithon
asked 2017-08-25 23:38:29 -0500
__AmirRoth__'s avatar
4.4k
__AmirRoth__
updated 2017-10-09 08:03:50 -0500
edit flag offensive 0 remove flag close merge delete

Comments

add a comment see more comments

1 Answer

3

You can use the API to do so, using SurfacePropertyOtherSideCoefficients.

Here's the second example from the I/O reference guide here

model = OpenStudio::Model::Model.new

sprop = OpenStudio::Model::SurfacePropertyOtherSideCoefficients.new(model)
sprop.setName("OSCCoef:Zn005:Wall004")
sprop.setCombinedConvectiveRadiativeFilmCoefficient(1.23)
sprop.constantTemperature
sprop.constantTemperatureCoefficient
sprop.setConstantTemperature(0)
sprop.setConstantTemperatureCoefficient(0)
sprop.setExternalDryBulbTemperatureCoefficient(1)
sprop.setGroundTemperatureCoefficient(0)
sprop.setZoneAirTemperatureCoefficient(0)
sprop.sinusoidalVariationofConstantTemperatureCoefficient
sprop.setSinusoidalVariationofConstantTemperatureCoefficient(false)
sprop.setPeriodofSinusoidalVariation(24)
sprop.previousOtherSideTemperatureCoefficient(0)
sprop.setPreviousOtherSideTemperatureCoefficient(0)
sprop.resetMinimumOtherSideTemperatureLimit
sprop.resetMaximumOtherSideTemperatureLimit
puts sprop

Out:

OS:SurfaceProperty:OtherSideCoefficients,
  {0080fb86-3998-4681-ae5c-908610b02e6b}, !- Handle
  OSCCoef:Zn005:Wall004, !- Name
  1.23,                                   !- Combined Convective/Radiative Film Coefficient {W/m2-K}
  0,                                      !- Constant Temperature {C}
  0,                                      !- Constant Temperature Coefficient
  1,                                      !- External Dry-Bulb Temperature Coefficient
  0,                                      !- Ground Temperature Coefficient
  ,                                       !- Wind Speed Coefficient
  0,                                      !- Zone Air Temperature Coefficient
  ,                                       !- Constant Temperature Schedule Name
  No,                                     !- Sinusoidal Variation of Constant Temperature Coefficient
  24,                                     !- Period of Sinusoidal Variation {hr}
  0,                                      !- Previous Other Side Temperature Coefficient
  ,                                       !- Minimum Other Side Temperature Limit {C}
  ;                                       !- Maximum Other Side Temperature Limit {C}

If s is an OpenStudio::Model::Surface, to set the property:

s.setSurfacePropertyOtherSideCoefficients(sprop)
Julien Marrec's avatar
29.7k
Julien Marrec
answered 2017-08-28 03:17:57 -0500, updated 2017-08-28 03:18:38 -0500
edit flag offensive 0 remove flag delete link

Comments

Thank's @Julien Marrec. Can you help me with some manual about using API? Where do I write this code? I don't know anything about this and the material in OpenStudio Documentation seems me something too advanced. There is something basic for beginners?

Geraldo Pithon's avatar Geraldo Pithon (2017-08-28 09:13:42 -0500) edit

I guess the measure writing guide is the right place to start (personally I'd tend to write this directly into a terminal rather than spend time writing an actual measure, but that might be even more confusing for a new user).

Julien Marrec's avatar Julien Marrec (2017-08-28 09:17:10 -0500) edit

Thank's @Julien Marrec! Is it difficult to open a terminal? Some manual for this? Do I need to install something? Where do I begin?

Geraldo Pithon's avatar Geraldo Pithon (2017-08-28 09:21:33 -0500) edit

See "Optional - Install Ruby" in the Getting Started. I think you want ruby 2.2.4 instead of 2.0.0. Otherwise use the CLI.

Julien Marrec's avatar Julien Marrec (2017-08-28 09:59:33 -0500) edit

But like I said, maybe just write a measure (or hire someone who will)

Julien Marrec's avatar Julien Marrec (2017-08-28 10:00:21 -0500) edit
add a comment see more comments