Exemplo n.º 1
0
        private static void wallOverallHeatTransferCoefTest()
        {
            //多層壁オブジェクトを作成
            WallLayers wLayers = new WallLayers("熱貫流率計算用多層壁");

            //壁層の素材を作成
            WallMaterial[] materials = new WallMaterial[4];
            //第1層:合板
            materials[0] = new WallMaterial(WallMaterial.PredefinedMaterials.Plywood);
            //第2層:非密閉空気層
            materials[1] = new WallMaterial(WallMaterial.PredefinedMaterials.AirGap);
            //第3層:鉄筋コンクリート
            materials[2] = new WallMaterial(WallMaterial.PredefinedMaterials.ReinforcedConcrete);
            //第4層:漆喰
            materials[3] = new WallMaterial("漆喰", 0.7, 1000);

            //壁の各層を作成
            //合板:20mm
            wLayers.AddLayer(new WallLayers.Layer(materials[0], 0.02));
            //空気層:厚みは関係なし
            wLayers.AddLayer(new WallLayers.Layer(materials[1], 0.01));
            //鉄筋コンクリート:150mm
            wLayers.AddLayer(new WallLayers.Layer(materials[2], 0.15));
            //漆喰:10mm
            wLayers.AddLayer(new WallLayers.Layer(materials[3], 0.01));

            //結果書き出し
            Console.WriteLine("壁層の構成");
            for (uint i = 0; i < wLayers.LayerNumber; i++)
            {
                WallLayers.Layer layer = wLayers.GetLayer(i);
                Console.WriteLine("第" + (i + 1) + "層:" + layer.Material.Name + "(" + layer.Thickness + "m)");
            }
            Console.WriteLine("熱貫流率=" + wLayers.GetThermalTransmission().ToString("F1") + " W/(m2-K)");
            Console.WriteLine();

            //軽量コンクリートに変えてみる
            wLayers.ReplaceLayer(2, new WallLayers.Layer(new WallMaterial(WallMaterial.PredefinedMaterials.LightweightConcrete), 0.15));

            //結果書き出し
            Console.WriteLine("壁層の構成");
            for (uint i = 0; i < wLayers.LayerNumber; i++)
            {
                WallLayers.Layer layer = wLayers.GetLayer(i);
                Console.WriteLine("第" + (i + 1) + "層:" + layer.Material.Name + "(" + layer.Thickness + "m)");
            }
            Console.WriteLine("熱貫流率=" + wLayers.GetThermalTransmission().ToString("F1") + " W/(m2-K)");

            Console.Read();
        }
Exemplo n.º 2
0
        /// <summary>Sample program calculating the thermal transimission of the wall layers</summary>
        private static void wallLayersTest()
        {
            //Create an instance of WallLayers
            WallLayers wLayers = new WallLayers("Sample wall layer");

            //Make an array of materials
            WallMaterial[] materials = new WallMaterial[4];
            //The first layer : plywood
            materials[0] = new WallMaterial(WallMaterial.PredefinedMaterials.Plywood);
            //The second layer : air gap
            materials[1] = new WallMaterial(WallMaterial.PredefinedMaterials.AirGap);
            //The thirg layer : concrete
            materials[2] = new WallMaterial(WallMaterial.PredefinedMaterials.ReinforcedConcrete);
            //The fourth layer : white Wash
            materials[3] = new WallMaterial("White Wash", 0.7, 1000);

            //Add a layer to WallLayers object
            //plywood : 20mm
            wLayers.AddLayer(new WallLayers.Layer(materials[0], 0.02));
            //air gap : heat conductance doesn't depend on thickness
            wLayers.AddLayer(new WallLayers.Layer(materials[1], 0.01));
            //concrete : 150mm
            wLayers.AddLayer(new WallLayers.Layer(materials[2], 0.15));
            //white Wash : 10mm
            wLayers.AddLayer(new WallLayers.Layer(materials[3], 0.01));

            //output result
            Console.WriteLine("Wall composition");
            for (uint i = 0; i < wLayers.LayerNumber; i++)
            {
                WallLayers.Layer layer = wLayers.GetLayer(i);
                Console.WriteLine("Layer " + (i + 1) + ":" + layer.Material.Name + "(" + layer.Thickness + "m)");
            }
            Console.WriteLine("Thermal transmission = " + wLayers.GetThermalTransmission().ToString("F1") + " W/(m2-K)");
            Console.WriteLine();

            //Replace concrete to light weight concrete
            wLayers.ReplaceLayer(2, new WallLayers.Layer(new WallMaterial(WallMaterial.PredefinedMaterials.LightweightConcrete), 0.15));

            //output result
            Console.WriteLine("Wall composition");
            for (uint i = 0; i < wLayers.LayerNumber; i++)
            {
                WallLayers.Layer layer = wLayers.GetLayer(i);
                Console.WriteLine("Layer " + (i + 1) + ":" + layer.Material.Name + "(" + layer.Thickness + "m)");
            }
            Console.WriteLine("Thermal transmission = " + wLayers.GetThermalTransmission().ToString("F1") + " W/(m2-K)");
            Console.WriteLine();

            Console.Read();
        }