// // Steel // // DesignSect="Program Determined"/FSEC1/... // // Fy=0/32 // // (Reduced Live Load Factor)RLLF=0/11 // // (Net Area to Total Area ratio)AreaRatio=0/10 // // (Unbraced length ratios) XLMajor=0/12 XLMinor=0/13 XLLTB=0/14 // // (Effective length)K1Major=0/15 K1Minor=0/16 K2Major=0/17 K2Minor=0/18 KLTB=0/41 // // CheckDefl="Program Determined"/Yes/No // // DeflType="Program Determined"/Both/Ratio/Absolute // // (Ratio, L/)DLRat=0/1 SDLAndLLRat=0/2 LLRat=0/400 TotalRat=0/500 NetRat=0/3 // // (Absolute) DLAbs=0/4 SDLAndLLAbs=0/5 LLAbs=0/6 TotalAbs=0/7 NetAbs=0/8 // // (Specified Camber)SpecCamber=0/9 // // DCLimit=0/40 private static SteelDesignOverwrite setOverwritesSteelBasic(Model model, Dictionary <string, string> tableRow) { SteelDesignOverwrite overwrite = new SteelDesignOverwrite { DesignSection = getNullableFrameSection(model, tableRow["DesignSect"]), Fy = Adaptor.toDouble(tableRow["Fy"]), RLLF = Adaptor.toDouble(tableRow["RLLF"]), AreaRatio = Adaptor.toDouble(tableRow["AreaRatio"]), XLMajor = Adaptor.toDouble(tableRow["XLMajor"]), XLMinor = Adaptor.toDouble(tableRow["XLMinor"]), XLLTB = Adaptor.toDouble(tableRow["XLLTB"]), K1Major = getNullableDouble(tableRow, "K1Major"), K1Minor = getNullableDouble(tableRow, "K1Minor"), K2Major = getNullableDouble(tableRow, "K2Major"), K2Minor = getNullableDouble(tableRow, "K2Minor"), KLTB = Adaptor.toDouble(tableRow["KLTB"]), IsDeflectionConsidered = getNullableYesNo(tableRow["CheckDefl"]), DeflectionCheckType = getNullableEnum <SteelDesignOverwrite.DeflectionCheckTypes>(tableRow["DeflType"]), RatioDL = Adaptor.toDouble(tableRow["DLRat"]), RatioSDLAndLL = Adaptor.toDouble(tableRow["SDLAndLLRat"]), RatioLL = Adaptor.toDouble(tableRow["LLRat"]), RatioTotal = Adaptor.toDouble(tableRow["TotalRat"]), RatioNet = Adaptor.toDouble(tableRow["NetRat"]), AbsoluteDL = Adaptor.toDouble(tableRow["DLAbs"]), AbsoluteSDLAndLL = Adaptor.toDouble(tableRow["SDLAndLLAbs"]), AbsoluteLL = Adaptor.toDouble(tableRow["LLAbs"]), AbsoluteTotal = Adaptor.toDouble(tableRow["TotalAbs"]), AbsoluteNet = Adaptor.toDouble(tableRow["NetAbs"]), SpecifiedCamber = Adaptor.toDouble(tableRow["SpecCamber"]), DemandCapacityRatioLimit = Adaptor.toDouble(tableRow["DCLimit"]) }; return(overwrite); }
//TABLE: "OVERWRITES - STEEL DESIGN - NZS 3404-1997" // Frame=39 DesignSect="Program Determined" FrameType="Program Determined" Fy=0 RLLF=0 AreaRatio=0 // SteelType="Program Determined" // XLMajor=0 XLMinor=0 XLLTB=0 // keMajor=0 keMinor=0 keSwayMajor=0 keSwayMinor=0 // ktLTB=0 krLTB=0 klLTB=0 // CmMajor=0 CmMinor=0 // Alpham=0 Alphas=0 Kf=0 KtAxial=0 DbMajor=0 DbMinor=0 DsMajor=0 DsMinor=0 Ns=0 Nt=0 Ms3=0 Ms2=0 Mb=0 Vv2=0 Vv3=0 // CheckDefl="Program Determined" // DeflType="Program Determined" DLRat=0 SDLAndLLRat=0 LLRat=0 TotalRat=0 NetRat=0 DLAbs=0 SDLAndLLAbs=0 LLAbs=0 TotalAbs=0 NetAbs=0 SpecCamber=0 DCLimit=0 // Frame=40 DesignSect="Program Determined" FrameType="Program Determined" Fy=0 RLLF=0 AreaRatio=0 SteelType="Program Determined" XLMajor=0 XLMinor=0 XLLTB=0 keMajor=0 keMinor=0 keSwayMajor=0 keSwayMinor=0 _ // ktLTB = 0 krLTB=0 klLTB=0 CmMajor=0 CmMinor=0 Alpham=0 Alphas=0 Kf=0 KtAxial=0 DbMajor=0 DbMinor=0 DsMajor=0 DsMinor=0 Ns=0 Nt=0 Ms3=0 Ms2=0 Mb=0 Vv2=0 Vv3=0 CheckDefl=Yes _ // DeflType="Program Determined" DLRat=0 SDLAndLLRat=0 LLRat=400 TotalRat=500 NetRat=0 DLAbs=0 SDLAndLLAbs=0 LLAbs=0 TotalAbs=0 NetAbs=0 SpecCamber=0 DCLimit=0 // TABLE: "OVERWRITES - STEEL DESIGN - NZS 3404-1997" // // FrameType="Program Determined"/"Moment Frame" // // SteelType="Program Determined"/"Hot Finished" // // (Twist Restraint Factor)ktLTB=0/19 // // (Lateral Rotation Restraint Factor)krLTB=0/20 // // (Load Height Factor for LTB)klLTB=0/21 // // (Moment Modification Factor)Alpham=0/24 // // (Slenderness Reduction Factor)Alphas=0/25 // // (Form Factor)Kf=0/30 // // (Axial Capacity Correction Factor)KtAxial=0/31 // // (Nonsway/sway Moment Factors)DbMajor=0/26 DbMinor=0/27 DsMajor=0/28 DsMinor=0/29 // // (Moment Coefficient) CmMajor=0/22 CmMinor=0/23 // // (Capacities)Ns=0/33 Nt=0/34 Ms3=0/35 Ms2=0/36 Mb=0/37 Vv2=0/38 Vv3=0/39 private static void setOVERWRITES_STEEL_DESIGN_NZS_3404_1997(Model model, List <Dictionary <string, string> > table) { foreach (Frame frame in model.Structure.Frames) { NZS_3404_1997_Overwrites overwrite = frame.FrameDesignOverwrites.SteelDesignOverwrite.GetItem <NZS_3404_1997_Overwrites>(); Dictionary <string, string> tableRow = setOverwritesSteelBasic(frame); SteelDesignOverwrite steelDesignOverwrite = frame.FrameDesignOverwrites.SteelDesignOverwrite.GenericOverwrites; tableRow.Remove("K1Major"); if (steelDesignOverwrite.K1Major.HasValue) { tableRow["keMajor"] = Adaptor.fromDouble(steelDesignOverwrite.K1Major.Value); } tableRow.Remove("K1Minor"); if (steelDesignOverwrite.K1Minor.HasValue) { tableRow["keMinor"] = Adaptor.fromDouble(steelDesignOverwrite.K1Minor.Value); } tableRow.Remove("K2Major"); if (steelDesignOverwrite.K2Major.HasValue) { tableRow["keSwayMajor"] = Adaptor.fromDouble(steelDesignOverwrite.K2Major.Value); } tableRow.Remove("K2Minor"); if (steelDesignOverwrite.K2Minor.HasValue) { tableRow["keSwayMinor"] = Adaptor.fromDouble(steelDesignOverwrite.K2Minor.Value); } tableRow["FrameType"] = getNullableEnum(overwrite.FrameType); tableRow["SteelType"] = getNullableEnum(overwrite.SteelType); tableRow["CmMajor"] = Adaptor.fromDouble(overwrite.CmMajor); tableRow["CmMinor"] = Adaptor.fromDouble(overwrite.CmMinor); tableRow["ktLTB"] = Adaptor.fromDouble(overwrite.ktLTB); tableRow["krLTB"] = Adaptor.fromDouble(overwrite.krLTB); tableRow["klLTB"] = Adaptor.fromDouble(overwrite.klLTB); tableRow["Alpham"] = Adaptor.fromDouble(overwrite.Alpha_m); tableRow["Alphas"] = Adaptor.fromDouble(overwrite.Alpha_s); tableRow["Kf"] = Adaptor.fromDouble(overwrite.Kf); tableRow["KtAxial"] = Adaptor.fromDouble(overwrite.KtAxial); tableRow["DbMajor"] = Adaptor.fromDouble(overwrite.DbMajor); tableRow["DbMinor"] = Adaptor.fromDouble(overwrite.DbMinor); tableRow["DsMajor"] = Adaptor.fromDouble(overwrite.DsMajor); tableRow["DsMinor"] = Adaptor.fromDouble(overwrite.DsMinor); tableRow["Ns"] = Adaptor.fromDouble(overwrite.Ns); tableRow["Nt"] = Adaptor.fromDouble(overwrite.Nt); tableRow["Ms3"] = Adaptor.fromDouble(overwrite.Ms3); tableRow["Ms2"] = Adaptor.fromDouble(overwrite.Ms2); tableRow["Mb"] = Adaptor.fromDouble(overwrite.Mb); tableRow["Vv2"] = Adaptor.fromDouble(overwrite.Vv2); tableRow["Vv3"] = Adaptor.fromDouble(overwrite.Vv3); table.Add(tableRow); } }