DLATTICE

Bulk Data Entry Defines parameters for filling a space with lattice-based unit cells. The presence of this entry also activates the creation of unit cells to fill the target volume.

Format

(1) (2) (3) (4) (5) (6) (7) (8) (9) (10)
DLATTICE ID VOLSID SURFSID CELLID MATID CONTSET      
  LAYOUT S_X S_Y S_Z CID        
  ROD R2_ID1 R2_ID1            
  STRESS STRLMT              
  BOUNDS RAD_INIT RAD_MIN RAD_MAX VOL_INIT VOL_MIN VOL_MAX    
  SEAL SRCHRAD DENS RAD          
  OVERHANG ANGLE GID1/X1 Y1 Z1 GID2/X2 Y2 Z2  
    MAXLEN              

Example

(1) (2) (3) (4) (5) (6) (7) (8) (9) (10)
DLATTICE 2 3 2 11 1        

Definitions

Field Contents SI Unit Example
ID Identification number of the DLATTICE Bulk Data Entry.

No default (Integer > 0)

 
VOLSID Identifies an element set of CTETRA elements which define the inner volume that is to be filled with lattice unit cells. This volume should contain CTETRA elements which are completely detached from the rest of the model.

No default (Integer > 0)

 
SURFSID Identifies an element set of shell elements which define the outer surface enclosing the volume that is to be filled with lattice unit cells.

If these shell elements are to be removed after filling is completed, then the thickness of these shell elements can be set equal to 0.0. 8

If the thickness of shell elements of SURFSID is set equal to 0.0 or if SURFSID is blank, then CONTSET should be specified to define TIE’d contact between the filled volume beam elements and the rest of the model.

Default = blank (Integer > 0)

 
CELLID Identification number of a CELL Bulk Data Entry which identifies the unit cell structure. Currently only ROD entities are supported on the CELL entry and they are correspondingly replaced by CBEAM elements when CELL is referenced the DLATTICE entry, to generate the filled volume.

No default (Integer > 0)

 
MATID Identification number of a Material Bulk Data Entry (currently only MAT1 entry is supported).

No default (Integer > 0)

 
CONTSET Identification number of a SET of elements which are used to create a TIE’d contact with the filled volume. The element SET defined on CONTSET is the main and the grids of the beams on the surface of the filled volume are the secondary.

Default = blank (Integer > 0)

 
LAYOUT Continuation line flag LAYOUT, which indicates that the unit cell layout information is to follow.  
S_X, S_Y, S_Z Scaling factors in X, Y, Z directions which allow scaling of the original unit cell (identified by CELLID field), prior to population of the space to be filled.

Default = 1.0 (Real)

 
CID Coordinate system which identifies the orientation of the unit cell (identified by CELLID field) and the directions it is filled within the space identified by VOLSID.

The default system is the basic coordinate system (CID = 0).

Default = 0 (Integer ≥ 0)

 
STRESS Continuation line flag STRESS, which indicates that the stress upper bound information is to follow.  
STRLMT Defines the stress constraint (upper bound) for Optimization. The Stress-Norm approach is used to apply the stress constraint.

Default = blank (Real)

 
BOUNDS Continuation line flag BOUNDS, which indicates that the initial values (for analysis or optimization) and upper and lower bounds (for optimization) are to follow.  
RAD_INIT Initial value of the radii of CBEAM elements in the filled space. 3 6 7
For Analysis only
Defines the radius value on the PBEAML entry directly.
For Optimization
Defines the initial radius on the corresponding DESVAR entry for sizing optimization.

Default = blank (Real ≥ 0.0)

 
RAD_MIN Minimum value of the radii of CBEAM elements in the filled space. 3 6 7

Defines the lower bound of the radii on the corresponding DESVAR entry for sizing optimization. This is not applicable in analysis only runs.

Default = blank (Real ≥ 0.0)

 
RAD_MAX Maximum value of the radii of CBEAM elements in the filled space. 3 6 7

