public void OpeningCompositeReturnsShearStrengthSpreadsheet() { d = 18.24; t_w = 0.415; t_deck = 2.0; t_fill = 3.25; t_e = 3.25; b_e = 99.0; h_0 = 10.0; a_o = 22.0; A_sn = 9.15; Q_n = 16.46; AiscShapeFactory f = new AiscShapeFactory(); section = f.GetShape("W18X60") as ISectionI; F_y = 50.0; f_cPrime = 4.0; N_studs = 99; N_o = 4.0; e = 0.0; t_r = 0.5; b_r = 2.0; CompositeIBeamWebOpening o = new CompositeIBeamWebOpening(section, b_e, t_fill, t_deck, F_y, f_cPrime, N_studs, Q_n, N_o, a_o, h_0, e, t_r, b_r, Steel.AISC.DeckAtBeamCondition.Parallel, 4.5, 12.0); double phiV_n = o.GetShearStrength(); double refValue = 95.57; double actualTolerance = EvaluateActualTolerance(phiV_n, refValue); Assert.LessOrEqual(actualTolerance, tolerance); }
public static Dictionary <string, object> CompositeIBeamWebOpeningShearStrength(CustomProfile IShape, double b_eff, double h_solid, double h_rib, double F_y, double fc_prime, double N_anchors, double Q_n, double N_o, double a_o, double h_op, double e_op, double t_r, double b_r, string HeadedAnchorDeckCondition = "Perpendicular", double w_rMin = 4.0, double s_r = 12.0, bool IsSingleSideReinforcement = false, double V_u = 0, double M_u = 0) { //Default values double phiV_n = 0; //Calculation logic: ISectionI sectionI = IShape.Section as ISectionI; if (sectionI == null) { throw new Exception("Specified shape type is not supported. Provide I-shape object as inputparameter"); } DeckAtBeamCondition deckCondition; bool IsValidHeadedAnchorDeckCondition = Enum.TryParse(HeadedAnchorDeckCondition, true, out deckCondition); if (IsValidHeadedAnchorDeckCondition == false) { throw new Exception("Headed anchor position and group factor calculation failed. Invalid string provided for HeadedAnchorDeckCondition."); } CompositeIBeamWebOpening op = new CompositeIBeamWebOpening(sectionI, b_eff, h_solid, h_rib, F_y, fc_prime, N_anchors, Q_n, N_o, a_o, h_op, e_op, t_r, b_r, deckCondition, w_rMin, s_r, IsSingleSideReinforcement); phiV_n = op.GetShearStrength(); return(new Dictionary <string, object> { { "phiV_n", phiV_n } }); }
public void OpeningCompositeReturnsShearStrength() { CompositeIBeamWebOpening o = new CompositeIBeamWebOpening(section, b_e, t_fill, t_deck, F_y, f_cPrime, N_studs, Q_n, N_o, a_o, h_0, e, t_r, b_r, Steel.AISC.DeckAtBeamCondition.Parallel, 4.5, 12.0); double phiV_n = o.GetShearStrength(); double refValue = 58.1; double actualTolerance = EvaluateActualTolerance(phiV_n, refValue); Assert.LessOrEqual(actualTolerance, tolerance); }