First time here? Check out the Help page!
1 | initial version |
I didn't see anything in the Envelope Summary Tabular output in EnergyPlus. Here is a way to do it from model inputs in OpenStudio. The code below loops through layered constructions and then the material layers for each construction and reports the mass per m^2 for the construction. You could use this to get mass for specific surfaces or for all surfaces using a specific construction.
model.getLayeredConstructions.each do |layered_construction|
mass_per_area = 0.0
layered_construction.layers.each do |layer|
if layer.to_StandardOpaqueMaterial.is_initialized
layer = layer.to_StandardOpaqueMaterial.get
density = layer.density
thickness = layer.thickness
puts "#{layer.name} is opaque and has density of #{density} (kg/m^3) and a thickness of #{thickness} (m)"
mass_per_area += density * thickness
end
end
puts "Mass of #{layered_construction.name} is #{mass_per_area} (kg/m^2)"
end
Output looks like this.
Roof Membrane - Highly Reflective is opaque and has density of 1121.29 (kg/m^3) and a thickness of 0.0095 (m) Metal Roof Surface is opaque and has density of 7823.99999999999 (kg/m^3) and a thickness of 0.000799999999999998 (m)
Mass of Typical IEAD Roof - Highly Reflective R-20.83 is 16.911454999999975 (kg/m^2)
2 | No.2 Revision |
I didn't see anything in the Envelope Summary Tabular output in EnergyPlus. Here is a way to do it from model inputs in OpenStudio. The code below loops through layered constructions and then the material layers for each construction and reports the mass per m^2 for the construction. You could use this to get mass for specific surfaces or for all surfaces using a specific construction.
model.getLayeredConstructions.each do |layered_construction|
mass_per_area = 0.0
layered_construction.layers.each do |layer|
if layer.to_StandardOpaqueMaterial.is_initialized
layer = layer.to_StandardOpaqueMaterial.get
density = layer.density
thickness = layer.thickness
puts "#{layer.name} is opaque and has density of #{density} (kg/m^3) and a thickness of #{thickness} (m)"
mass_per_area += density * thickness
end
end
puts "Mass of #{layered_construction.name} is #{mass_per_area} (kg/m^2)"
end
Output looks like this.
Roof Membrane - Highly Reflective is opaque and has density of 1121.29 (kg/m^3) and a thickness of 0.0095 (m)
(m)
Metal Roof Surface is opaque and has density of 7823.99999999999 (kg/m^3) and a thickness of 0.000799999999999998 (m)
Mass of Typical IEAD Roof - Highly Reflective R-20.83 is 16.911454999999975 (kg/m^2)
3 | No.3 Revision |
I didn't see anything in the Envelope Summary Tabular output in EnergyPlus. Here is a way to do it from model inputs in OpenStudio. The code below loops through layered constructions and then the material layers for each construction and reports the mass per m^2 for the construction. You could use this to get mass for specific surfaces or for all surfaces using a specific construction.
model.getLayeredConstructions.each do |layered_construction|
mass_per_area = 0.0
layered_construction.layers.each do |layer|
if layer.to_StandardOpaqueMaterial.is_initialized
layer = layer.to_StandardOpaqueMaterial.get
density = layer.density
thickness = layer.thickness
puts "#{layer.name} is opaque and has density of #{density} (kg/m^3) and a thickness of #{thickness} (m)"
mass_per_area += density * thickness
end
end
puts "Mass of #{layered_construction.name} is #{mass_per_area} (kg/m^2)"
end
Output looks like this.
Roof Membrane - Highly Reflective is opaque and has density of 1121.29 (kg/m^3) and a thickness of 0.0095