private void Cuantia_Volumetrica() { int NumEstribo = 0; int pos = 0; pos = cbEstribo.Text.IndexOf('#') + 1; NumEstribo = Convert.ToInt32(cbEstribo.Text.Substring(pos)); if (Seccion.Estribo == null) { } Estribo temp = new Estribo(NumEstribo); if (nudSep.Value > 0) { temp.Separacion = (float)nudSep.Value; } else { temp.Separacion = Seccion.Estribo.Separacion; } Seccion.Estribo = temp; Seccion.Estribo = temp; float FD1, FD2; if (gde == GDE.DMO) { FD1 = 0.20f; FD2 = 0.06f; } else { FD1 = 0.30f; FD2 = 0.09f; } Seccion.Cuanti_Vol(FD1, FD2, 0.04f, 4220); if (Seccion.Shape == TipodeSeccion.Rectangular) { nuCX.Value = Seccion.Estribo.NoRamasV1; nuCY.Value = Seccion.Estribo.NoRamasH1; } if (Seccion.Shape == TipodeSeccion.Tee | Seccion.Shape == TipodeSeccion.L) { nuCX.Value = Seccion.Estribo.NoRamasV1; nuCY.Value = Seccion.Estribo.NoRamasH1; nuCXw.Value = Seccion.Estribo.NoRamasV2; nuCYw.Value = Seccion.Estribo.NoRamasH2; } }
public double Peso_Estribo(Estribo pEstribo, float recubrimiento, int Cantidad) { return(0); }
public void Calc_vol_inex(float r, float FY, GDE gDE) { float FD1, FD2; if (gDE == GDE.DMO) { FD1 = 0.08f; FD2 = 0.08f; } else { FD1 = 0.12f; FD2 = 0.12f; } int pasos; int Indice_min; double s_max, s_min, s_d; double Ast1, Ast2, G_As1, G_As2; float delta = 0.50f; var Num_Ramas_V = new List <int>(); //Numero de ramas en altura del muro para ambos casos de ast var GT_As1 = new List <double>(); //Longitud total de los gancho para As1, bajo cada una de las variaciones de la separacion var GT_As2 = new List <double>(); //Longitud total de los gancho para As1, bajo cada una de las variaciones de la separacion var P_As1 = new List <double>(); //Peso total As1 var P_As2 = new List <double>(); //Peso total As2 var Sep = new List <double>(); Ast1 = 0.71; //Estribo #3 Ast2 = 1.29; //Estribo #4 s_min = 7.5; s_max = gDE == GDE.DMO ? 2 * radio * 100 / 3 : 2 * radio * 100 / 4; G_As1 = 2 * Math.PI * 2 * (radio - r) * 100 + 2 * 14; //Longitud de gancho a 180 de #3 G_As2 = 2 * Math.PI * 2 * (radio - r) * 100 + 2 * 16.7; //Longitud de gancho a 180 de #3 pasos = Convert.ToInt32((s_max - s_min) / delta); s_d = s_min; for (int i = 0; i < pasos; i++) { #region Estribo #3 Estribo = new Estribo(3) //Estribo temporal { Separacion = Convert.ToSingle(s_d) }; Num_Ramas_V.Add(Convert.ToInt32(100 / s_d) + 1); Cuanti_Vol(FD1, FD2, r, FY); GT_As1.Add(Num_Ramas_V.Last() * (G_As1 * Estribo.NoRamasV1)); P_As1.Add(GT_As1.Last() * Ast1 * 7850 / Math.Pow(100, 3)); #endregion Estribo #3 #region Estribo #4 Estribo = new Estribo(4) //Estribo temporal { Separacion = Convert.ToSingle(s_d) }; Cuanti_Vol(FD1, FD2, r, FY); GT_As2.Add(Num_Ramas_V.Last() * (G_As2 * Estribo.NoRamasV1)); P_As2.Add(GT_As2.Last() * Ast2 * 7850 / Math.Pow(100, 3)); #endregion Estribo #4 Sep.Add(s_d); s_d += delta; } if (P_As1.Min() < P_As2.Min()) { Indice_min = P_As1.FindIndex(x => x == P_As1.Min()); Estribo = new Estribo(3) { Separacion = Convert.ToSingle(Sep[Indice_min]) }; } else { Indice_min = P_As2.FindIndex(x => x == P_As2.Min()); Estribo = new Estribo(4) { Separacion = Convert.ToSingle(Sep[Indice_min]) }; } }