public CrossSection(Project _project, string _name, Shape _shape, MaterialSteel _material, double _height, double _width, double _thicknessFlange, double _thicknessWeb, double _radius) { this.name = _name; this.shape = _shape; this.material = _material; this.height = _height; this.width = _width; this.thicknessFlange = _thicknessFlange; this.thicknessWeb = _thicknessWeb; this.radius = _radius; this.project = _project; _project.crossSections.Add(this); }
static public double CalcDirWebThroat(MaterialSteel materialSteel, double angle, double N) { //The full strenth factor returned is the factor for single fillet welds //In case of double fillet welds take halve of the factor //Calculation is made per 1 mm length piece double angleHalve = angle;//angle NOT halved double beta = materialSteel.beta; double M2 = Project.gammaM2; double fy = materialSteel.fy; double fu = materialSteel.fu; double tuss = (2 * Math.Pow(Math.Cos(angleHalve), 2) + 1); double numerator = Math.Pow(beta, 2) * Math.Pow(M2, 2) * Math.Pow(N, 2) * (Math.Pow(Math.Cos(angleHalve), 2) + 2); double denominator = Math.Pow(fu, 2); double throat = Math.Sqrt(numerator / denominator); return(throat); }
/// <summary> /// Create crosssection only if the cross-section does not exist yet in the project /// </summary> /// <param name="_project"></param> /// <param name="_name"></param> /// <param name="_shape"></param> /// <param name="_material"></param> /// <param name="_height"></param> /// <param name="_width"></param> /// <param name="_thicknessFlange"></param> /// <param name="_thicknessWeb"></param> /// <param name="_radius"></param> /// <returns></returns> public static CrossSection CreateNewOrExisting(Project _project, string _name, Shape _shape, MaterialSteel _material, double _height, double _width, double _thicknessFlange, double _thicknessWeb, double _radius) { double tol = Project.tolerance; CrossSection p = _project.crossSections.Where(a => a.name == _name && a.material == _material).FirstOrDefault(); if (p == null) { p = new CrossSection(_project, _name, _shape, _material, _height, _width, _thicknessFlange, _thicknessWeb, _radius); } return(p); }