fconcrete.Structural.Beam module¶
-
class
fconcrete.Structural.Beam.Beam(loads, beam_elements, **options)[source]¶ Bases:
objectStructural Beam.
Note for this documentation: “Not only the ones provided by the initial beam_Elements” means that internally the Beam automatically creates some nodes even if it was not created for the user initially. It happens in Load.x_begin and Load.x_end.
Attributes: - U: list of number
Displacement in the nodes.
- beam_elements: BeamElements
BeamElements instance of beam_elements, not only the ones provided by the initial beam_Elements.
- beams_quantity: number
Number of beam_elements, not only the ones provided by the initial beam_Elements.
- external_loads: Loads
loads argument but used as a Loads class. Same as fconcrete.Structural.Load.Loads.create(loads).
- initial_beam_elements: array of BeamElement
beam_elements argument used when the instance is created.
- length: number
Length of the beam. Can also use len(beam).
- loads: Loads
Loads instance with all efforts in the beam. Including the load given by the supports.
- nodal_efforts: list of number
The nodal efforts that happens in all nodes, not only the ones provided by the initial beam_Elements.
- nodes: Nodes
Nodes instance of the beam, not only the ones provided by the initial beam_Elements.
- x_begin: number
Where the beam starts, in cm.
- x_end: number
Where the beam ends, in cm.
Methods
copy(self)Makes a deep copy of the instance of Beam. getBeamElementInX(self, x)Get the beam element in x (in cm). getDisplacement(self, x)Get the vertical displacement in a position x (in cm) or multiple positions. getDisplacementDiagram(self, \*\*options)Apply beam.getDisplacement for options[“division”] parts of the beam. getInternalMomentumStrength(self, x)Get the internal momentum strength in a position x (in cm) or multiple positions. getInternalShearStrength(self, x)Get the internal shear strength in a position x (in cm) or multiple positions. getMomentumDiagram(self, \*\*options)Apply beam.getInternalMomentumStrength for options[“division”] parts of the beam. getRotation(self, x)Get the rotation in a position x (in cm) or multiple positions. getRotationDiagram(self, \*\*options)Apply beam.getRotation for options[“division”] parts of the beam. getShearDiagram(self, \*\*options)Apply beam.getInternalShearStrength for options[“division”] parts of the beam. matrix_rigidity_global(self)Returns the global rigidity matrix. plotDisplacementDiagram(self, \*\*options)Simply applies the beam.getDisplacementDiagram method results (x,y) to a plot with plt.plot(x, y). plotMomentumDiagram(self, \*\*options)Simply applies the beam.getMomentumDiagram method results (x,y) to a plot with plt.plot(x, y). plotRotationDiagram(self, \*\*options)Simply applies the beam.getRotationDiagram method results (x,y) to a plot with plt.plot(x, y). plotShearDiagram(self, \*\*options)Simply applies the beam.getShearDiagram method results (x,y) to a plot with plt.plot(x, y). solve_displacement(self)Starts the process of solution for the structural beam displacement. solve_structural(self)Starts the process of solution for the structural beam. -
getBeamElementInX(self, x)[source]¶ Get the beam element in x (in cm).
Call signatures:
beam.getBeamElementInX(x)Parameters: - x :
number Position in the beam, in cm.
Returns: - index :
python:int The order of the beam_element in the structure.
beam_elementbeam_element located in x.
- x :
-
getDisplacement(self, x)[source]¶ Get the vertical displacement in a position x (in cm) or multiple positions.
Call signatures:
beam.getDisplacement(x)Parameters: - x :
numberorpython:listofnumber Position in the beam, in cm.
Returns: - displacement :
numberorpython:listofnumber The vertical displacement of the beam in cm.
- x :
-
getDisplacementDiagram(self, **options)[source]¶ Apply beam.getDisplacement for options[“division”] parts of the beam.
Parameters: - **options
division:Number of divisions equally spaced (int).
x_begin:Begin of the x_axis (number).
x_end:End of the x_axis (number).
Returns: - x :
python:listofnumber The x position of the division in cm
- y :
python:listofnumber The value of displacement for each x.
-
getInternalMomentumStrength(self, x)[source]¶ Get the internal momentum strength in a position x (in cm) or multiple positions.
Call signatures:
beam.getInternalMomentumStrength(x)Parameters: - x :
numberorpython:listofnumber Position in the beam, in cm.
Returns: - x :
python:listofnumber The x position of the division in cm
- momentum :
numberorpython:listofnumber The internal value of the momentum strength in kNcm.
- x :
-
getInternalShearStrength(self, x)[source]¶ Get the internal shear strength in a position x (in cm) or multiple positions.
Call signatures:
beam.getInternalShearStrength(x)Parameters: - x :
numberorpython:listofnumber Position in the beam, in cm.
Returns: - shear :
numberorpython:listofnumber The internal value of the shear strength in kN.
- x :
-
getMomentumDiagram(self, **options)[source]¶ Apply beam.getInternalMomentumStrength for options[“division”] parts of the beam.
Parameters: - **options
division:Number of divisions equally spaced (int).
x_begin:Begin of the x_axis (number).
x_end:End of the x_axis (number).
Returns: - x :
python:listofnumber The x position of the division in cm
- y :
python:listofnumber The value of momentum for each x.
-
getRotation(self, x)[source]¶ Get the rotation in a position x (in cm) or multiple positions.
Call signatures:
beam.getRotation(x)Parameters: - x :
numberorpython:listofnumber Position in the beam, in cm.
Returns: - rotation :
numberorpython:listofnumber The rotation value of the momentum strength in rad.
- x :
-
getRotationDiagram(self, **options)[source]¶ Apply beam.getRotation for options[“division”] parts of the beam.
Parameters: - **options
division:Number of divisions equally spaced (int).
x_begin:Begin of the x_axis (number).
x_end:End of the x_axis (number).
Returns: - x :
python:listofnumber The x position of the division in cm
- y :
python:listofnumber The value of rotation for each x.
-
getShearDiagram(self, **options)[source]¶ Apply beam.getInternalShearStrength for options[“division”] parts of the beam.
Parameters: - **options
division:Number of divisions equally spaced (int).
x_begin:Begin of the x_axis (number).
x_end:End of the x_axis (number).
Returns: - x :
python:listofnumber The x position of the division in cm
- y :
python:listofnumber The value of shear for each x.
-
matrix_rigidity_global(self)[source]¶ Returns the global rigidity matrix. Also known by the letter “K”.
-
plotDisplacementDiagram(self, **options)[source]¶ Simply applies the beam.getDisplacementDiagram method results (x,y) to a plot with plt.plot(x, y).
Parameters: - **options
division:Number of divisions equally spaced (int).
x_begin:Begin of the x_axis (number).
x_end:End of the x_axis (number).
-
plotMomentumDiagram(self, **options)[source]¶ Simply applies the beam.getMomentumDiagram method results (x,y) to a plot with plt.plot(x, y).
Also invert y axis.
Parameters: - **options
division:Number of divisions equally spaced (int).
x_begin:Begin of the x_axis (number).
x_end:End of the x_axis (number).
-
plotRotationDiagram(self, **options)[source]¶ Simply applies the beam.getRotationDiagram method results (x,y) to a plot with plt.plot(x, y).
Parameters: - **options
division:Number of divisions equally spaced (int).
x_begin:Begin of the x_axis (number).
x_end:End of the x_axis (number).
-
plotShearDiagram(self, **options)[source]¶ Simply applies the beam.getShearDiagram method results (x,y) to a plot with plt.plot(x, y).
Parameters: - **options
division:Number of divisions equally spaced (int).
x_begin:Begin of the x_axis (number).
x_end:End of the x_axis (number).