Python solvers are server-side calculation engines that perform complex structural analysis tasks including finite element analysis, beam analysis, cross-section calculations, and more. These solvers are accessed through Remote Widgets and provide comprehensive structural engineering calculations.

Overview

Beam Solver

The Beam Solver is the most commonly used solver for 1D structural analysis of beams and columns.

Required Inputs

Most parameters are optional except that enough information must be provided to create a stable structure with:
  • At least one load
  • Both stiffnesses (EI and EA)
  • Length
  • At least 1-2 supports
  • At least one strength load case/combination
  • At least one serviceability load combination

Core Parameters

Support Configuration

Load Inputs

Load Combinations

Load Combination Factors

Beam Solver Outputs

Primary Results Access

All outputs are accessible via remote.X where X is the output label:
remote.gov.M        // Governing moment
remote.gov.V        // Governing shear  
remote.gov.P        // Governing axial
remote.gov.DST      // Short-term deflection
remote.gov.DLT      // Long-term deflection

Plotting Data

Load Linking

Advanced Features

Load Patterning

loadPattern
array of strings
Load types to be patterned (e.g., ["L", "S"])
loadPatternBasis
string
default:"supports"
Pattern basis: "supports", "braces", or "Brace X"

Non-Concurrent Loads

combNonConc
array of mixed array
Expand load types for non-concurrent analysis:
[["Q_dist", 2]]
Creates โ€œQ_dist2โ€ and โ€œQ_dist3โ€ for separate analysis

Unit Conversion

len_convert
scalar
default:"0.001"
Length unit conversion factor
forceUnit
string
Force unit for outputs (must be valid mathjs unit, e.g., โ€˜kNโ€™, โ€˜kipโ€™)
lengthUnit
string
Length unit for outputs (must be valid mathjs unit, e.g., โ€˜mโ€™, โ€˜ftโ€™)

Important Notes

Non-Concurrent Load Cases: For outputs with โ€œbyLCโ€ suffix, non-concurrent load combinations (e.g., โ€œEh2โ€) are added at the END of results. Use LC.str.len for table length, not LCTable.str.len.
Parameter Evolution: Some parameters are deprecated but still functional. New templates should use current parameter formats (e.g., combConc2 instead of combConc).

Best Practices

  • Always provide sufficient boundary conditions for structural stability
  • Use meaningful load case labels that match code requirements
  • Set appropriate units for consistent output formatting
  • Test solver inputs with simple cases before complex implementations
  • Document any special load combination factor requirements
  • Consider performance implications with large numbers of load cases

Other Solvers

Frame Solver

For 2D and 3D frame analysis with multiple members and complex connections.

Cross-section Solver

Calculates section properties for various cross-sectional shapes including custom polygonal sections.

pyCUFSM Solver

Performs constrained finite strip method analysis for buckling calculations of thin-walled sections.
Each solver has specific input requirements and output formats. Refer to the individual solver documentation for detailed parameter specifications.