public static double WarpingConstant(this ISectionProfile profile) { if (profile.IsNull()) { return(0); } double width = profile.Width; double height = profile.Height; double tf = profile.FlangeThickness; double tw = profile.WebThickness; return(tf * Math.Pow(height - tf, 2) * Math.Pow(width, 3) / 24); }
public static double TorsionalConstant(this ISectionProfile profile) { if (profile.IsNull()) { return(0); } double b = profile.Width; double h = profile.Height; double tf = profile.FlangeThickness; double tw = profile.WebThickness; double r = profile.RootRadius; double alpha = AlphaTJunction(tw, tf, r); double D = InscribedDiameterTJunction(tw, tf, r); return((2 * b * Math.Pow(tf, 3) + (h - 2 * tf) * Math.Pow(tw, 3)) / 3 + 2 * alpha * Math.Pow(D, 4) - 0.42 * Math.Pow(tf, 4)); }