fconcrete.Structural.Beam module¶
-
class
fconcrete.Structural.Beam.
Beam
(loads, beam_elements, **options)[source]¶ Bases:
object
Structural 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. plot -
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_element
beam_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 :
number
orpython:list
of
number
Position in the beam, in cm.
Returns: - displacement :
number
orpython:list
of
number
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:list
of
number
The x position of the division in cm
- y :
python:list
of
number
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 :
number
orpython:list
of
number
Position in the beam, in cm.
Returns: - x :
python:list
of
number
The x position of the division in cm
- momentum :
number
orpython:list
of
number
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 :
number
orpython:list
of
number
Position in the beam, in cm.
Returns: - shear :
number
orpython:list
of
number
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:list
of
number
The x position of the division in cm
- y :
python:list
of
number
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 :
number
orpython:list
of
number
Position in the beam, in cm.
Returns: - rotation :
number
orpython:list
of
number
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:list
of
number
The x position of the division in cm
- y :
python:list
of
number
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:list
of
number
The x position of the division in cm
- y :
python:list
of
number
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).