Analysis Module
Structural analysis calculators for section properties and beam analysis.
Section Properties Calculator
Calculate geometric and section properties of structural members using finite element analysis.
Section Properties Calculator for StructEngine v2
Calculate geometric properties of structural sections using sectionproperties library. Supports standard steel sections, custom sections, and compound sections.
- class api.app.calculators.analysis.section_properties.SectionPropertiesInput(**data)[source]
Bases:
BaseModelInput schema for section properties calculation.
- model_config: ClassVar[ConfigDict] = {}
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- class api.app.calculators.analysis.section_properties.SectionPropertiesOutput(**data)[source]
Bases:
BaseModelOutput schema for section properties results.
-
inputs:
SectionPropertiesInput
- model_config: ClassVar[ConfigDict] = {}
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
-
inputs:
- class api.app.calculators.analysis.section_properties.SectionPropertiesCalculator[source]
Bases:
BaseCalculatorCalculator for section properties using sectionproperties library.
- __init__()[source]
Initialize the calculator.
- Parameters:
calculator_type – Type identifier for the calculator
version – Calculator version
- property input_schema: Type[BaseModel]
Return the Pydantic input schema for section properties calculation.
- Returns:
- SectionPropertiesInput schema class defining required
and optional parameters for section analysis
- Return type:
Type[BaseModel]
Beam Analysis Calculator
Analyze beams for deflection, bending moments, and shear forces under various loading conditions.
Enhanced Beam Analysis Calculator for StructEngine v2 Supports both determinate and indeterminate beams using IndeterminateBeam library Follows IS 456:2000 and IS 800:2007 standards
Note
- The ‘moment’ load type in API/frontend is mapped to PointTorque in the indeterminatebeam backend.
This ensures that applied moments in the UI/API are correctly handled as point torques in analysis.
- class api.app.calculators.analysis.beam_analysis.SupportType(*values)[source]
Bases:
EnumSupport types as per structural analysis conventions
- PINNED = 'pinned'
- ROLLER = 'roller'
- FIXED = 'fixed'
- FREE = 'free'
- class api.app.calculators.analysis.beam_analysis.LoadType(*values)[source]
Bases:
EnumLoad types for beam analysis
- POINT = 'point'
- DISTRIBUTED = 'distributed'
- MOMENT = 'moment'
- class api.app.calculators.analysis.beam_analysis.BeamAnalysisInput(**data)[source]
Bases:
BaseModelInput schema for beam analysis
- validate_advanced_mode_requirements()[source]
Validate that required fields are provided when advanced features are enabled.
Conditional requirements: - If mode=’advanced’ and deflection_analysis=True: require elastic_modulus and moment_of_inertia - If include_self_weight=True: require density and area - Basic mode: no material/section property requirements (uses equilibrium only)
- Return type:
- model_config: ClassVar[ConfigDict] = {}
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- class api.app.calculators.analysis.beam_analysis.BeamAnalysisOutput(**data)[source]
Bases:
BaseModelOutput schema for beam analysis
- model_config: ClassVar[ConfigDict] = {}
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- class api.app.calculators.analysis.beam_analysis.BeamAnalysisCalculator[source]
Bases:
BaseCalculatorEnhanced Beam Analysis Calculator for StructEngine v2 Supports both statically determinate and indeterminate beams Complies with IS 456:2000 and IS 800:2007 standards
- __init__()[source]
Initialize the calculator.
- Parameters:
calculator_type – Type identifier for the calculator
version – Calculator version
- calculate(inputs)[source]
Perform comprehensive beam analysis using IndeterminateBeam library Supports both determinate and indeterminate beams
Boundary conversion architecture: - INPUT: Accepts kN, kN/m, kN·m from API → converts to N, N/m, N·m internally - PROCESSING: All calculations use SI units (N, N/m, N·m) for indeterminatebeam - OUTPUT: Converts N, N/m, N·m → kN, kN/m, kN·m before returning