-
Notifications
You must be signed in to change notification settings - Fork 27
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Geometric stiffness matrix formulation for truss topopt #58
Conversation
src/TrussTopOptProblems/buckling.jl
Outdated
So should be used as R*K*R' instead of R'*K*R as indicated in | ||
https://people.duke.edu/~hpgavin/cee421/truss-finite-def.pdf | ||
""" | ||
function compute_local_axes(end_vert_u, end_vert_v) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This might need some explanation. Let's talk about it today.
src/TrussTopOptProblems/buckling.jl
Outdated
# else | ||
# px = penalty(density(vars[varind[i]], xmin)) | ||
# end | ||
Kσ_e = px * Kσ_e |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I am not sure if we should do this for trusses unless we are going for 0-1 designs. If the thickness is optimized then the Ksigma comes from the stress and we shouldn't multiply by the density in assembly here.
Displacement dudx dim fixed. IterativeSolver abstol call fixed
Clean up recent Makie breaking changes
test/runtests.jl
Outdated
include("examples/test_examples.jl") | ||
end | ||
end | ||
# @safetestset "Examples" begin |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Can we uncomment these now?
Summary
This PR includes supports for buckling modeling of truss structures. It contains geometric stiffness matrix formulations, related tests, and detailed documentation with clear literature pointers. It closes #25.
Highlights:
test/truss_topopt_problems/test_geometric_stiffness_matrix.jl
includes an example of using the geometric stiffness matrix and a hand-made forward Euler integration to simulate large displacement.test/truss_topopt_problems/test_buckling.jl
includes examples to check that the ground mesh is stable and the compliance-optimized truss is not stable by using the geometric stiffness matrix.Minor changes:
examples/benchmark
in favor of our latest WCSMO21 benchmarksWhat type of change is this?
Checklist
] test
).