public PlateProjectedFromBuiltUpIShape(ISteelMaterial Material, ISectionI SectionI, ISectionRectangular plate, FlexuralCompressionFiberPosition compressionFiberPosition) : base(Material, SectionI, compressionFiberPosition) { this.plate = plate; }
public FlangeOfBuiltUpI(ISteelMaterial Material, ISectionI s, FlexuralCompressionFiberPosition compressionFiberPosition) :base(Material) { this.section = s; double bf=0; double tf=0; switch (compressionFiberPosition) { case FlexuralCompressionFiberPosition.Top: bf = s.b_fTop; tf = s.t_fTop; break; case FlexuralCompressionFiberPosition.Bottom: bf = s.b_fTop; tf = s.t_fTop; break; default: throw new Exception("Compression fiber location different from to or bottom is not supported"); } base.Overhang = bf; base.Thickness = tf; }
public AngleLegProjectedFromBuiltUpIShape(ISteelMaterial Material, ISectionI SectionI, ISectionAngle angle, FlexuralCompressionFiberPosition compressionFiberPosition) : base(Material, SectionI, compressionFiberPosition) { this.angle = angle; }
public ShearMemberBox(ISectionTube section, ISteelMaterial material) { base.material = material; base.t_w = 2.0 * section.t_des; base.h = section.H - 3.0 * section.t_des; }
public BeamCopeBase(double c, double d_c, ISectionI Section, ISteelMaterial Material) { this.c = c; this.d_c = d_c; this.Section = Section; this.Material = Material; }
protected virtual void SetCompactness(ISectionAngle ang, ISteelMaterial Material, AngleOrientation AngleOrientation) { double shortLeg; double longLeg; if (ang.d >= ang.b) { longLeg = ang.d; shortLeg = ang.b; } else { longLeg = ang.b; shortLeg = ang.d; } //make differentiation based on angle orientation if (AngleOrientation == AngleOrientation.LongLegVertical) { FlangeCompactness = new LegOfSingleAngle(Material, shortLeg, ang.t); WebCompactness = new LegOfSingleAngle(Material, longLeg, ang.t); } else { FlangeCompactness = new LegOfSingleAngle(Material, longLeg, ang.t); WebCompactness = new LegOfSingleAngle(Material, shortLeg, ang.t); } }
public WebOfBox(ISteelMaterial Material, ISectionBox sectionBox) :base(Material) { this.SectionBox = sectionBox; ISectionBox s = sectionBox; this.Thickness = s.t_w; }
public DoubleAngleMember(ISectionDoubleAngle Section, ISteelMaterial Material, AngleOrientation AngleOrientation) : base(Section.Angle, Material, AngleOrientation) { }
public ShearMemberGeneral(double h, double t_w, double a, ISteelMaterial material, bool IsTeeShape = false) { this.t_w =t_w ; this.h =h ; this.material=material; this.a = a; this.IsTeeShape = IsTeeShape; }
public AffectedElementInFlexure(SectionRectangular Section, ISteelMaterial Material, ICalcLog CalcLog, bool IsRolled=false) : base(Section, Material, CalcLog) { this.HasHolesInTensionFlange = false; this.A_fg = 0; this.A_fn = 0; this.IsRolled = IsRolled; }
public ShearMemberCircular(double D, double t_nom, bool Is_SAW_member, double L_v, ISteelMaterial material) { this.D= D; this.t_nom= t_nom; this.Is_SAW_member= Is_SAW_member; this.material = material; this.L_v = L_v; }
public WebOfSinglySymI(ISteelMaterial Material, ISectionI SectionI, FlexuralCompressionFiberPosition compressionFiberPosition) :base(Material,SectionI) { this.SectionI = SectionI; this.compressionFiberPosition = compressionFiberPosition; }
public FlangeOfBox(ISteelMaterial Material, ISectionBox SectionBox) :base(Material) { this.SectionBox = SectionBox; ISectionBox s = SectionBox; IsUniformThickness = s.t_f == s.t_w ? true : false; this.Thickness = s.t_f; //why need this? }
public PlateProjectedFromRolledIShape(ISteelMaterial Material, ISectionRectangular s) :base(Material) { double bf = s.H; double tf=s.B; base.Overhang = bf; base.Thickness = tf; }
public OutstandingLegOfAnglesWithContContact(ISteelMaterial Material, ISectionAngle s) :base(Material) { double bf=s.b; double tf=s.t; base.Overhang = bf; base.Thickness = tf; }
public StemOfTee(ISteelMaterial Material, ISectionTee tee) :base(Material) { this.tee = tee; Overhang = tee.d; base.Overhang = Overhang; base.Thickness = tee.t_w; }
public WallOfChs(ISteelMaterial Material, ISectionPipe SectionPipe) :base(Material) { this.SectionPipe = SectionPipe; ISectionPipe s = SectionPipe; double td = s.t_des; this.diameter = s.D; this.Thickness = s.t_des; }
public WebOfChannel(ISteelMaterial Material, ISectionChannel SectionChannel) :base(Material) { this.SectionChannel = SectionChannel; ISectionChannel s = SectionChannel; this.Width = s.d - (2*s.k); if (this.Width<=0) { throw new Exception("Clear web distance cannot be less than or equal to 0"); } this.Thickness = s.t_w; }
public WebOfDoublySymI(ISteelMaterial Material, ISectionI ISectionI) :base(Material) { this.SectionI = ISectionI; ISectionI s = ISectionI; this.Width = s.h_web; if (this.Width<=0) { throw new Exception("Clear web distance cannot be less than or equal to 0"); } this.Thickness = s.t_w; }
public FlangeOfRhs(ISteelMaterial Material, ISectionTube SectionTube, MomentAxis MomentAxis) //double OutsideCornerRadius=-1.0) :base(Material) { this.SectionTube = SectionTube; ISectionTube s = SectionTube; double td = s.t_des; //if (OutsideCornerRadius==-1.0) //{ // this.Width = s.B - 3.0 * td; //} //else //{ // if (OutsideCornerRadius<0) // { // throw new Exception("Invalid RHS corner radius. Must be over 0"); // } // this.Width = s.B - 2.0 * OutsideCornerRadius; //} this.Width = GetFlangeWidth_bf(MomentAxis); this.Thickness = td; }
public FlangeOfChannel(ISteelMaterial Material, ISectionChannel s, ElementLocation location) :base(Material) { double bf=0; double tf=0; switch (location) { case ElementLocation.Top: bf = s.b_f; tf = s.t_f; break; case ElementLocation.Bottom: bf = s.b_f; tf = s.t_f; break; default: throw new Exception("Invalid location is specified for Channel flange"); } base.Overhang = bf; base.Thickness = tf; }
public LegOfSingleAngle(ISteelMaterial Material, ISectionAngle angle, bool LongLegProjecting) :base(Material) { this.angle = angle; double VLeg = angle.d; double HLeg = angle.b; double LongLeg = Math.Max(VLeg, HLeg); double ShortLeg = Math.Min(VLeg, HLeg); if (LongLegProjecting==true) { Overhang = LongLeg; } else { Overhang = ShortLeg; } base.Overhang = Overhang; base.Thickness = angle.t; }
public SteelGeneralSection(ISection Section, ISteelMaterial Material) :base(Material) { this.section = Section; }
public LegOfSingleAngle(ISteelMaterial Material, double Overhang, double Thickness) : base(Material, Overhang, Thickness) { }
public StemOfTee(ISteelMaterial Material, double Overhang, double Thickness) :base(Material,Overhang,Thickness) { }
public FlangeOfChannel(ISteelMaterial Material, double Overhang, double Thickness) :base(Material, Overhang,Thickness) { }
public SteelSectionI(ISectionI Section, ISteelMaterial Material) :base(Material) { this.section = Section; }
public CompactnessBase(ISteelMaterial Material) { this.material = Material; }
public WebOfSinglySymI(ISteelMaterial Material, double Width, double Thickness, FlexuralCompressionFiberPosition compressionFiberPosition) :base(Material,Width,Thickness) { this.compressionFiberPosition = compressionFiberPosition; }
//SteelMaterial mat public ISteelCompressionMember GetCompressionMember(ISection Shape, ISteelMaterial mat, double L_ex, double L_ey, double L_ez, bool IsRolledShape = true) { return GetCompressionMember(Shape, L_ex, L_ey, L_ez, mat.YieldStress, mat.ModulusOfElasticity, IsRolledShape); }
public SteelSectionBase(ISteelMaterial Material) { this.material = Material; }
public WallOfChs(ISteelMaterial Material, double Diameter, double Thickness) : base(Material) { this.diameter = Diameter; this.Thickness = Thickness; }
public WebOfRhs(ISteelMaterial Material, double Depth, double Thickness) : base(Material, Depth, Thickness) { }
public WebOfDoublySymI(ISteelMaterial Material) : base(Material) { }
public AffectedElementInTension(ISection Section, ISteelMaterial Material, ICalcLog CalcLog) : base(Section, Material, CalcLog) { }
public WebOfDoublySymI(ISteelMaterial Material, double Width, double Thickness) : base(Material, Width, Thickness) { }