NANDRAD Data Model Library  Version 2.0
NANDRAD
NANDRAD_WindowGlazingLayer.h
1 /* The NANDRAD data model library.
2 
3  Copyright (c) 2012-today, Institut für Bauklimatik, TU Dresden, Germany
4 
5  Primary authors:
6  Andreas Nicolai <andreas.nicolai -[at]- tu-dresden.de>
7  Anne Paepcke <anne.paepcke -[at]- tu-dresden.de>
8 
9  This library is part of SIM-VICUS (https://github.com/ghorwin/SIM-VICUS)
10 
11  This library is free software: you can redistribute it and/or modify
12  it under the terms of the GNU General Public License as published by
13  the Free Software Foundation, either version 3 of the License, or
14  (at your option) any later version.
15 
16  This library is distributed in the hope that it will be useful,
17  but WITHOUT ANY WARRANTY; without even the implied warranty of
18  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
19  GNU General Public License for more details.
20 */
21 
22 #ifndef NANDRAD_WindowGlazingLayerH
23 #define NANDRAD_WindowGlazingLayerH
24 
25 #include <IBK_Parameter.h>
26 
27 #include "NANDRAD_CodeGenMacros.h"
28 #include "NANDRAD_Constants.h"
29 #include "NANDRAD_LinearSplineParameter.h"
30 
31 namespace NANDRAD {
32 
33 /*! WindowGlazingLayer defines a layer of a glazing system (air or glass). */
35 public:
36 
37  /*! Model types supported by the window model. */
38  enum type_t {
39  T_Gas, // Keyword: Gas 'Gas layer'
40  T_Glass, // Keyword: Glass 'Glass layer'
41  NUM_T
42  };
43 
44  /*! Basic parameters. */
45  enum para_t {
46  /*! Dry density of the material. */
47  P_Thickness, // Keyword: Thickness [m] 'Thickness of the window layer.'
48  /*! Thermal conductivity of the dry material. */
49  P_Conductivity, // Keyword: Conductivity [W/mK] 'Thermal conductivity of the window layer.'
50  /*! Mass density of gas layer. */
51  P_MassDensity, // Keyword: MassDensity [kg/m3] 'Mass density of the fill-in gas.'
52  /*! Height of detailed window (needed for Convection in Cavity). */
53  P_Height, // Keyword: Height [m] 'Height of the detailed window.'
54  /*! Width of detailed window (needed for Convection in Cavity). */
55  P_Width, // Keyword: Width [m] 'Width of the detailed window.'
56  /*! Emissivity of surface facing outside. */
57  P_LongWaveEmissivityInside, // Keyword: LongWaveEmissivityInside [---] 'Emissivity of surface facing outside.'
58  /*! Emissivity of surface facing inside. */
59  P_LongWaveEmissivityOutside,// Keyword: P_LongWaveEmissivityOutside [---] 'Emissivity of surface facing inside.'
60 
61  NUM_P
62  };
63 
64 
65  /*! Enum type with all possible layer spline parameters.*/
66  enum splinePara_t {
67  SP_ShortWaveTransmittance, // Keyword: ShortWaveTransmittance [---] 'Short wave transmittance at outside directed surface.'
68  SP_ShortWaveReflectanceOutside, // Keyword: ShortWaveReflectanceOutside [---] 'Short wave reflectance of surface facing outside.'
69  SP_ShortWaveReflectanceInside, // Keyword: ShortWaveReflectanceInside [---] 'Short wave reflectance of surface facing inside.'
70  SP_Conductivity, // Keyword: Conductivity [W/mK] 'Thermal conductivity of the gas layer.'
71  SP_DynamicViscosity, // Keyword: DynamicViscosity [kg/ms] 'Dynamic viscosity of the gas layer.'
72  SP_HeatCapacity, // Keyword: HeatCapacity [J/kgK] 'Specific heat capacity of the gas layer.'
73  NUM_SP
74  };
75 
76 
77  // *** PUBLIC MEMBER FUNCTIONS ***
78 
79  NANDRAD_READWRITE
80 
81  // *** PUBLIC MEMBER VARIABLES ***
82 
83  type_t m_type = NUM_T; // XML:A:required
84 
85  /*! Unique ID-number for this window layer. */
86  unsigned int m_id = INVALID_ID; // XML:A:required
87 
88  /*! Display name of layer. */
89  std::string m_displayName; // XML:A
90 
91  /*! Basic parameters of the window layer */
92  IBK::Parameter m_para[NUM_P]; // XML:E
93 
94  // Layer Data in LinearSpline
95 
96  LinearSplineParameter m_splinePara[NUM_SP]; // XML:E
97 
98 
99 };
100 
101 } // namespace NANDRAD
102 
103 #endif // NANDRAD_WindowGlazingLayerH
IBK::Parameter m_para[NUM_P]
Basic parameters of the window layer.
WindowGlazingLayer defines a layer of a glazing system (air or glass).
Contains global constants for the Nandrad data model.
type_t
Model types supported by the window model.
Thermal conductivity of the dry material.
Class LinearSplineParameter stores a linear spline curve, the corresponding parameter name and a unit...
unsigned int INVALID_ID
defines an invalid id
Width of detailed window (needed for Convection in Cavity).
Height of detailed window (needed for Convection in Cavity).
unsigned int m_id
Unique ID-number for this window layer.
std::string m_displayName
Display name of layer.
The namespace NANDRAD contains the data model classes that make up the NANDRAD solver input data...
splinePara_t
Enum type with all possible layer spline parameters.