SDT-visc         Contents     Functions         Previous Next     PDF Index

4.3  Viscoelastic device meshing tools

4.3.1  Generation of sandwich models

Starting from an undamped structure without treatment, you often want to generate models for viscoelastic patches applied to the structure. This is done using fevisco MakeSandwich commands. Modeling issues associated with this meshing are discussed in section ??.

Sample meshes are listed with fevisco('Test').

For example, the generation of a three layer sandwich with the original layer 0.01 thick (leading to a 0.005 offset), a volume of thickness 0.002, and a second 0.01 thick shell looks like

 model=femesh('testquad4 divide 10 12');
 model.Elt=feutil('orient 1 n 0 0 1',model);
 sandCom=['makesandwich shell 0 0 .005 ' ...
          'volume 101 .002 shell 102 -.005 .005'];  
 treated='withnode{x>.5 & y>.5}'; 
 model=fevisco(sandCom,model,treated);
 cf=feplot;cf.model=model;fecom('colordatamat');

You can also specify normals using a map.

 model=femesh('testquad4 divide 3 4');
 model.Elt=feutil('orient 1 n 0 0 1',model);
 sandCom=['makesandwich shell 0 0 .005 volume 101 .2 '];  
 % use a normal map that specify the direction of extrusion
 MAP=feutil('getnormal map node',model); MAP.normal(:,1)=2;
 model=fevisco(sandCom,model,'withnode{x>.5 & y>.5}',MAP);
 cf=feplot;cf.model=model;fecom(';colordatamat;view 1');

4.3.2  Meshing foam fillings

When meshing foam filling of geometrically complex parts, generating a mesh of the part and foam can be difficult. The problem is solved through the following steps

  1. mesh the part (usually done in a CAD environment then imported into SDT), and mesh approximate foam volume.
  2. defines a foam expansion map giving an expansion direction for external nodes of the approximate foam volume. In this phase, one typically defines the connected surface of the foam model, defines normals on this surface and possibly corrects these normals. The result is a vector map structure with field .ID node numbers of connected nodes and .normal giving the associated directions (see fe_case map).
  3. expand the foam to touch the initial part mesh and generate MPC connections to connect the foam and the underlying mesh. This is done automatically with the ConnectionStickThenSolid command.

Example

 femesh('reset');
 model=femesh('testubeam');
 model=feutil('objecthexa 101 101',model, ...
   [-.3 -.5 0;.6 0 0;0 .8 0;0 0 2.5],3,3,12);
 cf=feplot(2);cf.model=model;fecom('colordatamat -alpha.1')
 % Build normal MAP for connected foam surface
 MAP=feutil('getnormal node MAP',model.Node, ...
  feutil(['selelt matid==101 &selface& ' ...
    'withnode {y>-.49 & z>0 & z<2.5}',model));
 % Define the facing elements
 FacingSurface='matid 1 & selface & facing >0 0 0 1';
 %
 mo2=fevisco('ConnectionStickThenSolid',model,'Foam',MAP,FacingSurface);
 cf.model=mo2;fecom('colordatamat -alpha .3')

4.3.3  Exporting submeshes to NASTRAN

Once the sandwich model generated it can be exported to NASTRAN. There two typical strategies, rewriting the whole model (using naswrite('FileName',model)) or generating an include file.

The second strategy is more adapted when testing multiple viscoelastic configurations since it is more robust at preserving all options of the original file. The fevisco WriteInclude command is meant for that purpose. It lets you select newly meshed viscoelastic parts using any selection (their MatId for example) and generates the NASTRAN bulk containing the associated nodes, elements, material and element property cards, RBE2 entries connected to the selected elements.


©1991-2024 by SDTools
Previous Up Next