예제 #1
0
        public NodeCheck()
        {
            side1Length       = inputValues.CreateDoubleCalcValue("Side 1 Length", "l_1", "mm", 100);
            side1Force        = inputValues.CreateDoubleCalcValue("Side 1 force", "F_1", "kN", 100);
            side2Length       = inputValues.CreateDoubleCalcValue("Side 2 Length", "l_2", "mm", 100);
            side2Force        = inputValues.CreateDoubleCalcValue("Side 2 force", "F_2", "kN", 100);
            side3Length       = inputValues.CreateDoubleCalcValue("Side 3 Length", "l_3", "mm", 100);
            side3Force        = inputValues.CreateDoubleCalcValue("Side 3 force", "F_3", "kN", 100);
            nodeWidth         = inputValues.CreateDoubleCalcValue("Node width", "W", "mm", 200);
            cylinderStr       = inputValues.CreateDoubleCalcValue("Cylinder strength", "f_{ck}", "N/mm^2", 35);
            reductionFactor   = outputValues.CreateDoubleCalcValue("Reduction factor", "v'", "", 1);
            cccNodeFactor     = inputValues.CreateDoubleCalcValue("CCC node factor", "k_1", "", 1);
            cctNodeFactor     = inputValues.CreateDoubleCalcValue("CCT node factor", "k_2", "", 0.85);
            cttNodeFactor     = inputValues.CreateDoubleCalcValue("CTT node factor", "k_3", "", 0.75);
            alphaCC           = inputValues.CreateDoubleCalcValue("Coefficient", @"\alpha_{cc}", "", 1);
            concPartialFactor = inputValues.CreateDoubleCalcValue("Partial material factor for concrete", @"\gamma_C", "", 1.15);
            concreteCompStr   = inputValues.CreateDoubleCalcValue("Compressive strength of concrete", "f_{cd}", "N/mm2", 0);

            p3Coords = outputValues.CreateCalcListOfDoubleArrays("Point 3", new List <double[]> {
                new double[] { 0, 0 }
            });
            face1Stress      = outputValues.CreateDoubleCalcValue("Face 1 stress", @"\sigma_1", "N/mm^2", 0);
            face2Stress      = outputValues.CreateDoubleCalcValue("Face 1 stress", @"\sigma_2", "N/mm^2", 0);
            face3Stress      = outputValues.CreateDoubleCalcValue("Face 1 stress", @"\sigma_3", "N/mm^2", 0);
            nodeCompStrength = outputValues.CreateDoubleCalcValue("Node compressive strength", @"\sigma_{Rd,max}", "", 0);
            exp1             = new Formula();
            exp2             = new Formula();
            exp3             = new Formula();

            UpdateCalc();
        }
