anastruct.preprocess.beam
Classes
Simple beam with a pin support at one end, and a roller support at the other. |
|
Cantilever beam with a fixed support at one end and free at the other. |
|
Cantilever beam with a fixed support at the left end and free (cantilevered) at the right. |
|
Cantilever beam with a free (cantilevered) left end and a fixed support at the right. |
|
Simply supported multi-span beam. Assumes equal spans unless span_lengths provided. |
|
Simply supported two-span beam with equal spans. |
|
Simply supported three-span beam with equal spans. |
|
Simply supported four-span beam with equal spans. |
|
Propped beam with an interior simple span and a cantilever on one side. |
|
Propped beam with an interior simple span and a cantilever on the right side. |
|
Propped beam with an interior simple span and a cantilever on the left side. |
Functions
|
Factory function to create beam instances by type name. |
Module Contents
- class anastruct.preprocess.beam.SimpleBeam(length: float, angle: float = 0.0, section: anastruct._types.SectionProps | None = None)[source]
Bases:
anastruct.preprocess.beam_class.BeamSimple beam with a pin support at one end, and a roller support at the other.
- class anastruct.preprocess.beam.CantileverBeam(length: float, cantilever_side: Literal['left', 'right'] = 'right', angle: float = 0.0, section: anastruct._types.SectionProps | None = None)[source]
Bases:
anastruct.preprocess.beam_class.BeamCantilever beam with a fixed support at one end and free at the other.
The
cantilever_sideparameter specifies which end is the free (unsupported) end. For example,cantilever_side="right"means the right end is free and the left end is fixed.
- class anastruct.preprocess.beam.RightCantileverBeam(length: float, angle: float = 0.0, section: anastruct._types.SectionProps | None = None)[source]
Bases:
CantileverBeamCantilever beam with a fixed support at the left end and free (cantilevered) at the right.
- class anastruct.preprocess.beam.LeftCantileverBeam(length: float, angle: float = 0.0, section: anastruct._types.SectionProps | None = None)[source]
Bases:
CantileverBeamCantilever beam with a free (cantilevered) left end and a fixed support at the right.
- class anastruct.preprocess.beam.MultiSpanBeam(length: float | None = None, num_spans: int | None = None, span_lengths: list[float] | None = None, cantilevers: Literal['left', 'right', 'both'] | None = None, angle: float = 0.0, section: anastruct._types.SectionProps | None = None)[source]
Bases:
anastruct.preprocess.beam_class.BeamSimply supported multi-span beam. Assumes equal spans unless span_lengths provided.
- class anastruct.preprocess.beam.TwoSpanBeam(length: float, angle: float = 0.0, section: anastruct._types.SectionProps | None = None)[source]
Bases:
MultiSpanBeamSimply supported two-span beam with equal spans.
- class anastruct.preprocess.beam.ThreeSpanBeam(length: float, angle: float = 0.0, section: anastruct._types.SectionProps | None = None)[source]
Bases:
MultiSpanBeamSimply supported three-span beam with equal spans.
- class anastruct.preprocess.beam.FourSpanBeam(length: float, angle: float = 0.0, section: anastruct._types.SectionProps | None = None)[source]
Bases:
MultiSpanBeamSimply supported four-span beam with equal spans.
- class anastruct.preprocess.beam.ProppedBeam(interior_length: float, cantilever_length: float, cantilever_side: Literal['left', 'right'] = 'right', angle: float = 0.0, section: anastruct._types.SectionProps | None = None)[source]
Bases:
MultiSpanBeamPropped beam with an interior simple span and a cantilever on one side.
- class anastruct.preprocess.beam.RightProppedBeam(interior_length: float, cantilever_length: float, angle: float = 0.0, section: anastruct._types.SectionProps | None = None)[source]
Bases:
ProppedBeamPropped beam with an interior simple span and a cantilever on the right side.
- class anastruct.preprocess.beam.LeftProppedBeam(interior_length: float, cantilever_length: float, angle: float = 0.0, section: anastruct._types.SectionProps | None = None)[source]
Bases:
ProppedBeamPropped beam with an interior simple span and a cantilever on the left side.
- anastruct.preprocess.beam.create_beam(beam_type: str, **kwargs: Any) anastruct.preprocess.beam_class.Beam[source]
Factory function to create beam instances by type name.
Provides a convenient way to create beams without importing specific classes. Type names are case-insensitive and can use underscores or hyphens as separators.
- Args:
beam_type (str): The type of beam to create (e.g., “simple”, “cantilever”, “multi_span”) **kwargs: Arguments to pass to the beam constructor
- Returns:
Beam: An instance of the requested beam type
- Raises:
ValueError: If beam_type is not recognized
- Examples:
>>> beam = create_beam("simple", length=10, section=section) >>> beam = create_beam("cantilever", length=5, section=section)