Beispiel #1
0
        private void CalculateValuesBasic()
        {
            this.Rebar1Diameter = Bar1.Diameter;
            this.Rebar2Diameter = Bar2.Diameter;
            DevelopmentTension td1 = new DevelopmentTension(Concrete, Bar1,MeetsRebarSpacingAndEdgeDistance,IsTopRebar,1.0,true, Log);
            DevelopmentTension td2 = new DevelopmentTension(Concrete, Bar2, MeetsRebarSpacingAndEdgeDistance, IsTopRebar, 1.0, true, Log);

            this.Rebar1DevelopmentLength = td1.GetTensionDevelopmentLength(HasMinimumTransverseReinforcement);
            this.Rebar2DevelopmentLength = td2.GetTensionDevelopmentLength(HasMinimumTransverseReinforcement);
        }
        private void CalculateValuesBasic()
        {
            this.Rebar1Diameter = Bar1.Diameter;
            this.Rebar2Diameter = Bar2.Diameter;
            DevelopmentTension td1 = new DevelopmentTension(Concrete, Bar1, MeetsRebarSpacingAndEdgeDistance, IsTopRebar, 1.0, true, Log);
            DevelopmentTension td2 = new DevelopmentTension(Concrete, Bar2, MeetsRebarSpacingAndEdgeDistance, IsTopRebar, 1.0, true, Log);

            this.Rebar1DevelopmentLength = td1.GetTensionDevelopmentLength(HasMinimumTransverseReinforcement);
            this.Rebar2DevelopmentLength = td2.GetTensionDevelopmentLength(HasMinimumTransverseReinforcement);
        }
        private void CalculateValuesDetailed()
        {
            this.Rebar1Diameter = Bar1.Diameter;
            this.Rebar2Diameter = Bar2.Diameter;
            DevelopmentTension td1 = new DevelopmentTension(Concrete, Bar1, ClearSpacing, ClearCover, IsTopRebar, 1.0, true, Log);
            DevelopmentTension td2 = new DevelopmentTension(Concrete, Bar2, ClearSpacing, ClearCover, IsTopRebar, 1.0, true, Log);

            this.Rebar1DevelopmentLength = td1.GetTensionDevelopmentLength(A_tr, s_tr, n);
            this.Rebar2DevelopmentLength = td2.GetTensionDevelopmentLength(A_tr, s_tr, n);
        }
        public static Dictionary<string, object> StraightBarTensionDevelopmentLengthDetailed(Concrete.ACI318.General.Concrete.ConcreteMaterial ConcreteMaterial, double d_b, 
            RebarMaterial RebarMaterial, string RebarCoatingType, string RebarCastingPosition, double ExcessRebarRatio, double s_clear, double c_c,
            double A_tr, double s_tr, double n, string Code = "ACI318-14")
        {
            //Default values
            double l_d = 0;


            //Calculation logic:
            IRebarMaterial mat = RebarMaterial.Material;

            bool IsEpoxyCoated = false;
            switch (RebarCoatingType)
            {
                case "Uncoated": IsEpoxyCoated = false; break;
                case "EpoxyCoated": IsEpoxyCoated = true; break;

                default: throw new Exception("Unrecognized rebar coating. Please check string input"); break;
            }

            Rebar rebar = new Rebar(d_b, IsEpoxyCoated, mat);


            bool IsTopRebar = false;
            switch (RebarCastingPosition)
            {
                case "Other": IsTopRebar = false; break;
                case "Top": IsTopRebar = true; break;

                default: throw new Exception("Unrecognized rebar casting position. Please check string input"); break;
            }

            CalcLog log = new CalcLog();

            DevelopmentTension d = new DevelopmentTension(ConcreteMaterial.Concrete,rebar,s_clear,c_c,IsTopRebar,ExcessRebarRatio,true,log);
            l_d = d.GetTensionDevelopmentLength(A_tr,s_tr,n);


            return new Dictionary<string, object>
            {
                { "l_d", l_d }
 
            };
        }
Beispiel #5
0
        private void CalculateValuesDetailed()
        {
            this.Rebar1Diameter = Bar1.Diameter;
            this.Rebar2Diameter = Bar2.Diameter;
            DevelopmentTension td1 = new DevelopmentTension(Concrete, Bar1, ClearSpacing, ClearCover, IsTopRebar, 1.0, true, Log);
            DevelopmentTension td2 = new DevelopmentTension(Concrete, Bar2, ClearSpacing, ClearCover, IsTopRebar, 1.0, true, Log);

            this.Rebar1DevelopmentLength = td1.GetTensionDevelopmentLength(A_tr,s_tr,n);
            this.Rebar2DevelopmentLength = td2.GetTensionDevelopmentLength(A_tr, s_tr, n);
        }
        public static Dictionary<string, object> StraightBarTensionDevelopmentLengthBasic(Concrete.ACI318.General.Concrete.ConcreteMaterial ConcreteMaterial, double d_b, 
            Concrete.ACI318.General.Reinforcement.RebarMaterial RebarMaterial,
            string RebarCoatingType, string RebarCastingPosition, double ExcessRebarRatio, bool MeetsRebarSpacingAndEdgeDistance,
            bool HasMinimumTransverseReinforcement = false, string Code = "ACI318-14")
        {
            //Default values
            double l_d = 0;


            //Calculation logic:

            IRebarMaterial mat = RebarMaterial.Material;
            
            bool IsEpoxyCoated = false;
            switch (RebarCoatingType)
            {
                case "Uncoated"   :  IsEpoxyCoated= false; break;
                case "EpoxyCoated":  IsEpoxyCoated=true; break;

                default: throw new Exception("Unrecognized rebar coating. Please check string input"); break;
            }

            Rebar rebar = new Rebar(d_b, IsEpoxyCoated, mat);
            

            bool IsTopRebar = false;
            switch (RebarCastingPosition)
            {
                case "Other"   :  IsTopRebar= false; break;
                case "Top":  IsTopRebar=true; break;

                default: throw new Exception("Unrecognized rebar casting position. Please check string input"); break;
            }

            CalcLog log = new CalcLog();

            DevelopmentTension d = new DevelopmentTension(ConcreteMaterial.Concrete, rebar, MeetsRebarSpacingAndEdgeDistance, IsTopRebar, ExcessRebarRatio, true, log);
            l_d = d.GetTensionDevelopmentLength(HasMinimumTransverseReinforcement);

            return new Dictionary<string, object>
            {
                { "l_d", l_d }
 
            };
        }