concreteproperties.analysis_section.AnalysisSection#
- class AnalysisSection(geometry: Geometry)[source]#
Bases:
object
Class for an analysis section to perform a fast analysis on concrete sections.
Inits the AnalysisSection class.
- Parameters
geometry (
sectionproperties.pre.geometry.Geometry
) – Geometry object
Methods
Given section actions and section propreties, calculates elastic stresses.
Given the neutral axis depth d_n and curvature kappa determines the service stresses within the section.
Given the neutral axis depth d_n and ultimate strain, determines the ultimate stresses with the section.
Plots the finite element mesh.
Plots the coloured shape of the mesh with no outlines on ax.
Performs a service stress analysis on the section.
Performs an ultimate stress analysis on the section.
- get_elastic_stress(n: float, m_x: float, m_y: float, e_a: float, cx: float, cy: float, e_ixx: float, e_iyy: float, e_ixy: float, theta: float) Tuple[ndarray, float, float] [source]#
Given section actions and section propreties, calculates elastic stresses.
- Parameters
n (float) – Axial force
m_x (float) – Bending moment about the x-axis
m_y (float) – Bending moment about the y-axis
e_a (float) – Axial rigidity
cx (float) – x-Centroid
cy (float) – y-Centroid
e_ixx (float) – Flexural rigidity about the x-axis
e_iyy (float) – Flexural rigidity about the y-axis
e_ixy (float) – Flexural rigidity about the xy-axis
theta (float) – Angle (in radians) the neutral axis makes with the horizontal axis (\(-\pi \leq \theta \leq \pi\))
- Returns
Elastic stresses, net force and distance from neutral axis to point of force action
- Return type
Tuple[
numpy.ndarray
, float, float]
- service_stress_analysis(point_na: Tuple[float], d_n: float, theta: float, kappa: float, na_local: float) Tuple[float] [source]#
Performs a service stress analysis on the section.
- Parameters
point_na (Tuple[float]) – Point on the neutral axis
d_n (float) – Depth of the neutral axis from the extreme compression fibre
theta (float) – Angle (in radians) the neutral axis makes with the horizontal axis (\(-\pi \leq \theta \leq \pi\))
kappa (float) – Curvature
na_local (float) – y-location of the neutral axis in local coordinates
- Returns
Axial force, resultant moment and max strain
- Return type
Tuple[float]
- get_service_stress(d_n: float, kappa: float, point_na: Tuple[float], theta: float, na_local: float) Tuple[ndarray, float, float] [source]#
Given the neutral axis depth d_n and curvature kappa determines the service stresses within the section.
- Parameters
d_n (float) – Neutral axis depth
kappa (float) – Curvature
point_na (Tuple[float]) – Point on the neutral axis
theta (float) – Angle (in radians) the neutral axis makes with the horizontal axis (\(-\pi \leq \theta \leq \pi\))
na_local (float) – y-location of the neutral axis in local coordinates
- Returns
Service stresses, net force and distance from neutral axis to point of force action
- Return type
Tuple[
numpy.ndarray
, float, float]
- ultimate_stress_analysis(point_na: Tuple[float], d_n: float, theta: float, ultimate_strain: float, pc_local: float) Tuple[float] [source]#
Performs an ultimate stress analysis on the section.
- Parameters
point_na (Tuple[float]) – Point on the neutral axis
d_n (float) – Depth of the neutral axis from the extreme compression fibre
theta (float) – Angle (in radians) the neutral axis makes with the horizontal axis (\(-\pi \leq \theta \leq \pi\))
ultimate_strain (float) – Concrete strain at failure
pc_local (float) – y-location of the plastic centroid in local coordinates
- Returns
Axial force and resultant moment
- Return type
Tuple[float]
- get_ultimate_stress(d_n: float, point_na: Tuple[float], theta: float, ultimate_strain: float, pc_local: float) Tuple[ndarray, float, float] [source]#
Given the neutral axis depth d_n and ultimate strain, determines the ultimate stresses with the section.
- Parameters
d_n (float) – Neutral axis depth
point_na (Tuple[float]) – Point on the neutral axis
theta (float) – Angle (in radians) the neutral axis makes with the horizontal axis (\(-\pi \leq \theta \leq \pi\))
ultimate_strain (float) – Concrete strain at failure
pc_local (float) – y-location of the plastic centroid in local coordinates
- Returns
Ultimate stresses net force and distance from neutral axis to point of force action
- Return type
Tuple[
numpy.ndarray
, float, float]
- plot_mesh(alpha: Optional[float] = 0.5, title: Optional[str] = 'Finite Element Mesh', **kwargs) matplotlib.axes.Axes [source]#
Plots the finite element mesh.
- Parameters
alpha (Optional[float]) – Transparency of the mesh outlines
title (Optional[str]) – Plot title
kwargs – Passed to
plotting_context()
- Returns
Matplotlib axes object
- Return type
- plot_shape(ax: matplotlib.axes.Axes)[source]#
Plots the coloured shape of the mesh with no outlines on ax.
- Parameters
ax (
matplotlib.axes.Axes
) – Matplotlib axes object