public static double PNAtoBotCG(double bft, double tft, double D, double tw, double bfb, double tfb) { area = NCProperties.BeamArea(bft, tft, D, tw, bfb, tfb); PNA = NCProperties.PlastNeutralAxis(bft, tft, D, tw, bfb, tfb); PCGbot = (bfb * tfb * (PNA - tfb / 2) + tw * Math.Pow(PNA - tfb, 2) / 2) * 2 / area; return(PCGbot); }
public static double PNAtoTopCG(double bft, double tft, double D, double tw, double bfb, double tfb) { area = NCProperties.BeamArea(bft, tft, D, tw, bfb, tfb); PNA = NCProperties.PlastNeutralAxis(bft, tft, D, tw, bfb, tfb); PCGtop = (bft * tft * (tft / 2 + D + tfb - PNA) + tw * Math.Pow(D - PNA + tfb, 2) / 2) * 2 / area; return(PCGtop); }
public static double ElastSectModBot(double bft, double tft, double D, double tw, double bfb, double tfb) { Ybf = NCProperties.PartCG(0, 0, tfb); NA = NCProperties.NeutralAxis(bft, tft, D, tw, bfb, tfb); I = NCProperties.MomentOfIneria(bft, tft, D, tw, bfb, tfb); Sbot = I / (NA - Ybf + tfb / 2); return(Sbot); }
public static double ElastSectModTop(double bft, double tft, double D, double tw, double bfb, double tfb) { Ytf = NCProperties.PartCG(tfb, D, tft); NA = NCProperties.NeutralAxis(bft, tft, D, tw, bfb, tfb); I = NCProperties.MomentOfIneria(bft, tft, D, tw, bfb, tfb); Stop = I / (Ytf - NA + tft / 2); return(Stop); }
public static double BeamArea(double bft, double tft, double D, double tw, double bfb, double tfb) { Atf = NCProperties.PartArea(bft, tft); Aweb = NCProperties.PartArea(D, tw); Abf = NCProperties.PartArea(bfb, tfb); area = Atf + Aweb + Abf; return(area); }
public static double ElastSectModBot(double bft, double tft, double D, double tw, double bfb, double tfb, double bslab, double tslab, double n, double Asteel1, double Asteel2, double distSteel1, double distSteel2, double haunchDepth, double haunchWidth) { Ybf = NCProperties.PartCG(0, 0, tfb); NA = CompProperties.NeutralAxis(bft, tft, D, tw, bfb, tfb, bslab, tslab, n, Asteel1, Asteel2, distSteel1, distSteel2, haunchDepth, haunchWidth); I = CompProperties.MomentOfIneria(bft, tft, D, tw, bfb, tfb, bslab, tslab, n, Asteel1, Asteel2, distSteel1, distSteel2, haunchDepth, haunchWidth); Sbot = I / (NA - Ybf + tfb / 2); return(Sbot); }
public static double PlastSectMod(double bft, double tft, double D, double tw, double bfb, double tfb) { area = NCProperties.BeamArea(bft, tft, D, tw, bfb, tfb); PNA = NCProperties.PlastNeutralAxis(bft, tft, D, tw, bfb, tfb); PCGtop = NCProperties.PNAtoTopCG(bft, tft, D, tw, bfb, tfb); PCGbot = NCProperties.PNAtoBotCG(bft, tft, D, tw, bfb, tfb); Z = area / 2 * (PCGtop + PCGbot); return(Z); }
public static double NeutralAxis(double bft, double tft, double D, double tw, double bfb, double tfb) { Atf = NCProperties.PartArea(bft, tft); Aweb = NCProperties.PartArea(D, tw); Abf = NCProperties.PartArea(bfb, tfb); Ytf = NCProperties.PartCG(tfb, D, tft); Yweb = NCProperties.PartCG(tfb, 0, D); Ybf = NCProperties.PartCG(0, 0, tfb); NA = (Atf * Ytf + Aweb * Yweb + Abf * Ybf) / (Atf + Aweb + Abf); return(NA); }
public static double MomentOfIneria(double bft, double tft, double D, double tw, double bfb, double tfb) { Atf = NCProperties.PartArea(bft, tft); Aweb = NCProperties.PartArea(D, tw); Abf = NCProperties.PartArea(bfb, tfb); Ytf = NCProperties.PartCG(tfb, D, tft); Yweb = NCProperties.PartCG(tfb, 0, D); Ybf = NCProperties.PartCG(0, 0, tfb); NA = NCProperties.NeutralAxis(bft, tft, D, tw, bfb, tfb); Itf = NCProperties.PartMomOfInert(bft, tft); Iweb = NCProperties.PartMomOfInert(tw, D); Ibf = NCProperties.PartMomOfInert(bfb, tfb); I = Itf + Atf * Math.Pow(Ytf - NA, 2) + Iweb + Aweb * Math.Pow(Yweb - NA, 2) + Ibf + Abf * Math.Pow(Ybf - NA, 2); return(I); }