Skip to content

Releases: robbievanleeuwen/concrete-properties

v0.6.2

08 Mar 06:50
Compare
Choose a tag to compare

What's Changed

📦 Dependencies

Full changelog: v0.6.1...v0.6.2

v0.6.1

11 Oct 12:19
Compare
Choose a tag to compare

This release maintains compatibility with sectionproperties v3.1.0 and adds nbQA and flake8-pytest-style.

What's Changed

👷 Continuous Integration

📦 Dependencies

Full changelog: v0.6.0...v0.6.1

v0.6.0

06 Oct 13:00
Compare
Choose a tag to compare

⭐ Highlights

  • Add support for Python 3.11.
  • Improved workflow, CI and contributor experience by introducing poetry and nox.
  • Improved documentation style and automation.

💥 Breaking Changes

  • Dropped support for Python 3.8.

🚀 Features

  • Packaging and dependency management with poetry.
  • Improve length/readability of imports by placing key classes in __init__.py files, e.g. from concreteproperties.concrete_section import ConcreteSection becomes from concreteproperties import ConcreteSection
  • Added support for Python 3.11.

🚨 Testing

  • Use nox & nox-poetry for testing.

👷 Continuous Integration

  • Add poetry integration and detailed contributor guidelines.
  • Added labeller and release drafter automation.
  • Added pre-commit checks.
  • Added dependabot.
  • Updated all workflows.

📚 Documentation

  • Changed documentation theme to furo.
  • General overhaul of the documentation.
  • Add intersphinx mappings.

💄 Style

  • Added flake8 linter to pre-commit.
  • Added darglint docstring linter to pre-commit.
  • Added isort to pre-commit.
  • Added pyupgrade to pre-commit.

Other

  • Restructured package by adding src folder.

Full changelog: v0.5.1...v0.6.0

v0.5.1

25 May 06:45
Compare
Choose a tag to compare
  • Add support for python 3.10
  • Drop support for python 3.7
  • Support shapely 2.0

Full changelog: v0.5.0...v0.5.1

v0.5.0

20 Dec 09:17
Compare
Choose a tag to compare

