4.1.1.1.2. CSA o86-19 Glulam Design - Moment
The following functions can be used to check moment for glulam elements.
Contains the code designc clauses
- checkBeamCb(element: BeamColumnGlulamCsa19, useX: bool = True)[source]
Checks Cb, assuming the beam is single span Calculates slenderness ratio according to c.l. 7.5.6.4.3
- Parameters
element (BeamColumnGlulamCsa19) – The beamcolumn element to use for checks.
useX (bool, optional) – A flag that toggles if the x direction is to be used for Cb. The default is True.
- Returns
The Cb factor.
- Return type
float
- checkCb(Leb, d, b)[source]
Calculates slenderness ratio according to c.l. 7.5.6.4.3 Assumes units are all in m or mm.
- Parameters
Leb (float) – The effective length of the section in the direction being checked for bending.
d (float) – The depth of the section in the direction being checked.
b (float) – The width of the section in the direction being checked.
- Returns
The Cb factor.
- Return type
float
- checkGlulamMr(S: float, Fb: float, kzbg: float, kL: float = 1, kx: float = 1, phi=0.9)[source]
Calcualtes Mr for a beam or beam segment according to cl. 7.5.6.5.1
- Parameters
S (float) – The section modulus in mm3.
Fb (float) – The factored bending strength in MPa, this is equal to fb * knet, where knet is the sum of all k factores except for specialty ones.
kzbg (float) – The size factor.
kL (float, optional) – The lateral stability factor. The default is 1.
kx (float, optional) – The curvature factor. The default is 1.
- Returns
Mr in Nm.
- Return type
float
- checkKL(Cb: float, E: float, Fb: float, kse: float = 1, kt: float = 1, kx: float = 1)[source]
Calculates kL, if a beam is not laterally supported along it’s compression flange.
One of three cases is considered, depending on the size of Cb.
Note, Fb = fb (KD * KH * KSb * KT)
C.l., units in MPa.
- Parameters
Cb (float) – The slenderness Factor.
E (float) – The modulus of elasticity in MPa.
Fb (TYPE) – Beam fb factored by knet in MPa.
kse (float, optional) – The service k factor. The default is 1.
kT (TYPE) – DESCRIPTION.
kt (float, optional) – The treatment k factor. The default is 1.
kx (float, optional) – The curvature factor to for the beam. The default is 1.
- checkKzbg(b: float, d: float, LM0: float)[source]
Calculates kzbg according to c.l. 7.5.6.5.
restriction: for multiple piece laminations b may not be the beam width. restriction: LM0 is the length of beam segments between zero moment. If there are many points of inflection, a factor must be applied to each segment.
- Parameters
b (float) – Beam width or widdest beam width for multi-piece laminations.
d (float) – beam depth mm.
LM0 (float) – length of beam segment between points of zero moment, mm.
- checkMrGlulamBeamMultiSpan(element: BeamColumnGlulamCsa19, bmd: DesignDiagram, lateralSupportType: limitstates.design.csa.o86.c19.glulam.SegmentSupportTypes | int = 2, knet: float = 1, useFire: bool = False, kse=1, kt=1, kx=1)[source]
Returns the Mr value for each region of a multiSpanBeam. Regions for Mr are determined using the span lengths for kL, and points of inflection for kzbg.
Assumes the BMD and member have the same units for length.
Regions for kzbg are calculated by finding points of inflection in the bending moment diagram.
Regions for kL are calculated depending on the option selected.
If option 1 is selected, the beam is assumed to be continously laterally supported over the entire beam.
If option 2 is selected, the beam is assumed to be laterally unsupported between supports. In this case the factor ke is taken as 1.92 from table 7.4
If option 3 is selected, then the design propreties will be used to. The user should manually set the attributed Lex, kexB, and lateralSupport in the designpropreties.
- 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 2.
1 will return a beam with continous lateral supported on all segments
2 will return a beam with no continous lateral support, i.e. lateral support only provided at nodes.
3 will use the user define support conditions. The Lx, kexB, and
lateralSupport must be set for each beam segment
knet (float, optional) – The product of all standard k factors, including kd, kse, etc. The default is 1.
useFire (bool, optional) – A toggle that makes the beam use it’s fire section when selected. The default is False, which uses no fire section.
kSE (float, optional) – The service condition factor, used when calculating kC. The default is 1.
kT (float) – The treatment condition factor, used when calculating kC. The default is 1.
- Returns
MrOut (list[float]) – The Mr out for each design segment.
xOut (list[float]) – The length of each design segment - these are either support conditions or points of inflection in the BMD.
kzbgout (list[float]) – The kxbgout for each segment.
kLout (list[float]) – The kL out for each segment..
- checkMrGlulamBeamSimple(element: BeamColumnGlulamCsa19, knet: float = 1, useFire: bool = False, useX=True, kse: float = 1, kt: float = 1) float[source]
Checks the Mr for a single span beamcolumn, where there are not points of inflection in the bending moment diagram. If there are multiple spans, multiple unsupported regions, or or points of inflection, then use
checkMrGlulamBeamMultiSpaninstead. If it is applied to a multi-span beam then it will assume the beam is laterally supported.Mr and kzbg is calculated according to 7.5.6.5, and 7.5.6.5.
kL is calculated according to 7.5.6.4 and 7.5.6.3.1. The support condition is set in the design propreties.
- Parameters
element (BeamColumnGlulamCsa19) – The glulam element to check.
knet (float, optional) – The product of all standard k factors, including kd, kse, etc. The default is 1.
useFire (bool, optional) – A toggle that makes the beam use it’s fire section when selected. The default is False, which uses no fire section.
useX (bool, optional) – A toggle that sets the diretion moment will be checked in. Weak axis bending is currently not supported by limitstates.
- Returns
The output in Nm.
- Return type
Mr