예제 #1
0
        public void SectionIRolledReturnsIy()
        {
            SectionIRolled shape           = new SectionIRolled("", 17.7, 6.0, 0.425, 0.3, 0.827);
            double         Iy              = shape.I_y;
            double         refValue        = 15.3;
            double         actualTolerance = EvaluateActualTolerance(Iy, refValue);

            Assert.LessOrEqual(actualTolerance, tolerance);
        }
예제 #2
0
        public void SectionIRolledReturnsIx()
        {
            SectionIRolled shape = new SectionIRolled("", 17.7, 6.0, 0.425, 0.3, 0.827);
            double         Ix    = shape.I_x;
            //Manual gives 510 but actual area checked in Autocad is 540.0505
            double refValue        = 510;
            double actualTolerance = EvaluateActualTolerance(Ix, refValue);

            Assert.LessOrEqual(actualTolerance, tolerance);
        }
예제 #3
0
        public void SectionIRolledReturnsArea()
        {
            SectionIRolled shape    = new SectionIRolled(null, 17.7, 6.0, 0.425, 0.3, 0.827);
            double         A        = shape.A;
            double         refValue = 10.3;
            //Manual gives 10.3 but actual area checked in Autocad is 10.42
            double actualTolerance = EvaluateActualTolerance(A, refValue);

            Assert.LessOrEqual(actualTolerance, tolerance);
        }
        private CompositeBeamSection GetBeamForTests(double SumQ_n)
        {
            double Y_2      = 5;
            double f_cPrime = 4;
            double h_solid  = 3;
            double b_eff;
            double h_rib = 3;

            b_eff = SumQ_n / ((h_rib + h_solid - Y_2) * 2 * 0.85 * f_cPrime);           //Back calculate b_eff to get the round number from AISC manual
            double Y_2T = h_solid - (SumQ_n / (0.85 * f_cPrime * b_eff) / 2.0) + h_rib; //test

            AiscShapeFactory     factory = new AiscShapeFactory();
            ISection             section = factory.GetShape("W18X35", ShapeTypeSteel.IShapeRolled);
            PredefinedSectionI   catI    = section as PredefinedSectionI;
            SectionIRolled       secI    = new SectionIRolled("", catI.d, catI.b_fTop, catI.t_f, catI.t_w, catI.k);
            CompositeBeamSection cs      = new CompositeBeamSection(secI, b_eff, h_solid, h_rib, 50.0, f_cPrime);

            return(cs);
        }
예제 #5
0
        public ISliceableSection GetSliceableSection(string ShapeId, ShapeTypeSteel shapeType)
        {
            ISection          section = this.GetShape(ShapeId, ShapeTypeSteel.IShapeRolled);
            ISliceableSection sec;

            switch (shapeType)
            {
            case ShapeTypeSteel.IShapeRolled:
                PredefinedSectionI catI = section as PredefinedSectionI;
                sec = new SectionIRolled("", catI.d, catI.b_fTop, catI.t_f, catI.t_w, catI.k);
                break;

            case ShapeTypeSteel.IShapeBuiltUp:
                throw new ShapeTypeNotSupportedException("ISliceableSection property ");
                break;

            case ShapeTypeSteel.Channel:
                throw new ShapeTypeNotSupportedException("ISliceableSection property ");
                break;

            case ShapeTypeSteel.Angle:
                throw new ShapeTypeNotSupportedException("ISliceableSection property ");
                break;

            case ShapeTypeSteel.TeeRolled:
                throw new ShapeTypeNotSupportedException("ISliceableSection property ");
                break;

            case ShapeTypeSteel.TeeBuiltUp:
                throw new ShapeTypeNotSupportedException("ISliceableSection property ");
                break;

            case ShapeTypeSteel.DoubleAngle:
                throw new ShapeTypeNotSupportedException("ISliceableSection property ");
                break;

            case ShapeTypeSteel.CircularHSS:
                throw new ShapeTypeNotSupportedException("ISliceableSection property ");
                break;

            case ShapeTypeSteel.RectangularHSS:
                throw new ShapeTypeNotSupportedException("ISliceableSection property ");
                break;

            case ShapeTypeSteel.Box:
                throw new ShapeTypeNotSupportedException("ISliceableSection property ");
                break;

            case ShapeTypeSteel.Rectangular:
                throw new ShapeTypeNotSupportedException("ISliceableSection property ");
                break;

            case ShapeTypeSteel.Circular:
                throw new ShapeTypeNotSupportedException("ISliceableSection property ");
                break;

            case ShapeTypeSteel.IShapeAsym:
                throw new ShapeTypeNotSupportedException("ISliceableSection property ");
                break;

            default:
                throw new ShapeTypeNotSupportedException("ISliceableSection property ");
                break;
            }

            return(sec);
        }
예제 #6
0
        public ISliceableSection GetSliceableShape()
        {
            SectionIRolled secI = new SectionIRolled("", this.d, this.bf, this.t_f, this.t_w, this._k);

            return(secI);
        }