Skip to content

Conversation

@buildsmart888
Copy link

This pull request introduces a major migration of the foundation design package from Eurocode 2 to ACI 318M-25, adds new visualization features, and provides updated documentation and configuration for the Streamlit app. The most significant changes include the implementation of ACI 318M-25 design standards, new modules and functions for ACI-based design, enhanced visualization capabilities, and comprehensive documentation for both users and developers.

Migration to ACI 318M-25 Design Standard:

  • Added a new package module FoundationDesign/__init___aci318.py that implements isolated pad foundation and combined footing design per ACI 318M-25, including new classes (PadFoundationACI318), design functions, load/strength reduction factors, material validation, and utility functions.
  • Updated the changelog (CHANGELOG.md) to document the migration from Eurocode 2 to ACI 318M-25, new design methods, load combinations, material terminology, and package structure changes.

Visualization and User Experience:

  • Introduced new visualization features in the Streamlit app, including bearing pressure heatmaps, punching shear diagrams, shear force and bending moment diagrams, flexural stress distribution, and load path diagrams, as described in NEW_FEATURES.md. These features improve clarity and interactivity for structural analysis results.
  • Added a sample Streamlit configuration file (.streamlit/config.toml) to set up logging, server options, and UI theme for a smoother user experience.

Documentation and Quick Start:

  • Added a comprehensive quick start guide (QUICK_START.md) with instructions for running the Streamlit app, input parameter explanations, design standard compliance, troubleshooting, and example use cases.
  • Updated and expanded documentation throughout the package, including API references and migration guidance for users transitioning from Eurocode to ACI 318M-25. [1] [2]

Summary of Most Important Changes:

1. Core Design Standard Migration

  • Complete migration of foundation design logic from Eurocode 2 to ACI 318M-25, with new classes, functions, load/strength factors, and material validation in FoundationDesign/__init___aci318.py.
  • Changelog documents all major changes, new features, and migration steps for users.

2. Visualization Enhancements

  • New structural analysis graphs and diagrams (bearing pressure, punching shear, shear/moment, flexural stress, load path) added and described in NEW_FEATURES.md.
  • Streamlit configuration for improved app appearance and usability in .streamlit/config.toml.

3. Documentation and User Guidance

  • Added QUICK_START.md for step-by-step usage, troubleshooting, and feature overview.
  • Expanded documentation and migration guide for existing users to adapt to the new ACI 318M-25 standard. [1] [2]

…oundation Design imports

- Implemented a new test script for shear force and bending moment diagrams in `test_shear_moment_diagrams.py`.
- Calculated shear and moment distributions based on foundation and column parameters.
- Created visualizations for shear force and bending moment diagrams using Plotly.
- Added a new test script `test_streamlit_imports.py` to validate imports from the FoundationDesign package.
- Included tests for load factors, strength reduction factors, material validation, and design information retrieval.
- Created manage_app.ps1 for managing the Streamlit app with start, stop, restart, and status actions.
- Implemented functions to start and stop the Streamlit app, check its status, and handle port usage.
- Developed simple_streamlit.py as a basic Streamlit application with a sine wave plot.
- Added start_app.bat to facilitate launching the Streamlit app on Windows.
@kunle009
Copy link
Owner

Thank you for your contributions to this project. It's Highly welcomed. I am currently reviewing your pull request and would revert back when done. Thank you @buildsmart888

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants