Skip to content

Conversation

Czarified
Copy link
Owner

Rolling in the MajorFrames class! This PR adds the MajorFrames class, and functional synthesis routine.

Defining a MajorFrame with loads, it can be automatically evaluated and even plotted.

There are some issues with the stability and accuracy. I've already started debugging and have some major overhauls planned, but I wanted to merge these changes in so I can start updating dependencies before rolling in the validation work.

Czarified added 30 commits April 4, 2025 16:14
check a readme box
Including matplotlib show I can visualize shapes.

Added a test file for the hyperstruct module, so I can checkout and cover the Stations code.
Added pytest-check as a dependency.

Station.show() allows a visual confirmation of the shape being used.
Rounded rectangle still needs work.
Added multiple methods for geometry and internal loads. The Station geometry backend is the primary powerhorse here, and still needs more work.
Added a bit more testing, and tweaked the ellipse object in the show method.

Lot's of CI still fails, and test coverage is still poor. Baby steps!
Finishing out the geometry method. This method now calculates all geometry inputs needed for internal loads.
Geometry cuts was previously stuck in a loop. Revised the iteration variables and step routine so it _mostly_ converges now, without being super slow.
Swapped the internal loads method to work for a single cut at a time, just to get the logic correct.

To get the redundants, and therefore the loads at each segment centroid, we need to do the whole dange thing. So, this will probably have to swap back, but my brain was hurting.
Still needs some geometry work, and weight values don't seem correct, but she's working!
I need this for development, but I'm adding is as a straight dependency because if I adapt methods for dataframe operations, they will likely be faster than any loop I could write.
Printing some dataframes to identify problem areas.
Added a debug option for geometry_cuts.
Sensitivity study indicates we have convergence issues. A validation case is still needed.
Minor updates as I work through the validation of the method. Going to commit this for a PR and version before overhauling the synthesis routines.
@Czarified Czarified self-assigned this Jun 27, 2025
@Czarified Czarified added bug Something isn't working enhancement New feature or request help wanted Extra attention is needed labels Jun 27, 2025
@Czarified Czarified merged commit b612cb7 into main Jun 27, 2025
20 of 28 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working enhancement New feature or request help wanted Extra attention is needed
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant