public void ColumnDistributedInteractionReturnsSPCOL_Nominal0() { double b = 16; double h = 16; double f_c = 5000; List <RebarPoint> LongitudinalBars = new List <RebarPoint>(); FlexuralSectionFactory flexureFactory = new FlexuralSectionFactory(); CompressionSectionFactory compressionFactory = new CompressionSectionFactory(); IConcreteMaterial mat = GetConcreteMaterial(f_c); IRebarMaterial rebarMat = new MaterialAstmA615(A615Grade.Grade60); ConcreteSectionFlexure flexureMember = flexureFactory.GetRectangularSectionFourSidesDistributed(b, h, 4.0, 0, 2.5, 2.5, mat, rebarMat, ConfinementReinforcementType.Ties, 1); ConcreteSectionCompression col = compressionFactory.GetCompressionMemberFromFlexuralSection(flexureMember, CompressionMemberType.NonPrestressedWithTies); double P = 1440 * 1000; double refValue = 43 * 12 * 1000; //from SP column software double M_n = col.GetNominalMomentResult(P, FlexuralCompressionFiberPosition.Top).Moment; double phiM_n_KipFt = M_n / 1000.0 / 12.0; double actualTolerance = EvaluateActualTolerance(M_n, refValue); Assert.True(actualTolerance <= tolerance); }
public void ShearFrictionReturnsValue() { IConcreteMaterial matC = GetConcreteMaterial(4000, false); IRebarMaterial m = new MaterialAstmA615(A615Grade.Grade60); double A_c = 720.0; double A_v = 4.84; ConcreteSectionShearFriction sec = new ConcreteSectionShearFriction(ACI.Entities.ShearAndTorsion.ShearFrictionSurfaceType.HardenedNonRoughenedConcrete, matC, A_c, m, A_v, 90, 0); double phiV_n = sec.GetShearFrictionStrength() / 1000.0; //convert back to ksi units double refValue = 130.68; double actualTolerance = EvaluateActualTolerance(phiV_n, refValue); Assert.True(actualTolerance <= tolerance); }
public ConcreteSectionCompression GetConcreteExampleColumnWithDistributed() { double b = 16; double h = 16; double f_c = 5000; List <RebarPoint> LongitudinalBars = new List <RebarPoint>(); FlexuralSectionFactory flexureFactory = new FlexuralSectionFactory(); CompressionSectionFactory compressionFactory = new CompressionSectionFactory(); IConcreteMaterial mat = GetConcreteMaterial(f_c); IRebarMaterial rebarMat = new MaterialAstmA615(A615Grade.Grade60); ConcreteSectionFlexure flexureMember = flexureFactory.GetRectangularSectionFourSidesDistributed(b, h, 4, 0, 2.5, 2.5, mat, rebarMat); ConcreteSectionCompression column = compressionFactory.GetCompressionMember(flexureMember, CompressionMemberType.NonPrestressedWithTies); return(column); }