Analysis cases and combinations¶
Two different things, with two different lists of types:
- An analysis case is one way of analysing the model. Its type (
analysis_type) is one of'Linear','NonLinear','Mass','Modal','Spectrum','GeometricNonlinear','Sequence'. - A load combination adds up results. Its type (
combo_type) is one of'LinearSum','Envelope','AbsSum','SRSS','NonLinearCombo'.
'LinearSum' and 'Envelope' are combination types: they are never an analysis_type.
Analysis cases¶
Analysis case: add a linear case from load cases¶
create_load_case already makes a linear analysis case with the same name. To combine
several load cases with factors:
model.create_analysis_case('ULS', 'Linear', {'G': 1.35, 'Q': 1.5})
Analysis case: add a non-linear case¶
Same coefficients, another type:
model.create_analysis_case('NL1', 'NonLinear', {'G': 1.0, 'W': 1.0})
Analysis case: add a mass case, then a modal case, then a spectrum case¶
They chain: the modal case uses a mass case, and the spectrum case uses a modal case and a response spectrum.
model.create_analysis_case('MASS', 'Mass', {'G': 1.0, 'Q': 0.5}) # masses from G + 0.5 Q
model.create_analysis_case('MODAL', 'Modal', num_modes=8, modal_case_id='MASS')
model.create_analysis_case('SEISMIC-Y', 'Spectrum', modal_case_id='MODAL',
spectrum_id='EC8-A', direction='Y') # direction 'X', 'Y' or 'XY'
The spectrum spectrum_id names must exist already (add_spectral_function).
Analysis case: edit¶
Change an analysis case: rename it.
model.rename_analysis_case('ULS', 'ULS-1')
To change its factors, remove it and create it again with the new ones.
Analysis case: remove¶
Delete an analysis case:
model.remove_analysis_case('NL1')
Load combinations¶
Combination: add¶
model.create_load_combination('SLS-ALL', {'G': 1.0, 'Q': 1.0, 'W': 1.0}) # sum, the default type
model.create_load_combination('ENV1', {'G': 1.0, 'Q': 1.0, 'W': 1.0}, combo_type='Envelope')
The keys are case ids as text, or the case objects. "1.35 G + 1.5 Q" is
{'G': 1.35, 'Q': 1.5}.
Combination: add one around a non-linear case¶
'NonLinearCombo' wraps a single non-linear analysis case; it does not add:
model.create_analysis_case('NL2', 'NonLinear', {'W': 1.0})
model.create_load_combination('NLC1', {'NL2': 1.0}, combo_type='NonLinearCombo')
Combination: edit¶
Change a combination: rename it.
model.rename_load_combination('SLS-ALL', 'SLS')
To change its factors, remove it and create it again.
Combination: remove¶
Delete a combination:
model.remove_load_combination('ENV1')
Common mistakes¶
Analysis case: common mistakes¶
create_analysis_case('X', 'LinearSum', ...)or'Envelope'as an analysis type: those are combination types, usecreate_load_combination.- A load case or analysis case that does not exist yet: create it first.
- A modal case without its mass case, or a spectrum case without its modal case.