Exemplo n.º 1
0
        public static Dictionary <string, object> EccentricallyLoadedBasePlateMinimumThickness(BasePlateShapeObject BasePlateShape, double P_u, double M_u, string BendingAxis = "Major", double f_anchor = 14
                                                                                               , string Code = "AISC360-10")
        {
            //Default values
            double t_min = 0;


            Kodestruct.Steel.AISC.BendingAxis axis;
            bool IsValidAxisString = Enum.TryParse(BendingAxis, true, out axis);

            if (IsValidAxisString == false)
            {
                throw new Exception("Failed to convert string. Specify X or Y axis. Please check input");
            }

            //Calculation logic:
            BasePlateEccentricallyLoaded bp = new BasePlateEccentricallyLoaded(BasePlateShape.Plate);

            t_min = bp.GetMinimumThicknessEccentricLoadStrongAxis(P_u, M_u, axis, f_anchor);

            return(new Dictionary <string, object>
            {
                { "t_min", t_min }
            });
        }
Exemplo n.º 2
0
        public void BasePlateSmallMomentReturnsMinimumThickness()
        {
            BasePlateIShape plate           = new BasePlateIShape(19, 19, 12.7, 12.2, 4, 36, 0);
            BasePlateEccentricallyLoaded bp = new BasePlateEccentricallyLoaded(plate);
            double t_pMin          = bp.GetMinimumThicknessEccentricLoadStrongAxis(376.0, 940, BendingAxis.Major, 8.0);
            double refValue        = 1.36;
            double actualTolerance = EvaluateActualTolerance(t_pMin, refValue);

            Assert.LessOrEqual(actualTolerance, tolerance);
        }