pycba.load_cases.LoadCase#
- class LoadCase(name, loads=<factory>, loaded_spans=(), metadata=None)[source]#
Bases:
objectNeutral load-case definition for independent full-beam analyses.
loadsare ordinary PyCBA load-matrix rows. Span numbers inside each load row therefore remain 1-based, matchingBeamAnalysis.loaded_spansis stored as 0-based indices for convenient Python use.Methods
Append a full-span UDL of intensity
wto every span.Append an imposed-curvature load to this load case.
Append one raw PyCBA load-matrix row.
Append a concentrated moment load to this load case.
Append a point load to this load case.
Append a partial UDL to this load case.
Append a UDL covering a global beam segment from
x0tox1.Append a full-span or partial trapezoidal load to this load case.
Append a full-span UDL to this load case.
Return a copy of this load case's PyCBA load matrix.
Attributes
loaded_spansmetadatanameloads- to_LM()[source]#
Return a copy of this load case’s PyCBA load matrix.
- Return type:
List[List[Union[int,float]]]
- add_segment_udl(beam_model, x0, x1, w)[source]#
Append a UDL covering a global beam segment from
x0tox1.- Return type:
- add_all_spans_udl(beam_model, w)[source]#
Append a full-span UDL of intensity
wto every span.This replaces the hand-written
for i in range(1, no_spans + 1): case.add_udl(i, w)loop. The span count is read frombeam_model, which is required here (mirroringadd_segment_udl()).- Parameters:
beam_model (
Union[BeamAnalysis,Beam]) – The beam definition used to count spans.w (
float) – UDL intensity applied to every span.
- Returns:
self, for fluent chaining.- Return type:
Notes
This adds all spans into the one (this) load case, unlike
LoadCases.add_span_udl(), which creates one separate case per span.