Defines the upper bound of the radii on the corresponding DESVAR entry for sizing optimization. This is not applicable in analysis only runs.

Default = blank (Real ≥ 0.0)

 
VOL_INIT The initial radii on the beam properties and/or the initial values on the DESVAR cards are calculated such that the volume of the lattice structure corresponding to this DLATTICE entry, matches that of the volume it occupies at the specified volume fraction. 3 6 7
For Analysis only
Defines the volume fraction value, of the volume to the filled, which is used to calculate the corresponding radius value on the PBEAML entry.
For Optimization
Defines the initial volume fraction value, of the volume to be filled, which is used to calculate the corresponding initial radius value to be specified on the corresponding DESVAR entry for sizing optimization.
 
VOL_MIN The minimum radii on the beam properties and/or the minimum values on the DESVAR cards are calculated such that the volume of the lattice structure corresponding to this DLATTICE entry, matches that of the volume it occupies at the specified volume fraction. 3 6 7

Defines the minimum volume fraction of the volume to be filled, which is used to calculate the corresponding lower bound of the radii on the corresponding DESVAR entry for sizing optimization. This is not applicable in analysis only runs.

Default = 0.1 (Real ≥ 0.0)

 
VOL_MAX The maximum radii on the beam properties and/or the maximum values on the DESVAR cards are calculated such that the volume of the lattice structure corresponding to this DLATTICE entry, matches that of the volume it occupies at the specified volume fraction. 3 6 7

Defines the maximum volume fraction value of the volume to be filled, which is used to calculate the corresponding upper bound of the radii on the corresponding DESVAR entry for sizing optimization. This is not applicable in analysis only runs.

Default = 0.7 (Real ≥ 0.0)

 
SEAL Continuation line flag SEAL, which indicates that the surface sealing information is to follow. 10  
SRCHRAD Defines the search radius (distance) on the surface within which beam elements are considered for connection.

The default is set based on the average size of the referenced CELL.

Default = blank (Real ≥0)

 
DENS Defines the sealing density. If density is high, more beams are created for sealing.
LOW (Default)
MED
HIGH
 
RAD Actual radius of beams used in the sealing process.
blank (Default)
The default radius of the created elements is governed by the BOUNDS continuation line.

(Real ≥ 0.0)

 
OVERHANG Continuation line flag OVERHANG, which indicates that the Overhang information is to follow. This is used to identify overhanging beams and these beams are stored in an element set. 9  
ANGLE Orientation angle for Overhang. This angle is measured from the build direction. 9

