Exemplo n.º 1
0
        //beknopte versie:
        /// <summary>
        /// Berekent de overlappingslengte van de gekozen staaf,
        /// naar boven afgerond naar 50 of 100,
        /// alle alpha factoren staan op de meest ongunstige waarde
        /// </summary>
        /// <param name="staafDiameter">Diameter van de te berekenen staaf</param>
        /// <param name="betonKwaliteit">Betonkwaliteit van het object</param>
        /// <param name="aanhechtingsOmstandigheden">Goede aanhechtingsomstandigheden = true, slechte aanhechtingsomstandigheden = false</param>
        public static double Overlappingslengte(int staafDiameter, string betonKwaliteit, bool aanhechtingsOmstandigheden)
        {
            double alpha1 = 1.0;

            // alpha 2: uitgangspunt is rechte staven
            double alpha2 = 1.0;

            // alpha 3: Uitgangspunt is 1.0 ivm complexiteit berekening lamda
            double alpha3 = 1.0;

            // alpha 5: uitgangspunt is 1.0 omdat de constructeur hier ook geen rekening mee houd
            double alpha5 = 1.0;

            // alpha 6: uitgangspunt is 1.5 omdat er niet voorspeld kan worden waar de overlappen komen te liggen.
            double alpha6 = 1.5;

            var basisverankeringslengte = Verankeringslengteberekening.BasisVerankeringslengte(staafDiameter, betonKwaliteit, aanhechtingsOmstandigheden);

            var minimaleOverlappingslengte = MinimaleOverlappingslengte(staafDiameter, betonKwaliteit, aanhechtingsOmstandigheden);

            double overlappingslengte        = Math.Max(alpha1 * alpha2 * alpha3 * alpha5 * alpha6 * basisverankeringslengte, minimaleOverlappingslengte);
            int    overlappingslengteRounded = AfrondenNaar50of100(overlappingslengte);

            return(overlappingslengteRounded);
        }
Exemplo n.º 2
0
        /// <summary>
        /// Berekent de minimale overlappingslengte van de gekozen staaf
        /// </summary>
        /// <param name="staafDiameter">Diameter van de te berekenen staaf</param>
        /// <param name="betonKwaliteit">Betonkwaliteit van het object</param>
        /// <param name="aanhechtingsOmstandigheden">Goede aanhechtingsomstandigheden = true, slechte aanhechtingsomstandigheden = false</param>
        public static double MinimaleOverlappingslengte(int staafDiameter, string betonKwaliteit, bool aanhechtingsOmstandigheden)
        {
            // alpha 6: uitgangspunt is 1.5 omdat er niet voorspeld kan worden waar de overlappen komen te liggen.
            double alpha6 = 1.5;

            var basisverankeringslengte = Verankeringslengteberekening.BasisVerankeringslengte(staafDiameter, betonKwaliteit, aanhechtingsOmstandigheden);

            double minimaleOverlappingslengte = Math.Max(0.3 * alpha6 * basisverankeringslengte, Math.Max(15 * staafDiameter, 200));

            return(minimaleOverlappingslengte);
        }
Exemplo n.º 3
0
        /// <summary>
        /// Berekent de overlappingslengte van de gekozen staaf,
        /// naar boven afgerond naar 50 of 100,
        /// alpha 2 is hierin variabel
        /// </summary>
        /// <param name="staafDiameter">Diameter van de te berekenen staaf</param>
        /// <param name="betonKwaliteit">Betonkwaliteit van het object</param>
        /// <param name="aanhechtingsOmstandigheden">Goede aanhechtingsomstandigheden = true, slechte aanhechtingsomstandigheden = false</param>
        /// <param name="hohMaat">De HOH maat van de wapening</param>
        /// <param name="staafDiameter">De diameter van de wapening</param>
        /// <param name="staafDekkingHorizontaal">De afstand vanaf het dichtstbijzijnde horizontale betonoppervlak tot de staaf, 1e laag: dekking, 2e laag: dekking + Ø 1e laag</param>
        /// <param name="staafDekkingVerticaal">De afstand vanaf het dichtsbijzijnde verticale betonoppervlak tot de staaf, 1e laag: dekking, 2e laag: dekking + Ø 1e laag</param>
        public static double Overlappingslengte(int staafDiameter, string betonKwaliteit, bool aanhechtingsOmstandigheden, double hohMaat, double staafDekkingVerticaal, double staafDekkingHorizontaal /*, AardGeometrie aardGeometrie*/)
        {
            // alpha 1: uitgangspunt is rechte staven
            double alpha1 = 1.0;

            // alpha 2: uitgangspunt is rechte staven
            double a = hohMaat - staafDiameter;

            double cd     = Math.Min(a / 2, Math.Min(staafDekkingVerticaal, staafDekkingHorizontaal));
            double alpha2 = 1 - (0.15 * (cd - staafDiameter) / staafDiameter);

            if (alpha2 < 0.7)
            {
                alpha2 = 0.7;
            }
            else if (alpha2 > 1)
            {
                alpha2 = 1;
            }

            // alpha 3: Uitgangspunt is 1.0 ivm complexiteit berekening lamda
            double alpha3 = 1.0;
            ////alpha 3 berekening
            //double k;
            //if (aardGeometrie == AardGeometrie.BALK)
            //{
            //    k = 0.1;
            //}
            //else if(aardGeometrie == AardGeometrie.PLAAT)
            //{
            //    k = 0;
            //}
            //double alpha3 = 1 - k*lamda

            // alpha 5: uitgangspunt is 1.0 omdat de constructeur hier ook geen rekening mee houd
            double alpha5 = 1.0;

            // alpha 6: uitgangspunt is 1.5 omdat er niet voorspeld kan worden waar de overlappen komen te liggen.
            double alpha6 = 1.5;

            var basisverankeringslengte    = Verankeringslengteberekening.BasisVerankeringslengte(staafDiameter, betonKwaliteit, aanhechtingsOmstandigheden);
            var minimaleOverlappingslengte = MinimaleOverlappingslengte(staafDiameter, betonKwaliteit, aanhechtingsOmstandigheden);

            double overlappingslengte        = Math.Max(alpha1 * alpha2 * alpha3 * alpha5 * alpha6 * basisverankeringslengte, minimaleOverlappingslengte);
            int    overlappingslengteRounded = AfrondenNaar50of100(overlappingslengte);

            return(overlappingslengteRounded);
        }