Python Library for Beam Analysis for Civil Engineering
Developed by Aryan Karamtoth from Information Technology Department at Kakatiya Institute of Technology and Science
- Making a beam
- Calculating Support Reactions of a beam
- Applying load on a beam
- Simply Supported Beam
- Overhanging Beam(Work in Progress)
pip install beamxs
Import the package
import beamxs as bm
Read the documentation and apply the required method for your purpose
-
createBeam(len)
: Method for creating a beamInput: len --> Length of Beam Output: beam --> Beam object
Example:
beam = bm.createBeam(10)
print(beam)
definePin(pinPos,beam)
:
Method for defining the position of pin support
Input: pinPos --> Pin Support Position
beam --> Beam object
Output: pinposition --> Pin Position
Example:
pinpos = bm.definePin(2,beam)
print(pinpos)
-
defineRoller(rollPos,beam)
:Method for defining the position of roller support
Input: rollPos --> Roller Support Position beam --> Beam object
Output: rollposition --> Roller Position
Example:
rollpos = bm.defineRoller(4,beam) print(rollpos)
-
applyPointLoad(loadPos,loadMag,beam)
:Method for applying Point Load on the beam
Input: loadPos --> Position of Point Load loadMag --> Magnitude of Point Load beam --> Beam object
Output: load --> Applied Load
Example:
ptload = bm.applyPointLoad(4,60,beam) print(ptload)
-
applyUDL(beam,loadPerUnitLength)
:Method for applying UDL (Uniformly Distributed Load) on the beam
Input: beam --> Beam object loadPerUnitLength --> Load Per Unit Length
Output: udl --> Applied UDL
Example:
udlarray = bm.applyUDL(beam,20) print(udlarray)
-
applyUVL(beam,startLoad,endLoad)
:Method for applying UVL (Uniformly Varying Load) on the beam
Input: beam --> Beam object startLoad --> Start Load endLoad --> End Load
Output: uvl --> Applied UVL
Example:
uvlarray = bm.applyUVL(beam,20,40) print(uvlarray)
-
applyMoment(momentPos, momentMag, beam)
:Method for applying Moment on the beam
Input: momentPos --> Moment Position momentMag --> Moment Magnitude beam --> Beam Object
Output: moments --> Moment Applied
Example:
appliedmoment = bm.applyMoment(3,20,beam) print(appliedmoment)
-
calcReactionsSSB(loads, pinPos, rollPos, beam)
:Method for calculation support reaction of a simply supported beam with various loads
Input: loads --> Dictionary containing load data beam --> Beam Object pinPos --> Pin Position rollPos --> Roller Support Position
Output: Ra --> Reaction at pin support Rb --> Reaction at roller support
Example:
loads = [ {'type': 'point', 'position': 2, 'magnitude': 50}, {'type': 'udl', 'start': 3, 'end': 5, 'magnitude': 20}, {'type': 'uvl', 'start': 6, 'end': 8, 'start_magnitude': 10, 'end_magnitude': 30} ] pinPos = 1 rollPos = 9 Ra, Rb = bm.calcReactionsSSB(loads, pinPos, rollPos, beam) print(Ra) print(Rb)