No default (Real ≥ 0.0)

 
GID1, GID2 Grid point identification numbers which identify the orientation. The orientation can also be identified by defining coordinates (X#, Y#, Z#).

Default = blank (Real)

 
X#, Y#, Z# Coordinates of two points which identifies the orientation.

Default = blank (Real)

 
MAXLEN Maximum Length of the beam elements for consideration. 9

Default = blank (Real ≥ 0.0)

 

Comments

  1. Space filling is mesh independent, and the unit cell is copied in the X, Y, Z directions of CID until the volume is completely filled. The filled model is automatically echoed as <filename>_lattice.fem.
  2. Outside grids are projected (along the surface’s normal or the beam’s axis). TIE’d contact is then created between the beam grids on the surface (secondary) and the surface elements (main, surface elements are elements defined on SURFSID field). If both SURFSID and CONTSET are defined, then SURFSID is ignored completely with regard to contact. In this case, contact is only created between CONTSET and the beams. If neither SURFSID nor CONTSET are specified, then the beams of the filled volume are not connected to the rest of the model (this is also the case if CONTSET is not defined and the thickness of all shell elements in SURFSID is set to 0.0).
  3. Design variables are created by default when DLATTICE and CELL entries are present in the model. By default, one design variable for each beam joint is created (the beams are tapered CBEAM elements with PBEAML property and TYPE=ROD). The design variable creation method can be switched to two design variables per beam element, via LATPRM,ONEDVPGR,NO.
    By default, if an objective is defined, Optimization is performed, otherwise, an Analysis run is performed.
    • If ANALYSIS I/O Entry is added to the input file, then, design variables are also not created and optimization is not performed.
    • If CHECK I/O Entry is added to the input file, then no analysis or optimization is performed. Only the filled deck is output.
  4. Optimization run performed is equivalent to Phase 2 of the Lattice Optimization process (Sizing optimization). Euler Buckling, Stress Norm constraint, and Beam Cleaning are done, unless LATPRM,LATTICE,NO is manually defined in the input deck.
  5. If CONTSET is not defined, then loading can only be applied through Shell surface elements (loads cannot be directly defined on the inner volume during the unit cell filling stage). If Loading should be applied on the beams, then CHECK run can be performed to echo the filled input file and the model can be update with appropriate loading around the created beams. If CONTSET is defined, and contact is generated, then loading can be applied on the filled volume from other parts of the model through the contact interface.
  6. Both RAD_INIT and VOL_INIT cannot be defined at the same time on the same DLATTICE entry.
  7. If BOUNDS continuation line is not specified, the default VOL_INIT (0.4), VOL_MIN (0.1) and VOL_MAX (0.7) are used to calculate the radii. Unless specifically specified, VOL_INIT is always set to the average of VOL_MIN and VOL_MAX.

    If RAD_INIT is specified but RAD_MIN is not, then RAD_MIN is set to 0.5*RAD_INIT

    If RAD_INIT is specified but RAD_MAX is not, then RAD_MAX is set to 2.0*RAD_MIN

    If RAD_MIN is specified but RAD_INIT is not, then RAD_INIT is set to the average of RAD_MIN and RAD_MAX

    If RAD_MAX is specified but RAD_MIN is not, then RAD_MIN is set to 0.5*RAD_MAX

    If RAD_MAX is specified but RAD_INIT is not, then RAD_INIT is set to the average of RAD_MIN and RAD_MAX

    If RAD_MIN and VOL_MIN are defined together, then the minimum radius used is the higher value between RAD_MIN and the radius calculated from VOL_MIN. Similarly, if RAD_MAX and VOL_MAX are defined together, then the maximum radius used is the lower value between RAD_MAX and the radius calculated from VOL_MAX.

  8. It is also possible to remove only some of the shells, by specifying their respective thickness as zero and the remaining ones as non-zero. Alternatively, the SURFSID field can also be left blank. If this set is defined, the thickness of some of the elements is non-zero and CONTSET is blank, OptiStruct will generate Tied contact between the lattice structure and the elements in this set.
    Note: If the set is defined, it should envelope the entire volume as it is used for projection of the lattice elements penetrating the surface. If the field is left blank, temporary elements are created internally for projection only.
  9. Beams are considered as overhanging if they are inclined by more than the specified ANGLE and are longer than MAXLEN. These beams are identified by a separate element set.
  10. Surface sealing process is accomplished as:
    • The grids on the outside surface are identified.
    • For each grid, all grids in the vicinity are included in the search based on the value of SRCHRAD. This creates a pool of connectable grids associated with the chosen initial grid.
    • Each of the six directions (X, -X, Y, -Y, Z, -Z) are considered and all the grids in the pool are classified into one of these directions. The classification is done by identifying the longest projection of the line connecting the initial grid to each grid in the pool. This projection process is conducted solely for the purpose of classification of grids in the pool.
    • After classification, actual connection is now conducted between the initial grid and grids in the pool based on the DENS setting (LOW, MED, HIGH). If LOW, then a connection is made between the initial grid and the grid with the shortest projection in each of the six directions. Similarly, if MED, then connections are made with two shortest projections in each of the six directions (three shortest projections are chosen in each of the six directions, if HIGH is chosen).
    • Special cases are:
      • Grids at 45 degrees to any of the axes are penalized at the above step, so as to make it less likely that such grids are picked.
      • Duplicate connections are removed after the end of the above step.
      • If there are two crossing bars/connections, then the longer bar is removed.
      • Very close parallel coincident bars are removed.