optimad / mimmo

Surface manipulation and mesh morphing library
http://optimad.github.io/mimmo
GNU Lesser General Public License v3.0
98 stars 21 forks source link

Lattice with different shapes #175

Open sararht opened 3 years ago

sararht commented 3 years ago

Hello,

I would like to know if there is a way to create a lattice that has a different shape than the basic shapes (cube, sphere...). I like to be able to create a lattice that, for example, joins several Cube-shaped lattices to have other types of shapes, e.g. a straight elbow at 90 degrees. For use on parts with more complex geometries.

Thank you in advance!

roccoarpa commented 3 years ago

Hi @sararht, there's no other option besides those basic shapes unfortunately. Sorry for that. You can create a series of indipendent lattices boxes, some of them having touching faces. You have to guarantee the same exact node displacement on nodes on touching faces. In case of linear degree lattice in direction normal to the face, this is enough and everything should work. High orders are more complicated, since the nurbs are clamped at the extremal nodes and can create a discontinuity at the border face. To mitigate the latter, you have to control somehow the movement of nodes nearest to the face in exam, for both lattices. Hope this helps.

sararht commented 3 years ago

Yes, I did something similar to that, but I have problems in the overlapping areas by giving them a certain orientation. The problem is that when applying the lattices, both deformations are applied in the overlapping areas.. As you can see in the image:

lattices_

Thank you anyway

roccoarpa commented 3 years ago

mmmh, i see. The other option that comes in my mind is a little uncomfortable but it can work. You can create a unique bo x lattice around your geometry, with several number of control nodes, and move opportunely only those nodes (also internal ones) near to the surface, leaving the others still. Lattice node labeling (available in vtu mesh of the lattice) and paraview visualization of lattice as point cloud can help you to recognize those nodes.

sararht commented 3 years ago

Ok, I can try that. Thank you very much!!