4.2.1.2. CSA S16-24 - Steel Design - Bending
The following functions are provided to check compression of an element.
Contains functions for managing sections specific to CSAo86-19
Note, right now all limits are calculated at once BEFORE the
- checkBeamMrSupported(beam: BeamColumnSteelCsa24, useX: bool = True, Cf: float = 0)[source]
Calcualtes Mr for a supported member in Nm. For laterally supported members, Mr is calculated the same way for HSS and W sections. The only exception is class 4 sections, which are not supported by limitstates currently.
- Parameters
beam (BeamColumnSteelCsa24) – The beam to check the capacity of.
useX (TYPE, optional) – A toggle that activates the X direction. The default is True.
Cf (float, optional) – The factored compression force of the section in N. The default is 0.
- Returns
The capacity of the beam in N*m.
- Return type
float
- checkBeamMrUnsupported(beam: BeamColumnSteelCsa24, omega2: float = 1, Lu: Optional[float] = None, Cf=0)[source]
Calculates Mr for an unsupported W section according to c.l.13.6.1.a. Does not apply to cantilevers. Note that in the weak axis, the unsupported strength is equal to the supported strength For Hss sections, the unsupported results are the same as the supported results.
For loads applied to a top flange, Mu should be calculated with omega = 1 and Lu = 1.2 for simply supported members, and Lu = 1.4 for other member types.
These can be modified by changing the keff factor in the x direction
- Parameters
section (SectionSteel) – A W section.
omega (float, optional) – The moment distribution factor. The default is 1.
Lu (float) – An override for the unbraced length in mm. By defult is none, which will use the design length of the beam in it’s x direction.
- Returns
The capacity of the beam in N*m.
- Return type
float
- checkBeamMrUnsupportedW(beam: BeamColumnSteelCsa24, omega: float = 1, Lu: Optional[float] = None, Cf=0)[source]
Calculates Mr for an unsupported W section according to c.l.13.6.1.a. Does not apply to cantilevers. Note that in the weak axis, the unsupported strength is equal to the supported strength
For loads applied to a top flange, Mu can be calculated with omega = 1 and Lu = 1.2 for simply supported members, and Lu = 1.4 for other member types. The user should set the length of the beam
These can be modified by changing the keff factor in the x direction
- Parameters
section (SectionSteel) – A W section.
omega (float, optional) – The moment distribution factor. The default is 1.
Lu (float) – An override for the unbraced length in mm. By defult is none, which will use the design length of the beam in it’s x direction.
Cf (float, optional) – The factored compression force of the section in N. The default is 0.
- Returns
The capacity of the beam in N*m.
- Return type
float
- checkSectionMu(section: SectionSteel, Lu: float, omega: float)[source]
Calculates Mu, the laterally unsupported buckling moment, as per c.l. 13.6.1.a, assuming length is input in mm.
Returns capacity in N*m
- Parameters
section (SectionSteel) – The steel section to check.
Lu (float) – The input length in mm.
omega (float) – The omega factor to apply to the span..
- Returns
The buckling moment for the beam.
- Return type
float
- classifyFlangeHssSection(section: SectionSteel, useX=True)[source]
Classifys a HSS flange
If useX is toggled true the web is the vertical edge, i.e. height. Otherwise it’s the horizontal edge, i.e. width. Assumes that the section is supported along two edges, and has bending and compression.
see #11.3.2.b. for a definittion of bel
- Parameters
section (SectionSteel) – The steel section to classify.
useX (TYPE, optional) – A toggle that activates the X direction. The default is True.
Cf (float, optional) – The factored compression force of the section in N. The default is 0.
- Returns
The section class.
- Return type
int
- classifyFlangeWSection(section: SectionSteel, useX=True)[source]
Used to classify the flange of a W section.
Class 4 sections are not supported.
- Parameters
section (SectionSteel) – The steel section to check the section class of.
useX (bool, optional) – A flag that specifies if the x axis (strong axis) should be used. The default is True.
- Returns
section class – The flange section class
- Return type
int
- classifySection(section: SectionSteel, useX=True, Cf=0)[source]
Used to classify a section, returning the worst case section class for the flange and web. Currently only applies
Class 4 sections are not supported.
- Parameters
section (SectionSteel) – The steel section to check the section class of.
useX (bool, optional) – A flag that specifies if the x axis (strong axis) should be used. The default is True.
Cf (float, optional) – The force acting on the section in N. The default is 0.
- Returns
section class – The worst case between the section class and web class.
- Return type
int
- classifyWebHssSection(section: SectionSteel, useX=True, Cf: float = 0)[source]
Classifys a HSS web. The web is the portion of hss the which is in both compression and tension.
If useX is toggled true the web is the vertical edge, i.e. height. Otherwise it’s the horizontal edge, i.e. width. Assumes that the section is supported along two edges, and has bending and compression.
see #11.3.2.c. for a definittion of h
- Parameters
section (SectionSteel) – The section to classify.
useX (bool, optional) – A toggle that activates the X direction. The default is True.
Cf (float, optional) – The factored compression force of the section in N. The default is 0.
- Returns
The section class.
- Return type
int
- classifyWebWSection(section: SectionSteel, useX=True, Cf: float = 0)[source]
Used to classify a W section’s web. See #11.3.2.c.
Class 4 sections are not supported.
- Parameters
section (SectionSteel) – The steel section to check the section class of.
useX (bool, optional) – A flag that specifies if the x axis (strong axis) should be used. The default is True.
Cf (float, optional) – The force acting on the section in N. The default is 0.
- Returns
section class – The web section class.
- Return type
int
- getOmega1FromDesignDiagram(bmd: DesignDiagram)[source]
Returns the value of Omega1 from a bending moment diagram per c.l. 13.8.6. Assumes that the input bending moment diagram is for a single span.
Linear interoplation is used to determing the y values used in the omega equation.
- Parameters
bmd (DesignDiagram) – The bending moment diagram to check for Omega.
- Returns
The output value of omega.
- Return type
float
The following act on multispan beams specifically:
Contains functions for managing sections specific to CSAo86-19
Note, right now all limits are calculated at once BEFORE the
- class SegmentSupportTypes(value)[source]
- Options for multispan design checks:
If option 1 is selected, the beam is assumed to be continously laterally supported over the entire beam. Note, Mr is the same for each segment.
If option 2 is selected, the beam is assumed to be laterally unsupported between supports. In this case, it is assumed the load is applied to the compression flange, and torsional fixity is provided at each support. For W sections, the length is increased by 1.4 per c.l. 13.6.1.
If option 3 is selected, then the design propreties will be used to. The user should manually set the attributed Lx, kx, and lateralSupport in the designpropreties. Note, in this case Lx should be the actual length (Not a design length), and kx should be the effective lenght factor.
- checkMrBeamMultiSpan(element: BeamColumnSteelCsa24, bmd: Optional[DesignDiagram] = None, lateralSupportType: limitstates.design.csa.s16.c24.beamColumn.SegmentSupportTypes | int = 3)[source]
Returns the Mr value for each region of a multiSpanBeam. Each span is given a value for Mr.
The beam is assumed to bend about it’s strong axis.
Assumes the BMD and member have the same units for length. The designer must judge the torsional support conditions provided and select an option as per below:
1, the beam is assumed to be continously laterally supported over the entire beam. Where there are regions of siginficant negative bending, the bottom chord of the stucture must also be continously braced.
2, the beam is assumed to be laterally unsupported between supports, the load is applied to the at the shear center, and torsional fixity is provided at each support. Omega is calculated per the BMD.
3, the beam is assumed to be laterally unsupported between supports, the load is applied to the top chord, and torsional fixity is provided at each support. For W sections, the length is increased by 1.4 per c.l. 13.6.1., and omega is set to be equal to one.
4, The user should manually set the attributed Lx, kx, and lateralSupportin the designpropreties. Note, in this case Lx should be the actual length (Not a design length), and kx should be the effective lenght factor. Lu = Lx * kx
- Parameters
element (BeamColumnGlulamCsa19) – The multi-span element to check.
bmd (DesignDiagram) – The bending moment diagram for the load case to be checked.
lateralSupportType (SegmentSupportTypes | int, optional) –
The type of lateral support condition for bending. The default is 3:
1 will return a beam lateral restraint on all segments
2 will return a beam with no lateral restraint except at supports
3 will return a beam with no lateral restraint except at supports, and load applied at the top flange.
4 will use the user define support conditions. The Lx, kex, and
lateralSupport must be set for each beam segment
- Returns
MrOut (list[float]) – The Mr out for each design segment.
xOut (list[float]) – The breakpoints for the beam, including the end of the beam. Moment applies, i.e.
Mr = MrOut[0] from 0 to xOut[0]
Mr = MrOut[1] from xOut[0] to xOut[1]
omega (list[float]) – The omega factor for each span.