Grasshopper

algorithmic modeling for Rhino

Hi kangaroo group,

I have a question to model flexible shells in Kangaroo.

I am trying to find a relatively accurate model that would compare with non linear finite element abaqus (rough precision is enough but accurate deformation needed). In order to simplify shell structures, there is often a separation of the membrane and bending actions (disregarding the coupling between the two). This is the case in Grinspun 2003 "discrete shell" for instance. I use this paper as reference.

The membrane action decomposes in shearing and stretching. The main deformations in shells happen by bending the surface with quasi non existant membrane deformation. 

The polyspring component does the job to prevent stretching. So I wonder if there is a way to constrain the area of the triangular mesh during the deformation to prevent shearing

In my current model i have variations in face area of about 3% in selected locations of the mesh. 

Victor 

Ps: the attached picture shows the type of deformations i am looking at. V0.099 because I am using zombie kangaroo & galapagos for optimization.

Views: 781

Attachments:

Replies to This Discussion

Hi Victor,

Interesting question.

The shell bending in Kangaroo 0.099 is indeed loosely based on that Grinspun paper (and in v2 I use this model, which is very similar).

Obviously if the edges of a triangulated mesh do not stretch at all then no shearing occurs either, but if this stretching stiffness is made too high then unless the edges are aligned with the direction of bending (which in general they won't be for doubly curved shells), it prevents bending (I think this is the phenomenon sometimes referred to as shear-locking).

Separating out the shear stiffness and making this strong to preserve area, but lowering the edge length stiffness could be a good idea (isn't this what you mean? to allow some shearing but no stretch)

I am trying to model rigid shells in my case, but i was indeed looking at separating the shearing and stretching modes of membrane deformation.

Having this separation could allow to model cloth deformation for instance. In this case textile has no shear stiffness but is inextensible. Polyspring does a combination of both modes i feel.

but presumably your mesh is triangulated(indeed, the shell component only works with triangulated meshes)

Consider a mesh like this:

If the edge lengths were preserved absolutely then the only way for this to bend would be to concertina up like origami, which is clearly not the desired behaviour if we are trying to simulate a smooth shell.

If instead though you are talking a quad mesh, strong stretch resistance coupled with low or no shear stiffness is already possible using existing components, and you shouldn't use the shell component. Indeed this is the basis for the gridshell examples - model the grid lines as rods with bending resistance, and they are free to shear around the connection points (like a wire tea strainer).

In your example, the mesh would probably influence the shape of the deformed geometry because it is an origami pattern. It would orient the deformation. For a much finer and irregular mesh the influence of the mesh direction would probably be less important?! To the point where it's the actual geometry that controls the deformation and not the discretization.

I could also look into discretizing the shell into a gridshell but i was trying to maintain the continuous nature of the structure. this would be another problem to solve i guess.

Thank you for you reply anyway, Daniel. This is discussion is helpful. 

RSS

About

Translate

Search

© 2025   Created by Scott Davidson.   Powered by

Badges  |  Report an Issue  |  Terms of Service