-
Notifications
You must be signed in to change notification settings - Fork 6
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
Add 4C beam to beam contact #161
base: main
Are you sure you want to change the base?
Conversation
|
||
It sets the conditions to enable contact between beams. | ||
""" | ||
|
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.
Here I have a question:
Currently, I have to add two times the same Boundary Condition.
Wouldn't it make more sense to have something like:
BeamtoBeamContactCondition(nodes1,nodes2)
and under the hood the function create the boundary conditions for nodes1
and nodes2
and keeps track automatically of the IDs ?
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.
Per definition a boundary condition is always something that acts on a single geometry set in MeshPy. So it is not possible to add two geometry sets to a single BC. What is however possible is to have a factory function or object (similar to what you proposed) what takes beam_contact_bc_factory(mesh, nodes1, nodes2, bc_description, ...)
and creates the corresponding BCs automatically. The ID count could either be stored in the factory object, a global variable, or be retrieved by checking how many beam_to_beam_contact
conditions are already in the mesh and dividing that number by 2. @knarfnitram @davidrudlstorfer do you have an idea what would be a Pythonic way to track the number of added IDs? I am not sure if global variables and objects are desirable.
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.
So I added a Factory called BeamtoBeamContactBoundaryConditionFactory
, which stores the id and adds the geometry sets.
Should we add this factory to the input file? (since the id should be in synch with the input file)
dfec281
to
8354d30
Compare
c746a5a
to
14d23d1
Compare
14d23d1
to
1536cee
Compare
474b4b8
to
1eb05e0
Compare
This MR adds the boundary conditions for beam contact with the appropriate header functions.
Additionally, I have added a small test case/ example how a simple example can be set up. (Correct place and extended documentation is open for discussion).
However, I put this currently up as draft to get some feedback, especially since this can only be merged after #160.