Model.fastenercreation#
- Model.fastenercreation(coeffa=0.0, coeffb1=0.0, coeffb2=0.0, component_collection=Collection(), geom_collection=Collection(), conntype='Bolts', createupdateoption=0, diameter=0.0, diameteropt='Value', elemtype='FASTENER', fileloc='', filelocopt=False, k4=0.0, k5=0.0, k6=0.0, material=Entity(), method='', numlayer=-1, numlayeropt='Calculated', orientopt='Auto', projectiondirection=hwTriple(0.0, 0.0, 0.0), projectionmethod='normal to links', projectionspecificlink=Entity(), system=Entity(), tolerance=10.0, toleranceopt='', youngmodopt='')#
Creates fastener connectors, elements, properties, and materials using the Huth formula. Currently only supported for Abaqus profile.
Valid column labels in the CSV file are:
x,y,z for location
x1,y1,z1,x2,y2,z2 for start and end point of line
lineid for ID of line
nodeid for ID of node
pointid for ID of point
material for ID of material
diameter for fastener diameter
tolerance or length for tolerance of line
cid for system ID if the locations are in a specific system
The default Huth constants are:
Coefficient a: 2/3 for metallic and bolted graphite/epoxy, 2/5 for riveted metallic
Coefficient b: 3 for bolted metallic, 2.2 for riveted metallic, 4.2 for bolted graphite/epoxy
Coefficient b1=b/n b2=b/n^2 where n is the number of shear
- Parameters:
coeffa (double) – The a value when method=”User defined(Huth)”.
coeffb1 (double) – The b1 value when method=”User defined(Huth)”.
coeffb2 (double) – The b2 value when method=”User defined(Huth)”.
component_collection (Collection) – The collection containing the entities for finding attached shells or projections.
geom_collection (Collection) – The collection containing the entities for creating (lines, points, nodes) and updating (connectors) operations.
conntype (hwString) – The connection type, Bolts or Rivets.
createupdateoption (int) –
0 - Connector creation
1 - Connector post-processing for creating materials, properties, etc…
diameter (double) – The diameter value when
diameteropt=Value.diameteropt (hwString) –
Calculated - Consider from file if it has diameter information, else from perpendicular lines on
component_collectionValue - Specified via
diameterelemtype (hwString) – The solver element type. Must be set to Fastener for creating CONN3D in .
fileloc (hwString) – The full file path which contains values like diameter, line ID, node ID, point ID, material ID, point location, etc… when
filelocopt=1.filelocopt (bool) – If set to True,
filelocis used.k4 (double) – The stiffness value k4.
k5 (double) – The stiffness value k5.
k6 (double) – The stiffness value k6.
material (Entity) – The object describing the material entity when
youngmodopt=material.method (hwString) –
“Huth Formula”
”User defined(Huth)” - Must specify
coeffa,coeffb1, andcoeffb2.numlayer (int) – The number of layers when
numlayeropt=Value.numlayeropt (hwString) –
Calculated - Automatic calculation (default)
Value - Specified via
numlayerorientopt (hwString) –
The orientation option:
Auto - Automatic (default)
UserDefined - Specified via
systemprojectiondirection (hwTriple) – The direction values when
projectionmethod="along discrete direction"projectionmethod (hwString) –
The method for calculating the projection. Valid values are:
”along discrete direction”
”normal to closest link”
”normal to furthest link”
”normal to links” (default)
”normal to specific link”
projectionspecificlink (Entity) – The object describing the component entity when
projectionmethod="normal to specific link".system (Entity) – The object describing the system entity when
orientopt=UserDefined.tolerance (double) – The tolerance value when
toleranceopt=Value.toleranceopt (hwString) –
The connector tolerance:
Calculated - Automatic calculation from lines
Value - Specified via
toleranceyoungmodopt (hwString) –
material - Value is taken from
material.<value> - The specific value to use
Example#
Create fasteners on all lines (via comps), with diameter of 5, automatic number of layers, Young’s modulus taken from material 1, and the tolerance calculated using lines#import hm import hm.entities as ent model = hm.Model() comps = hm.Collection(model, ent.Component) lines = hm.Collection(model, ent.Line) model.fastenercreation( component_collection=comps, geom_collection=lines, conntype="Bolts", createupdateoption=0, diameter=5.0, diameteropt="Value", elemtype="FASTENER", filelocopt=False, k4=100.0, k5=1.0E8, k6=1.0E8, material=ent.Material(model, 1), method="Hutch Formula", numlayer=-1, numlayeropt="Calculated", orientopt="Auto", toleranceopt="Calculated", youngmodopt="material" )