Model.createexoskeletonlattice#
- Model.createexoskeletonlattice(entities, exoskeletonsize, excludeentities=Collection(), nodes=Collection(), radius=0.0, minelemsize=0.0, tol=0.0, matid=0, symmetryid=0, desvaropt='size', designopt='tight', filepath='')#
Creates a skeleton of beams that attaches to either topology results or a donor model.
- Parameters:
entities (Collection) – The collection containing the input entities. Valid enities are elements, components and parts.
exoskeletonsize (double) – The size of the exoskeleton grid to create the lattice.
excludeentities (Collection) – The collection containing the entities to be exluded. Valid enities are elements, components and parts.
nodes (Collection) – The collection containing the node entities.
radius (double) – The search radius multiplier. Recommended value is 2.0.
minelemsize (double) – The minimum element size of the 1D elements created during the process.
tol (double) – The tolerance value. Recommended value is 0.4.
matid (unsigned int) – The ID of the material to be associated with the 1D elements created.
symmetryid (unsigned int) – The ID of the symmetry plane along which the exoskeleton should be duplicated and reflected.
desvaropt (hwString) – The design variable option to be considered for creating the lattice. Valid values are topology and size.
designopt (hwString) – Determines whether the exoskeleton should be tightly or loosely coupled with the underlying FE. Valid values are tight and loose.
filepath (hwString) – The include path where the new variables will be stored.
Example#
Create an exoskeleton on all the components in the model with the selected hardpoints#import hm import hm.entities as ent model = hm.Model() comps = hm.Collection(model,ent.Component) nodes = hm.Collection(model,ent.Node,[2467,2589]) model.createexoskeletonlattice( entities=comps, exoskeletonsize=100.0, nodes=nodes, radius=2.0, minelemsize=0.0, tol=0.0, matid=4, symmetryid=1, desvaropt="topology", designopt="tight", filepath="", )