예제 #2
0
 private void initialise()
 {
     _loads = inputValues.CreateCalcListOfDoubleArrays("Loads (kN) and times (d)", new List <double[]> {
         new double[] { 100, 28 }, new double[] { 500, 90 }, new double[] { 2000, 180 }
     });
     _numberOfSSteps = outputValues.CreateDoubleCalcValue("Steps", "", "", 0);
     concGrade       = inputValues.CreateCalcSelectionList("Concrete grade", "35", new List <string> {
         "30", "35", "40", "45", "50", "60", "70", "80", "90"
     });
     notionalcreepcoeff         = outputValues.CreateDoubleCalcValue("Notional creep coefficient", @"\varphi(t,t_0)", "", 0);
     charCompStr                = outputValues.CreateDoubleCalcValue("Concrete characteristic compressive strength", "f_{ck}", @"N/mm^2", 43);
     meanCompStr                = outputValues.CreateDoubleCalcValue("Concrete mean compressive strength", "f_{cm}", @"N/mm^2", 43);
     relativeHumidity1          = inputValues.CreateDoubleCalcValue("Relative humidity 1", "RH", "", 70);
     relativeHumidity2          = inputValues.CreateDoubleCalcValue("Relative humidity 2", "RH", "", 50);
     relativeHumiditySwitchTime = inputValues.CreateDoubleCalcValue("Relative humidity switch time", "t_{humiditychange}", "d", 80);
     //time0 = inputValues.CreateDoubleCalcValue("Time load applied", "t_0", "days", 28);
     time            = inputValues.CreateDoubleCalcValue("Time", "t", "days", 10000000);
     timeShrinkStart = inputValues.CreateDoubleCalcValue("Shrinkage start", "t_s", "days", 7);
     L              = inputValues.CreateDoubleCalcValue("Length", "L", "mm", 500);
     W              = inputValues.CreateDoubleCalcValue("Width", "W", "mm", 500);
     H              = inputValues.CreateDoubleCalcValue("Height", "H", "mm", 3500);
     Ac             = outputValues.CreateDoubleCalcValue("Cross section area", "A_c", "mm^2", 250000);
     u              = outputValues.CreateDoubleCalcValue("Section perimeter", "u", "mm", 2000);
     creepTimeCoeff = outputValues.CreateDoubleCalcValue("Coefficient for creep with time", @"\beta(t,t_0)", "", 0);
     creepCoeff     = outputValues.CreateDoubleCalcValue("Creep coefficient", @"\varphi_0", "", 0);
     cementType     = inputValues.CreateCalcSelectionList("Cement type", "S", new List <string> {
         "S", "N", "R"
     });
     dryingStrain         = outputValues.CreateDoubleCalcValue("Unrestrained drying strain", @"\epsilon_{cd,0}", "", 0);
     totalShrinkageStrain = outputValues.CreateDoubleCalcValue("Total shrinkage strain", @"\epsilon_{cs}", "", 0);
     totalCreepMovement   = outputValues.CreateDoubleCalcValue("Total creep movement", "", "mm", 0);
     shrinkageMovement    = outputValues.CreateDoubleCalcValue("Shrinkage movement", "", "mm", 0);
     totalMovement        = outputValues.CreateDoubleCalcValue("Total movement", "", "mm", 0); UpdateCalc();
 }
 private void initialise()
 {
     _columnData1 = inputValues.CreateCalcListOfDoubleArrays("List of column data 2: T, H, L1, T1, L2, T2, W, L",
                                                             new List <double[]>
     {
         new double[] { 0, 35000, 1400, 56, 2800, 112, 1000, 1000 },
         new double[] { 112, 35000, 1400, 168, 2800, 224, 800, 800 }
     });
     _columnData2 = inputValues.CreateCalcListOfDoubleArrays("List of column data 1: T, H, L1, T1, L2, T2, W, L",
                                                             new List <double[]>
     {
         new double[] { 0, 35000, 1400, 56, 2800, 112, 1400, 1400 },
         new double[] { 112, 35000, 1400, 168, 2800, 224, 900, 900 }
     });
     concGrade = inputValues.CreateCalcSelectionList("Concrete grade", "35", new List <string> {
         "30", "35", "40", "45", "50", "60", "70", "80", "90"
     });
     notionalcreepcoeff = outputValues.CreateDoubleCalcValue("Notional creep coefficient", @"\varphi(t,t_0)", "", 0);
     charCompStr        = outputValues.CreateDoubleCalcValue("Concrete characteristic compressive strength", "f_{ck}", @"N/mm^2", 43);
     meanCompStr        = outputValues.CreateDoubleCalcValue("Concrete mean compressive strength", "f_{cm}", @"N/mm^2", 43);
     relativeHumidity1  = inputValues.CreateDoubleCalcValue("Relative humidity 1", "RH", "", 70);
     //relativeHumidity2 = inputValues.CreateDoubleCalcValue("Relative humidity 2", "RH", "", 50);
     //relativeHumiditySwitchTime = inputValues.CreateDoubleCalcValue("Relative humidity switch time", "t_{humiditychange}", "d", 80);
     //time0 = inputValues.CreateDoubleCalcValue("Time load applied", "t_0", "days", 28);
     time            = inputValues.CreateDoubleCalcValue("Time", "t", "days", 10000000);
     timeShrinkStart = inputValues.CreateDoubleCalcValue("Shrinkage start", "t_s", "days", 7);
     creepTimeCoeff  = outputValues.CreateDoubleCalcValue("Coefficient for creep with time", @"\beta(t,t_0)", "", 0);
     creepCoeff      = outputValues.CreateDoubleCalcValue("Creep coefficient", @"\varphi_0", "", 0);
     cementType      = inputValues.CreateCalcSelectionList("Cement type", "S", new List <string> {
         "S", "N", "R"
     });
     dryingStrain         = outputValues.CreateDoubleCalcValue("Unrestrained drying strain", @"\epsilon_{cd,0}", "", 0);
     totalShrinkageStrain = outputValues.CreateDoubleCalcValue("Total shrinkage strain", @"\epsilon_{cs}", "", 0);
     totalCreepMovement   = outputValues.CreateDoubleCalcValue("Total creep movement", "", "mm", 0);
     shrinkageMovement    = outputValues.CreateDoubleCalcValue("Shrinkage movement", "", "mm", 0);
     movementLevel        = inputValues.CreateDoubleCalcValue("Calc movement at level", "", "", 1);
     movement1            = outputValues.CreateDoubleCalcValue("Column 1 movement at level", "", "mm", 0);
     movement2            = outputValues.CreateDoubleCalcValue("Column 2 movement at level", "", "mm", 0);
     diffMovement         = outputValues.CreateDoubleCalcValue("Diff movement", "", "mm", 0);
     UpdateCalc();
 }