bcl 0.5.8 → 0.5.9
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/lib/bcl.rb +2 -1
- data/lib/bcl/base_xml.rb +12 -4
- data/lib/bcl/component.rb +6 -6
- data/lib/bcl/component_from_spreadsheet.rb +13 -10
- data/lib/bcl/component_methods.rb +113 -417
- data/lib/bcl/component_spreadsheet.rb +3 -6
- data/lib/bcl/core_ext.rb +17 -16
- data/lib/bcl/master_taxonomy.rb +12 -14
- data/lib/bcl/tar_ball.rb +1 -1
- data/lib/bcl/version.rb +2 -2
- data/lib/files/Components.xls +0 -0
- data/lib/files/downloads/40237ee0-5ea7-0130-ad9b-14109fdf0b37.tar.gz +0 -0
- data/lib/files/staged/components/Asphalt_Shingles_1_8_in/Asphalt_Shingles_1_8_in.tar.gz +0 -0
- data/lib/files/staged/components/Asphalt_Shingles_1_8_in/component.xml +81 -0
- data/lib/files/staged/components/Built_up_Roofing_3_8_in/Built_up_Roofing_3_8_in.tar.gz +0 -0
- data/lib/files/staged/components/Built_up_Roofing_3_8_in/component.xml +76 -0
- data/lib/files/staged/components/Metal_Surface_1_16_in/Metal_Surface_1_16_in.tar.gz +0 -0
- data/lib/files/staged/components/Metal_Surface_1_16_in/component.xml +76 -0
- data/lib/files/staged/components/Shingle_Backer_1_4_in/Shingle_Backer_1_4_in.tar.gz +0 -0
- data/lib/files/staged/components/Shingle_Backer_1_4_in/component.xml +81 -0
- data/lib/files/staged/components/Shingle_Backer_3_8_in/Shingle_Backer_3_8_in.tar.gz +0 -0
- data/lib/files/staged/components/Shingle_Backer_3_8_in/component.xml +81 -0
- data/lib/files/staged/components/Wood_Shingles_1_4_in/Wood_Shingles_1_4_in.tar.gz +0 -0
- data/lib/files/staged/components/Wood_Shingles_1_4_in/component.xml +81 -0
- data/lib/files/staged/gather/1/Asphalt_Shingles_1_8_in.tar.gz +0 -0
- data/lib/files/staged/gather/1/Built_up_Roofing_3_8_in.tar.gz +0 -0
- data/lib/files/staged/gather/1/Metal_Surface_1_16_in.tar.gz +0 -0
- data/lib/files/staged/gather/1/Shingle_Backer_1_4_in.tar.gz +0 -0
- data/lib/files/staged/gather/1/Shingle_Backer_3_8_in.tar.gz +0 -0
- data/lib/files/staged/gather/1/Wood_Shingles_1_4_in.tar.gz +0 -0
- data/lib/files/staged/gather/components_1.tar.gz +0 -0
- metadata +32 -25
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
######################################################################
|
|
2
|
-
# Copyright (c) 2008-
|
|
2
|
+
# Copyright (c) 2008-2019, Alliance for Sustainable Energy.
|
|
3
3
|
# All rights reserved.
|
|
4
4
|
#
|
|
5
5
|
# This library is free software; you can redistribute it and/or
|
|
@@ -44,7 +44,6 @@ module BCL
|
|
|
44
44
|
@worksheets = []
|
|
45
45
|
|
|
46
46
|
begin
|
|
47
|
-
|
|
48
47
|
excel = WIN32OLE.new('Excel.Application')
|
|
49
48
|
|
|
50
49
|
xlsx = excel.Workbooks.Open(@xlsx_path)
|
|
@@ -67,16 +66,13 @@ module BCL
|
|
|
67
66
|
xlsx.Save
|
|
68
67
|
puts '[ComponentSpreadsheet] Spreadsheet changes saved'
|
|
69
68
|
end
|
|
70
|
-
|
|
71
69
|
ensure
|
|
72
|
-
|
|
73
70
|
excel.Quit
|
|
74
71
|
WIN32OLE.ole_free(excel)
|
|
75
72
|
excel.ole_free
|
|
76
73
|
xlsx = nil
|
|
77
74
|
excel = nil
|
|
78
75
|
GC.start
|
|
79
|
-
|
|
80
76
|
end
|
|
81
77
|
end
|
|
82
78
|
|
|
@@ -171,6 +167,7 @@ module BCL
|
|
|
171
167
|
filepath = values.delete_at(0)
|
|
172
168
|
# not all components(rows) have all files; skip if filename "" or nil
|
|
173
169
|
next if filename == '' || filename.nil?
|
|
170
|
+
|
|
174
171
|
# skip the file if it doesn't exist at the specified location
|
|
175
172
|
unless File.exist?(filepath)
|
|
176
173
|
puts "[ComponentSpreadsheet] ERROR #{filepath} -> File does not exist, will not be included in component xml"
|
|
@@ -179,7 +176,7 @@ module BCL
|
|
|
179
176
|
component_xml.add_file(software_program, version, filepath, filename, filetype)
|
|
180
177
|
|
|
181
178
|
else
|
|
182
|
-
|
|
179
|
+
raise "Unknown section #{header.name}"
|
|
183
180
|
|
|
184
181
|
end
|
|
185
182
|
end
|
data/lib/bcl/core_ext.rb
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
######################################################################
|
|
2
|
-
# Copyright (c) 2008-
|
|
2
|
+
# Copyright (c) 2008-2019, Alliance for Sustainable Energy.
|
|
3
3
|
# All rights reserved.
|
|
4
4
|
#
|
|
5
5
|
# This library is free software; you can redistribute it and/or
|
|
@@ -19,28 +19,29 @@
|
|
|
19
19
|
|
|
20
20
|
class String
|
|
21
21
|
def to_underscore
|
|
22
|
-
gsub('OpenStudio','Openstudio')
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
22
|
+
gsub('OpenStudio', 'Openstudio')
|
|
23
|
+
.gsub('EnergyPlus', 'Energyplus')
|
|
24
|
+
.gsub(/::/, '/')
|
|
25
|
+
.gsub(/([A-Z]+)([A-Z][a-z])/, '\1_\2')
|
|
26
|
+
.gsub(/([a-z\d])([A-Z])/, '\1_\2')
|
|
27
|
+
.tr('-', '_')
|
|
28
|
+
.tr(' ', '_')
|
|
29
|
+
.squeeze('_')
|
|
30
|
+
.downcase
|
|
31
31
|
end
|
|
32
32
|
|
|
33
33
|
def to_bool
|
|
34
|
-
return true if self == true || self =~
|
|
35
|
-
return false if self == false || self =~
|
|
36
|
-
|
|
34
|
+
return true if self == true || self =~ /(true|t|yes|y|1)$/i
|
|
35
|
+
return false if self == false || self =~ /(false|f|no|n|0)$/i
|
|
36
|
+
|
|
37
|
+
raise "invalid value for Boolean: '#{self}'"
|
|
37
38
|
end
|
|
38
39
|
|
|
39
40
|
# simple method to create titles -- very custom to catch known inflections
|
|
40
41
|
def titleize
|
|
41
|
-
arr =
|
|
42
|
-
upcase_arr =
|
|
43
|
-
r =
|
|
42
|
+
arr = ['a', 'an', 'the', 'by', 'to']
|
|
43
|
+
upcase_arr = ['DX', 'EDA', 'AEDG', 'LPD', 'COP']
|
|
44
|
+
r = tr('_', ' ').gsub(/\w+/) do |match|
|
|
44
45
|
match_result = match
|
|
45
46
|
if upcase_arr.include?(match.upcase)
|
|
46
47
|
match_result = upcase_arr[upcase_arr.index(match.upcase)]
|
data/lib/bcl/master_taxonomy.rb
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
######################################################################
|
|
2
|
-
# Copyright (c) 2008-
|
|
2
|
+
# Copyright (c) 2008-2019, Alliance for Sustainable Energy.
|
|
3
3
|
# All rights reserved.
|
|
4
4
|
#
|
|
5
5
|
# This library is free software; you can redistribute it and/or
|
|
@@ -87,9 +87,7 @@ module BCL
|
|
|
87
87
|
|
|
88
88
|
# save the current taxonomy
|
|
89
89
|
def save_as_current_taxonomy(path = nil)
|
|
90
|
-
|
|
91
|
-
path = current_taxonomy_path
|
|
92
|
-
end
|
|
90
|
+
path ||= current_taxonomy_path
|
|
93
91
|
puts "Saving current taxonomy to #{path}"
|
|
94
92
|
# this is really not JSON... it is a persisted format of ruby
|
|
95
93
|
File.open(path, 'w') do |file|
|
|
@@ -132,9 +130,9 @@ module BCL
|
|
|
132
130
|
# sort the terms as they come out
|
|
133
131
|
result = terms.uniq
|
|
134
132
|
if !@sort_alphabetical
|
|
135
|
-
result = result.
|
|
133
|
+
result = result.sort_by(&:row)
|
|
136
134
|
else
|
|
137
|
-
result = result.
|
|
135
|
+
result = result.sort_by(&:name)
|
|
138
136
|
end
|
|
139
137
|
|
|
140
138
|
result
|
|
@@ -206,7 +204,7 @@ module BCL
|
|
|
206
204
|
# check header
|
|
207
205
|
header_error = validate_terms_header(terms_worksheet)
|
|
208
206
|
if header_error
|
|
209
|
-
|
|
207
|
+
raise 'Header Error on Terms Worksheet'
|
|
210
208
|
end
|
|
211
209
|
|
|
212
210
|
# add root tag
|
|
@@ -283,7 +281,7 @@ module BCL
|
|
|
283
281
|
else
|
|
284
282
|
unless terms_worksheet.Columns(col).Rows(2).Value == test_arr[col - 1]['name']
|
|
285
283
|
if test_arr[col - 1]['strict']
|
|
286
|
-
|
|
284
|
+
raise "[ERROR] Header does not match: #{col}: '#{terms_worksheet.Columns(col).Rows(2).Value} <> #{test_arr[col - 1]['name']}'"
|
|
287
285
|
else
|
|
288
286
|
puts "[WARNING] Header does not match: #{col}: '#{terms_worksheet.Columns(col).Rows(2).Value} <> #{test_arr[col - 1]['name']}'"
|
|
289
287
|
end
|
|
@@ -388,7 +386,7 @@ module BCL
|
|
|
388
386
|
|
|
389
387
|
def sort_tag(tag)
|
|
390
388
|
# tag.terms = tag.terms.sort {|x, y| x.level_hierarchy <=> y.level_hierarchy}
|
|
391
|
-
tag.child_tags = tag.child_tags.
|
|
389
|
+
tag.child_tags = tag.child_tags.sort_by(&:level_hierarchy)
|
|
392
390
|
tag.child_tags.each { |child_tag| sort_tag(child_tag) }
|
|
393
391
|
|
|
394
392
|
# tag.terms = tag.terms.sort {|x, y| x.name <=> y.name}
|
|
@@ -436,13 +434,13 @@ module BCL
|
|
|
436
434
|
end
|
|
437
435
|
|
|
438
436
|
unless term.data_type.nil?
|
|
439
|
-
valid_types =
|
|
437
|
+
valid_types = ['double', 'integer', 'enum', 'file', 'string', 'autocomplete']
|
|
440
438
|
if (term.data_type.downcase != term.data_type) || !valid_types.include?(term.data_type)
|
|
441
439
|
puts "[ERROR] Term '#{term.name}' does not have a valid data type with '#{term.data_type}'"
|
|
442
440
|
end
|
|
443
441
|
|
|
444
|
-
if term.data_type.
|
|
445
|
-
if term.enums.nil? || term.enums == '' || term.enums.
|
|
442
|
+
if term.data_type.casecmp('enum').zero?
|
|
443
|
+
if term.enums.nil? || term.enums == '' || term.enums.casecmp('no enum found').zero?
|
|
446
444
|
puts "[ERROR] Term '#{term.name}' does not have valid enumerations"
|
|
447
445
|
end
|
|
448
446
|
end
|
|
@@ -460,7 +458,7 @@ module BCL
|
|
|
460
458
|
# write term to xml
|
|
461
459
|
def write_terms_to_xml(tag, xml, output_type)
|
|
462
460
|
terms = get_terms(tag)
|
|
463
|
-
|
|
461
|
+
unless terms.empty?
|
|
464
462
|
terms.each do |term|
|
|
465
463
|
xml.term do
|
|
466
464
|
xml.name term.name
|
|
@@ -516,7 +514,7 @@ module BCL
|
|
|
516
514
|
|
|
517
515
|
level += 1
|
|
518
516
|
|
|
519
|
-
if tag.child_tags.
|
|
517
|
+
if tag.child_tags.empty?
|
|
520
518
|
write_terms_to_xml(tag, xml, output_type)
|
|
521
519
|
end
|
|
522
520
|
|
data/lib/bcl/tar_ball.rb
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
######################################################################
|
|
2
|
-
# Copyright (c) 2008-
|
|
2
|
+
# Copyright (c) 2008-2019, Alliance for Sustainable Energy.
|
|
3
3
|
# All rights reserved.
|
|
4
4
|
#
|
|
5
5
|
# This library is free software; you can redistribute it and/or
|
data/lib/bcl/version.rb
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
######################################################################
|
|
2
|
-
# Copyright (c) 2008-
|
|
2
|
+
# Copyright (c) 2008-2019, Alliance for Sustainable Energy.
|
|
3
3
|
# All rights reserved.
|
|
4
4
|
#
|
|
5
5
|
# This library is free software; you can redistribute it and/or
|
|
@@ -18,5 +18,5 @@
|
|
|
18
18
|
######################################################################
|
|
19
19
|
|
|
20
20
|
module BCL
|
|
21
|
-
VERSION = '0.5.
|
|
21
|
+
VERSION = '0.5.9'.freeze
|
|
22
22
|
end
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
@@ -0,0 +1,81 @@
|
|
|
1
|
+
<?xml version="1.0" encoding="UTF-8"?>
|
|
2
|
+
<component xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="schema.xsd">
|
|
3
|
+
<name>Asphalt Shingles - 1/8 in.</name>
|
|
4
|
+
<uid>c32e4780-c88c-012f-b24b-0026b9d40ccf</uid>
|
|
5
|
+
<version_id>65bae990-7926-0130-b658-0026b9d40ccf</version_id>
|
|
6
|
+
<description>Material from a data set created from ASHRAE HOF 2005 and ASHRAE 90.1-2004 Appendix A</description>
|
|
7
|
+
<modeler_description>3.0</modeler_description>
|
|
8
|
+
<provenances>
|
|
9
|
+
<provenance>
|
|
10
|
+
<author>aparker</author>
|
|
11
|
+
<datetime>2012-09-26</datetime>
|
|
12
|
+
<comment>From EnergyPlus 7.1 DataSet ASHRAE_2005_HOF_Materials.idf; Dataset was created from ASHRAE Handbook of Fundamentals, 2005, Chapter 25, Table 4.</comment>
|
|
13
|
+
</provenance>
|
|
14
|
+
</provenances>
|
|
15
|
+
<tags>
|
|
16
|
+
<tag>Material.Opaque.Roofing</tag>
|
|
17
|
+
</tags>
|
|
18
|
+
<attributes>
|
|
19
|
+
<attribute>
|
|
20
|
+
<name>Category</name>
|
|
21
|
+
<value>Shingles</value>
|
|
22
|
+
<datatype>string</datatype>
|
|
23
|
+
</attribute>
|
|
24
|
+
<attribute>
|
|
25
|
+
<name>Thickness</name>
|
|
26
|
+
<value>3.175</value>
|
|
27
|
+
<datatype>float</datatype>
|
|
28
|
+
<units>mm</units>
|
|
29
|
+
</attribute>
|
|
30
|
+
<attribute>
|
|
31
|
+
<name>Conductivity</name>
|
|
32
|
+
<value>0.04</value>
|
|
33
|
+
<datatype>float</datatype>
|
|
34
|
+
<units>W/m*K</units>
|
|
35
|
+
</attribute>
|
|
36
|
+
<attribute>
|
|
37
|
+
<name>Resistance</name>
|
|
38
|
+
<value>0.07937499999999999</value>
|
|
39
|
+
<datatype>float</datatype>
|
|
40
|
+
<units>m^2*K/W</units>
|
|
41
|
+
</attribute>
|
|
42
|
+
<attribute>
|
|
43
|
+
<name>Density</name>
|
|
44
|
+
<value>1120.0</value>
|
|
45
|
+
<datatype>float</datatype>
|
|
46
|
+
<units>kg/m^3</units>
|
|
47
|
+
</attribute>
|
|
48
|
+
<attribute>
|
|
49
|
+
<name>Specific Heat</name>
|
|
50
|
+
<value>1260.0</value>
|
|
51
|
+
<datatype>float</datatype>
|
|
52
|
+
<units>J/kg*K</units>
|
|
53
|
+
</attribute>
|
|
54
|
+
<attribute>
|
|
55
|
+
<name>Typical Application</name>
|
|
56
|
+
<value>Exterior Wall</value>
|
|
57
|
+
<datatype>string</datatype>
|
|
58
|
+
</attribute>
|
|
59
|
+
<attribute>
|
|
60
|
+
<name>Typical Application</name>
|
|
61
|
+
<value>Exterior Roof</value>
|
|
62
|
+
<datatype>string</datatype>
|
|
63
|
+
</attribute>
|
|
64
|
+
<attribute>
|
|
65
|
+
<name>Typical Application</name>
|
|
66
|
+
<value>Attic Roof</value>
|
|
67
|
+
<datatype>string</datatype>
|
|
68
|
+
</attribute>
|
|
69
|
+
<attribute>
|
|
70
|
+
<name>OpenStudio Type</name>
|
|
71
|
+
<value>OS:Material</value>
|
|
72
|
+
<datatype>string</datatype>
|
|
73
|
+
</attribute>
|
|
74
|
+
</attributes>
|
|
75
|
+
<source>
|
|
76
|
+
</source>
|
|
77
|
+
<files>
|
|
78
|
+
</files>
|
|
79
|
+
<costs>
|
|
80
|
+
</costs>
|
|
81
|
+
</component>
|
|
Binary file
|
|
@@ -0,0 +1,76 @@
|
|
|
1
|
+
<?xml version="1.0" encoding="UTF-8"?>
|
|
2
|
+
<component xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="schema.xsd">
|
|
3
|
+
<name>Built-up Roofing - 3/8 in.</name>
|
|
4
|
+
<uid>c32853e0-c88c-012f-b247-0026b9d40ccf</uid>
|
|
5
|
+
<version_id>65b7dc50-7926-0130-b654-0026b9d40ccf</version_id>
|
|
6
|
+
<description>Material from a data set created from ASHRAE HOF 2005 and ASHRAE 90.1-2004 Appendix A</description>
|
|
7
|
+
<modeler_description>3.0</modeler_description>
|
|
8
|
+
<provenances>
|
|
9
|
+
<provenance>
|
|
10
|
+
<author>aparker</author>
|
|
11
|
+
<datetime>2012-09-26</datetime>
|
|
12
|
+
<comment>From EnergyPlus 7.1 DataSet ASHRAE_2005_HOF_Materials.idf; Dataset was created from ASHRAE Handbook of Fundamentals, 2005, Chapter 25, Table 4.</comment>
|
|
13
|
+
</provenance>
|
|
14
|
+
</provenances>
|
|
15
|
+
<tags>
|
|
16
|
+
<tag>Material.Opaque.Roofing</tag>
|
|
17
|
+
</tags>
|
|
18
|
+
<attributes>
|
|
19
|
+
<attribute>
|
|
20
|
+
<name>Category</name>
|
|
21
|
+
<value>Built-Up Roofing</value>
|
|
22
|
+
<datatype>string</datatype>
|
|
23
|
+
</attribute>
|
|
24
|
+
<attribute>
|
|
25
|
+
<name>Thickness</name>
|
|
26
|
+
<value>9.524999999999999</value>
|
|
27
|
+
<datatype>float</datatype>
|
|
28
|
+
<units>mm</units>
|
|
29
|
+
</attribute>
|
|
30
|
+
<attribute>
|
|
31
|
+
<name>Conductivity</name>
|
|
32
|
+
<value>0.16</value>
|
|
33
|
+
<datatype>float</datatype>
|
|
34
|
+
<units>W/m*K</units>
|
|
35
|
+
</attribute>
|
|
36
|
+
<attribute>
|
|
37
|
+
<name>Resistance</name>
|
|
38
|
+
<value>0.05953125000000001</value>
|
|
39
|
+
<datatype>float</datatype>
|
|
40
|
+
<units>m^2*K/W</units>
|
|
41
|
+
</attribute>
|
|
42
|
+
<attribute>
|
|
43
|
+
<name>Density</name>
|
|
44
|
+
<value>1120.0</value>
|
|
45
|
+
<datatype>float</datatype>
|
|
46
|
+
<units>kg/m^3</units>
|
|
47
|
+
</attribute>
|
|
48
|
+
<attribute>
|
|
49
|
+
<name>Specific Heat</name>
|
|
50
|
+
<value>1459.9999999999998</value>
|
|
51
|
+
<datatype>float</datatype>
|
|
52
|
+
<units>J/kg*K</units>
|
|
53
|
+
</attribute>
|
|
54
|
+
<attribute>
|
|
55
|
+
<name>Typical Application</name>
|
|
56
|
+
<value>Exterior Roof</value>
|
|
57
|
+
<datatype>string</datatype>
|
|
58
|
+
</attribute>
|
|
59
|
+
<attribute>
|
|
60
|
+
<name>Typical Application</name>
|
|
61
|
+
<value>Attic Roof</value>
|
|
62
|
+
<datatype>string</datatype>
|
|
63
|
+
</attribute>
|
|
64
|
+
<attribute>
|
|
65
|
+
<name>OpenStudio Type</name>
|
|
66
|
+
<value>OS:Material</value>
|
|
67
|
+
<datatype>string</datatype>
|
|
68
|
+
</attribute>
|
|
69
|
+
</attributes>
|
|
70
|
+
<source>
|
|
71
|
+
</source>
|
|
72
|
+
<files>
|
|
73
|
+
</files>
|
|
74
|
+
<costs>
|
|
75
|
+
</costs>
|
|
76
|
+
</component>
|
|
Binary file
|
|
@@ -0,0 +1,76 @@
|
|
|
1
|
+
<?xml version="1.0" encoding="UTF-8"?>
|
|
2
|
+
<component xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="schema.xsd">
|
|
3
|
+
<name>Metal Surface - 1/16 in.</name>
|
|
4
|
+
<uid>c32baf60-c88c-012f-b249-0026b9d40ccf</uid>
|
|
5
|
+
<version_id>65b962f0-7926-0130-b656-0026b9d40ccf</version_id>
|
|
6
|
+
<description>Material from a data set created from ASHRAE HOF 2005 and ASHRAE 90.1-2004 Appendix A</description>
|
|
7
|
+
<modeler_description>3.0</modeler_description>
|
|
8
|
+
<provenances>
|
|
9
|
+
<provenance>
|
|
10
|
+
<author>aparker</author>
|
|
11
|
+
<datetime>2012-09-26</datetime>
|
|
12
|
+
<comment>From EnergyPlus 7.1 DataSet ASHRAE_2005_HOF_Materials.idf; Dataset was created from ASHRAE Handbook of Fundamentals, 2005, Chapter 25, Table 4.</comment>
|
|
13
|
+
</provenance>
|
|
14
|
+
</provenances>
|
|
15
|
+
<tags>
|
|
16
|
+
<tag>Material.Opaque.Roofing</tag>
|
|
17
|
+
</tags>
|
|
18
|
+
<attributes>
|
|
19
|
+
<attribute>
|
|
20
|
+
<name>Category</name>
|
|
21
|
+
<value>Metal Roofing</value>
|
|
22
|
+
<datatype>string</datatype>
|
|
23
|
+
</attribute>
|
|
24
|
+
<attribute>
|
|
25
|
+
<name>Thickness</name>
|
|
26
|
+
<value>1.5875</value>
|
|
27
|
+
<datatype>float</datatype>
|
|
28
|
+
<units>mm</units>
|
|
29
|
+
</attribute>
|
|
30
|
+
<attribute>
|
|
31
|
+
<name>Conductivity</name>
|
|
32
|
+
<value>45.28000000000001</value>
|
|
33
|
+
<datatype>float</datatype>
|
|
34
|
+
<units>W/m*K</units>
|
|
35
|
+
</attribute>
|
|
36
|
+
<attribute>
|
|
37
|
+
<name>Resistance</name>
|
|
38
|
+
<value>3.505962897526502e-05</value>
|
|
39
|
+
<datatype>float</datatype>
|
|
40
|
+
<units>m^2*K/W</units>
|
|
41
|
+
</attribute>
|
|
42
|
+
<attribute>
|
|
43
|
+
<name>Density</name>
|
|
44
|
+
<value>7824.0</value>
|
|
45
|
+
<datatype>float</datatype>
|
|
46
|
+
<units>kg/m^3</units>
|
|
47
|
+
</attribute>
|
|
48
|
+
<attribute>
|
|
49
|
+
<name>Specific Heat</name>
|
|
50
|
+
<value>499.99999999999994</value>
|
|
51
|
+
<datatype>float</datatype>
|
|
52
|
+
<units>J/kg*K</units>
|
|
53
|
+
</attribute>
|
|
54
|
+
<attribute>
|
|
55
|
+
<name>Typical Application</name>
|
|
56
|
+
<value>Exterior Roof</value>
|
|
57
|
+
<datatype>string</datatype>
|
|
58
|
+
</attribute>
|
|
59
|
+
<attribute>
|
|
60
|
+
<name>Typical Application</name>
|
|
61
|
+
<value>Attic Roof</value>
|
|
62
|
+
<datatype>string</datatype>
|
|
63
|
+
</attribute>
|
|
64
|
+
<attribute>
|
|
65
|
+
<name>OpenStudio Type</name>
|
|
66
|
+
<value>OS:Material</value>
|
|
67
|
+
<datatype>string</datatype>
|
|
68
|
+
</attribute>
|
|
69
|
+
</attributes>
|
|
70
|
+
<source>
|
|
71
|
+
</source>
|
|
72
|
+
<files>
|
|
73
|
+
</files>
|
|
74
|
+
<costs>
|
|
75
|
+
</costs>
|
|
76
|
+
</component>
|