🎉 New Features 🎉

  • 🇳🇿 NZS3101 Design Code & NZSEE C5 Assessment Guidelines (#40), big thanks to @Agent6-6-6. See more in the docs and in this example!
  • 🏹 Prestressed Concrete Analysis (#73). See more in the docs and in this example!
  • 📈 Modified Mander Non-Linear Profile (Confined & Unconfined Concrete) (#40), thanks to @Agent6-6-6. See more in the docs!

❌ Breaking Changes ❌

  • Axial loads in AS3600.ultimate_bending_capacity() and AS3600.biaxial_bending_diagram() are now defined through the n_design argument (previously n) (#72).

Full changelog: v0.4.1...v0.5.0

v0.4.1

28 Nov 02:42
Compare
Choose a tag to compare
  • Hotfix for design_codes module not included in v0.4.0

Full changelog: v0.4.0...v0.4.1

v0.4.0

18 Nov 02:40
Compare
Choose a tag to compare

Breaking Changes:

  • Design codes are now accessed in the design_code subpackage, for example from concreteproperties.design_codes import AS3600 becomes from concreteproperties.design_codes.as3600 import AS3600
  • All moments are now calculated about the gross section centroid, rather than the composite section centroid to align with results from analysis programs, see more info in the assumptions section of the documentation. This default behaviour can be overriden in the ConcreteSection constructor, see here.
  • moment_interaction_diagram() now searches between the limits and accepts additional control_points, refer to the documentation for the current implementation

Bug Fixes:

  • Fix unintended error when MC analysis reaches end (#50), thanks to @Agent6-6-6
  • Change gauss point locations (#55) to fix odd moment curvature results (#49)
  • More robust bending capacity for AS3600 (#65) fixes find concrete_section.ultimate_bending_capacity() needs method for max compression load check (#41)

Enhancements:

  • Add optional parameters to AS3600 moment interaction analysis (#59) to fix AS3600 moment interaction - change theta (#45)
  • Update documentation (#60) fixes analysis assumptions in docs (#52) and add warning for simple stress-strain profiles re:moment-curvature analysis (#54)
  • Adaptive step improvement (#61) fixes improve adaptive curvature step in moment-curvature analysis (#51) and now finds the point of failure (previously the analysis stopped prior to failure)
  • Calculate moments about gross centroid (#62) fixes #53
  • Implement AnalysisError and better error messages (#64) partially fixes #41
  • Moment interaction diagram useability enhancements (#66) fixes #39
  • There is now an option to turn off the progress bar in relevant analyses by setting progress_bar=False

Full changelog: v0.3.1...v0.4.0

v0.3.1

27 Aug 02:13
Compare
Choose a tag to compare
  • Fix legend for plotting section going outside plot region, thanks to @Agent6-6-6 (#35)
  • Remove alpha_squash from Concrete material (#38)

Full changelog: v0.3.0...v0.3.1

v0.3.0

05 Aug 02:50
Compare
Choose a tag to compare

This version introduces introduces the concept of meshed reinforcement, allowing materials other than concrete to be meshed (variation of strain across region) which paves the way for composite analysis!

Bar reinforcement should now be assigned the SteelBar material to utilise in-built efficiencies in idealising bars as lumped masses and enabling calculation of parameters such as k_u.

Full details of the changes are listed below, note there are several breaking changes in this release.

1. Material Module

  • Materials other than concrete can now be meshed allowing for varying strain distributions. This allows composite sections to be analysed. If using structural steel sections, assign a Steel material object to this section. If using a generic material, use the new generic Material class and set meshed=True.
  • Lumped (constant strain) reinforcement can be specified by using the SteelBar class, or by using the Material clas with meshed=False.

2. Pre Module

  • Increased performance by creating of concreteproperties CPGeom object, an optimised version of the sectionproperties Geometry object. All geometry is converted to CPGeom objects after creating a ConcreteSection object.

3. Concrete Section Module

  • Geometries are now sorted into concrete geometries, meshed reinforcement geometries and lumped reinforcement geometries.
  • Improved failure checks in moment curvature analysis.
  • All moments are now calculated about the elastic centroid, enabling easy integration with structural analysis software (previously ultimate moments were calculated about the plastic centroid and service moments about the neutral axis).

4. Interaction Diagram Changes

  • Ultimate bending capacities can now be calculated for all ranges of netural axis depth (neutral axis depth larger than section depth).
  • Concept of squash load and ultimate tensile load removed to cater for generic interaction diagrams (not AS 3600 specific).
  • Improved control of how interaction diagrams are generated - added control points, labels, and maximum compressive load. Extended control of the number of points in the diagram. See #20 for further details.
  • Removed m_neg feature to facilitate the above. Negative diagrams can now be easily created by manually creating another interaction diagram with a 180 degree bending axis rotation and displaying both diagrams on a single plot.

5. Results Module

  • ConcreteProperties and TransformedConcreteProperties renamed to GrossProperties and TransformedGrossProperties.
  • Principal axis angle now in radians to align with other angles in concreteproperties.
  • Extended StressResult object to handle concrete geometries, meshed reinforcement geometries and lumped reinforcement geometries.
  • Plot 2D and 3D diagrams for biaxial bending results.

6. Design Code Module

  • AS3600 interaction diagram includes the balanced point by default, ensuring kinks in the diagram are correctly captured.

7. Utilities Module

  • Global and principal axis angle calculations are done in-house to increase performance.
  • Rewrote split_geom_at_strains() to improve performance.

Full changelog: v0.2.3...v0.3.0

v0.2.3

25 Jul 14:00
Compare
Choose a tag to compare
  • Fix moment curvature and service stress calculation for non-principal bending

Full changelog: v0.2.2...v0.2.3