AS3600¶
- class concreteproperties.design_codes.as3600.AS3600[source]¶
Bases:
DesignCodeDesign code class for Australian standard AS 3600:2018.
Note
Note that this design code only supports
ConcreteandSteelBarmaterial objects. MeshedSteelmaterial objects are not supported, as this falls under the composite structures design code.Methods
Assigns a concrete section to the design code.
Generates a biaxial bending with capacity factors to AS 3600.
Calculates cracked section properties.
Calculates cracked stresses within the reinforced concrete section.
Calculates service stresses within the reinforced concrete section.
Calculates ultimate stresses within the reinforced concrete section.
Calculates uncracked stresses within the reinforced concrete section.
Returns the AS 3600 capacity reduction factor (Table 2.2.2).
Returns a concrete material object to AS 3600.
Returns a steel bar material object.
Returns the gross section properties of the reinforced concrete section.
Returns k_uo for the reinforced concrete cross-section given
theta.Returns n_ub for the reinforced concrete cross-section given
theta.Transforms gross section properties.
Performs a moment curvature analysis (no reduction factors applied).
Generates a moment interaction diagram with capacity factors to AS 3600.
Calculates the squash and tensile load of the reinforced concrete section.
Calculates the ultimate bending capacity with capacity factors to AS 3600.
- assign_concrete_section(concrete_section: ConcreteSection) None[source]¶
Assigns a concrete section to the design code.
- Parameters:
concrete_section (ConcreteSection) – Concrete section object to analyse
- Raises:
ValueError – If there is meshed reinforcement within the concrete_section
- create_concrete_material(compressive_strength: float, colour: str = 'lightgrey') Concrete[source]¶
Returns a concrete material object to AS 3600.
Material assumptions
Density: 2400 kg/m3 (2.4 x 10-6 kg/mm3)
Elastic modulus: Interpolated from Table 3.1.2
Service stress-strain profile: Linear with no tension, compressive strength at \(0.9f'_c\)
Ultimate stress-strain profile: Rectangular stress block, parameters from Cl. 8.1.3
Alpha squash: From Cl. 10.6.2.2
Flexural tensile strength: From Cl. 3.1.1.3
- Parameters:
- Raises:
ValueError – If
compressive_strengthis not between 20 MPa and 100 MPa.- Returns:
Concrete material object
- Return type:
- create_steel_material(yield_strength: float = 500, ductility_class: str = 'N', colour: str = 'grey') SteelBar[source]¶
Returns a steel bar material object.
Material assumptions
Density: 7850 kg/m3 (7.85 x 10-6 kg/mm3)
Elastic modulus: 200000 MPa
Stress-strain profile: Elastic-plastic, fracture strain from Table 3.2.1
- Parameters:
- Raises:
ValueError – If
ductility_classis not “N” or “L”- Returns:
Steel material object
- Return type:
- squash_tensile_load() tuple[float, float][source]¶
Calculates the squash and tensile load of the reinforced concrete section.
- capacity_reduction_factor(n_u: float, n_ub: float, n_uot: float, k_uo: float, phi_0: float) float[source]¶
Returns the AS 3600 capacity reduction factor (Table 2.2.2).
n_ubandphi_0only required for compression,n_uotonly required for tension.- Parameters:
- Returns:
Capacity reduction factor
- Return type:
- get_k_uo(theta: float) float[source]¶
Returns k_uo for the reinforced concrete cross-section given
theta.
- get_n_ub(theta: float) float[source]¶
Returns n_ub for the reinforced concrete cross-section given
theta.
- ultimate_bending_capacity(theta: float = 0, n_design: float = 0, phi_0: float = 0.6) tuple[UltimateBendingResults, UltimateBendingResults, float][source]¶
Calculates the ultimate bending capacity with capacity factors to AS 3600.
- Parameters:
- Raises:
AnalysisError – If the design load is greater than the squash load
AnalysisError – If the design load is greater than the tensile load
- Returns:
Factored and unfactored ultimate bending results objects, and capacity reduction factor (
factored_results,unfactored_results,phi)- Return type:
tuple[UltimateBendingResults, UltimateBendingResults, float]
- moment_interaction_diagram(theta: float = 0, limits: list[tuple[str, float]] | None = None, control_points: list[tuple[str, float]] | None = None, labels: list[str] | None = None, n_points: int = 24, n_spacing: int | None = None, phi_0: float = 0.6, progress_bar: bool = True) tuple[MomentInteractionResults, MomentInteractionResults, list[float]][source]¶
Generates a moment interaction diagram with capacity factors to AS 3600.
See
concreteproperties.concrete_section.ConcreteSection.moment_interaction_diagram()for allowable control points.Note
When providing
"N"tolimitsorcontrol_points,"N"is taken to be the unfactored net (nominal) axial load \(N^{*} / \phi\).- Parameters:
theta (float) – Angle (in radians) the neutral axis makes with the horizontal axis (\(-\pi \leq \theta \leq \pi\)). Defaults to
0.limits (list[tuple[str, float]] | None) – List of control points that define the start and end of the interaction diagram. List length must equal two. The default limits range from concrete decompression strain to the pure bending point,
[("D", 1.0), ("N", 0.0)]. Defaults toNone.control_points (list[tuple[str, float]] | None) – List of additional control points to add to the moment interaction diagram. The default control points include the balanced point,
fy = 1, i.e.[("fy", 1.0)]. Control points may lie outside the limits of the moment interaction diagram as long as equilibrium can be found. Defaults toNone.labels (list[str] | None) – List of labels to apply to the
limitsandcontrol_pointsfor plotting purposes. The first two values inlabelsapply labels to thelimits, the remaining values apply labels to thecontrol_points. If a single value is provided, this value will be applied to bothlimitsand allcontrol_points. The length oflabelsmust equal1or2 + len(control_points). Defaults toNone.n_points (int) – Number of points to compute including and between the
limitsof the moment interaction diagram. Generates equally spaced neutral axes between thelimits. Defaults to24.n_spacing (int | None) – If provided, overrides
n_pointsand generates the moment interaction diagram usingn_spacingequally spaced axial loads. Note that usingn_spacingnegatively affects performance, as the neutral axis depth must first be located for each point on the moment interaction diagram. Defaults toNone.phi_0 (float) – Compression dominant capacity reduction factor, see Table 2.2.2(d). Defaults to
0.6.progress_bar (bool) – If set to True, displays the progress bar. Defaults to
True.
- Returns:
Factored and unfactored moment interaction results objects, and list of capacity reduction factors (
factored_results,unfactored_results,phis)- Return type:
tuple[MomentInteractionResults, MomentInteractionResults, list[float]]
- biaxial_bending_diagram(n_design: float = 0, n_points: int = 48, phi_0: float = 0.6, progress_bar: bool = True) tuple[BiaxialBendingResults, list[float]][source]¶
Generates a biaxial bending with capacity factors to AS 3600.
- Parameters:
n_design (float) – Design axial force, N*. Defaults to
0.n_points (int) – Number of calculation points. Defaults to
48.phi_0 (float) – Compression dominant capacity reduction factor, see Table 2.2.2(d). Defaults to
0.6.progress_bar (bool) – If set to True, displays the progress bar. Defaults to
True.
- Returns:
Factored biaxial bending results object and list of capacity reduction factors (
factored_results,phis)- Return type:
- calculate_cracked_properties(**kwargs) res.CrackedResults¶
Calculates cracked section properties.
- Parameters:
kwargs – Keyword arguments passed to
calculate_cracked_properties()- Returns:
Cracked results object
- Return type:
res.CrackedResults
- calculate_cracked_stress(**kwargs) res.StressResult¶
Calculates cracked stresses within the reinforced concrete section.
- Parameters:
kwargs – Keyword arguments passed to
calculate_cracked_stress()- Returns:
Stress results object
- Return type:
res.StressResult
- calculate_service_stress(**kwargs) res.StressResult¶
Calculates service stresses within the reinforced concrete section.
- Parameters:
kwargs – Keyword arguments passed to
calculate_service_stress()- Returns:
Stress results object
- Return type:
res.StressResult
- calculate_ultimate_stress(**kwargs) res.StressResult¶
Calculates ultimate stresses within the reinforced concrete section.
- Parameters:
kwargs – Keyword arguments passed to
calculate_ultimate_stress()- Returns:
Stress results object
- Return type:
res.StressResult
- calculate_uncracked_stress(**kwargs) res.StressResult¶
Calculates uncracked stresses within the reinforced concrete section.
- Parameters:
kwargs – Keyword arguments passed to
calculate_uncracked_stress()- Returns:
Stress results object
- Return type:
res.StressResult
- get_gross_properties(**kwargs) res.GrossProperties¶
Returns the gross section properties of the reinforced concrete section.
- Parameters:
kwargs – Keyword arguments passed to
get_gross_properties()- Returns:
Concrete properties object
- Return type:
res.GrossProperties
- get_transformed_gross_properties(**kwargs) res.TransformedGrossProperties¶
Transforms gross section properties.
- Parameters:
kwargs – Keyword arguments passed to
get_transformed_gross_properties()- Returns:
Transformed concrete properties object
- Return type:
res.TransformedGrossProperties
- moment_curvature_analysis(**kwargs) res.MomentCurvatureResults¶
Performs a moment curvature analysis (no reduction factors applied).
- Parameters:
kwargs – Keyword arguments passed to
moment_curvature_analysis()- Returns:
Moment curvature results object
- Return type:
res.MomentCurvatureResults