public ConcreteSectionOneWayShearNonPrestressed GetConcreteOneWayShearBeam(double Width, double Height, double fc, double d, bool IsLightWeight) { IConcreteSection Section = GetRectangularSection(Width, Height, fc,IsLightWeight); ConcreteSectionOneWayShearNonPrestressed beam = new ConcreteSectionOneWayShearNonPrestressed(d,Section); return beam; }
public static Dictionary<string, object> OneWayShearStrengthProvidedByConcrete(Concrete.ACI318.General.Concrete.ConcreteMaterial ConcreteMaterial, double b_w, double d, double h, double N_u = 0.0, double rho_w = 0.0, double M_u = 0.0, double V_u = 0.0, string Code = "ACI318-14") { //Default values double phiV_c = 0; //Calculation logic: IConcreteMaterial mat = ConcreteMaterial.Concrete; CrossSectionRectangularShape shape = new CrossSectionRectangularShape(mat,null, b_w, h); ConcreteSectionOneWayShearNonPrestressed section = new ConcreteSectionOneWayShearNonPrestressed(d,shape); phiV_c = section.GetConcreteShearStrength(N_u, rho_w, M_u, V_u)/1000.0; //default ACI units are psi. Convert to ksi, consistent with Dynamo nodes return new Dictionary<string, object> { { "phiV_c", phiV_c } }; }
public static Dictionary<string, object> UpperLimitOnShearStrength(Concrete.ACI318.General.Concrete.ConcreteMaterial ConcreteMaterial, double b_w, double d, double phiV_c, string Code = "ACI318-14") { //Default values double phiV_nMax = 0; //Calculation logic: IConcreteMaterial mat = ConcreteMaterial.Concrete; CrossSectionRectangularShape shape = new CrossSectionRectangularShape(mat,null, b_w, d); ConcreteSectionOneWayShearNonPrestressed section = new ConcreteSectionOneWayShearNonPrestressed(d,shape); phiV_nMax = section.GetUpperLimitShearStrength(phiV_c*1000.0) / 1000.0; //default ACI units are psi. Convert to ksi, consistent with Dynamo nodes return new Dictionary<string, object> { { "phiV_nMax", phiV_nMax } }; }