User Tools

Site Tools


feamesh

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
feamesh [2017/09/22 14:16]
jgravett Updates from Recently Added Features
feamesh [2018/04/01 14:41] (current)
Line 57: Line 57:
 === Part Tab === === Part Tab ===
  
-{{ :​feashellcap.png?​nolink&​205|}}+{{ :​feashellcap.png?​nolink&​250|}}
  
 The Part tab provides organization and control of FEA parts for the selected structure. The browser at the top of the tab lists all FEA parts for the structure, and includes their name, type, structural entity type, and property assignment. To the left of the browser, controls are available for reordering FEA parts. The ordering of parts in the browser is important in the case of tagging conflict, where priority is given to the part higher up in the browser. For example, if two FEA sub-surfaces overlap, the overlapping region is tagged according to the FEA part earlier in the list. Another feature of the browser is that multiple FEA parts can be selected at once. The options under "​General"​ can then be set for the group of selected parts (or individual part). To add an FEA part to a structure, the FEA part type must first be indicated. The available FEA part types are slice, rib, spar, fixed point, dome, rib array, slice array, line, rectangle, ellipse, control surf, and line array. For more details on these part types, see the "FEA Part Types" section of this wiki page. One or more FEA part can be deleted by selecting "​Delete Part". A part can be renamed with the input in the middle of the tab. If a single FEA part is selected, the "Edit Part" button will open the FEA Part Edit GUI. This GUI, which can also be accessed by double clicking an FEA part in the browser, offers controls and options unique to each FEA part type.  The Part tab provides organization and control of FEA parts for the selected structure. The browser at the top of the tab lists all FEA parts for the structure, and includes their name, type, structural entity type, and property assignment. To the left of the browser, controls are available for reordering FEA parts. The ordering of parts in the browser is important in the case of tagging conflict, where priority is given to the part higher up in the browser. For example, if two FEA sub-surfaces overlap, the overlapping region is tagged according to the FEA part earlier in the list. Another feature of the browser is that multiple FEA parts can be selected at once. The options under "​General"​ can then be set for the group of selected parts (or individual part). To add an FEA part to a structure, the FEA part type must first be indicated. The available FEA part types are slice, rib, spar, fixed point, dome, rib array, slice array, line, rectangle, ellipse, control surf, and line array. For more details on these part types, see the "FEA Part Types" section of this wiki page. One or more FEA part can be deleted by selecting "​Delete Part". A part can be renamed with the input in the middle of the tab. If a single FEA part is selected, the "Edit Part" button will open the FEA Part Edit GUI. This GUI, which can also be accessed by double clicking an FEA part in the browser, offers controls and options unique to each FEA part type. 
Line 71: Line 71:
 === Mesh Tab === === Mesh Tab ===
  
-The Mesh tab is available for controlling aspects of the FEA mesh solver. The settings are saved with the individual structure, so a structure must be selected when making use of this tab. The options available are similar to those seen on the Global tab of the CFD Mesh GUI. Further insight into these settings can be found here: [[http://​www.openvsp.org/​wiki/​doku.php?​id=cfdmesh|CFD Mesh Wiki]]. ​Below the mesh control settings, the files exported ​during ​FEA mesh generation ​are listed. The first two, *.stl and *.msh, are general mesh formats that do not include any materials ​or properties. The mass output file is a *.txt file that lists the mass of each FEA part, divided between shell and beam FEA elements. The remaining two export files are *.dat files written in Nastran and Calculix/​Abaqus ​FEA mesh format. These files may be imported into an external FEA mesh program for further processing and analysis.+The Mesh tab is available for controlling aspects of the FEA mesh solver. The settings are saved with the individual structure, so a structure must be selected when making use of this tab. The options available are similar to those seen on the Global tab of the CFD Mesh GUI. Further insight into these settings can be found here: [[http://​www.openvsp.org/​wiki/​doku.php?​id=cfdmesh|CFD Mesh Wiki]]. ​ 
 + 
 +=== Output Tab === 
 + 
 +The Output tab identifies all of the possible file formats that can be exported ​upon completion of an FEA mesh generation ​process. The first two, *.stl and *.msh, are general mesh formats that do not include any material ​or property data. The mass output file is a *.txt file that lists the mass of each FEA part, divided between shell and beam FEA elements. The remaining two export files under the "File Export"​ section, Nastran and Calculix, contain all available FEA mesh information,​ such as material and property data. The NASTRAN ​*.dat file is written ​following the specifications set forth by Siemens ​in the  [[https://​docs.plm.automation.siemens.com/​data_services/​resources/​nxnastran/​10/​help/​en_US/​tdocExt/​pdf/​User.pdf|NASTRAN Documentation]]. The Calculix ​*.dat output follows the file format defined in the [[http://​abaqus.software.polimi.it/​v6.14/​index.html|Abaqus ​Documentation]]. These files may be imported into an external FEA mesh program for further processing and analysis. 
 + 
 +OpenVSP v3.15.0 introduced additional surface and intersection curve features. Under "​Surfaces and Intersection Curves"​ on the Output tab, the *.curv and *.p3d file formats are available for export of intersection and border curve data. The *.srf file contains the information used to define all of the individual patches for the structure'​s FEA parts. An option is available to include the intersection curves in this file.      ​
  
 === Display Tab === === Display Tab ===
  
-The Display tab is used to control visualization of the generated FEA mesh. Therefore, it has no functionality until the "Mesh and Export"​ button has been selected. At the top of the tab under "​Display",​ toggle buttons are available for controlling the display of all sets checked under "​Display Element Sets". "Draw Mesh" shows the borders of each triangular shell element. "Color Elements"​ applies a different color to each element set. "Draw Nodes" displays each individual FEA node. "Draw Element Orientation Vector"​ draws the normal vector for beam elements. For shell elements, this button draws a vector pointing in the direction of increasing U. Since the FEA mesh is unstructured,​ this orientation vector is useful when laying out composite laminate layers. Under "​Display Element Sets", FEA parts are grouped by their shell and beam elements. Their visibility is controlled by the check boxes next to each set or by using the "Show All" and "Hide All" buttons. ​+{{ :​intersectioncurvedisplay.png?​nolink&​475|}} 
 + 
 +The Display tab is used to control visualization of the generated FEA mesh. Therefore, it has no functionality until the "Mesh and Export"​ button has been selected. At the top of the tab under "​Display",​ toggle buttons are available for controlling the display of all sets checked under "​Display Element Sets". "Draw Mesh" shows the borders of each triangular shell element. "Color Elements"​ applies a different color to each element set. "Draw Nodes" displays each individual FEA node. "Draw Element Orientation Vector"​ draws the normal vector for beam elements. For shell elements, this button draws a vector pointing in the direction of increasing U. Since the FEA mesh is unstructured,​ this orientation vector is useful when laying out composite laminate layers. The "​Intersection Curve Display"​ section contains options to display the intersection curves and border curves identified during mesh generation. Under "​Display Element Sets", FEA parts are grouped by their shell and beam elements. Their visibility is controlled by the check boxes next to each set or by using the "Show All" and "Hide All" buttons. ​
  
-{{ :​feadisplay.png?​nolink&​850 |}}+{{ :​feadisplay.png?​nolink&​950 |}}
  
 ==== FEA Part Types ==== ==== FEA Part Types ====
Line 87: Line 95:
 === Slice === === Slice ===
  
-{{ :​fearibsparmesh.png?​nolink&​210|}}+{{ :​fearibsparmesh.png?​nolink&​275|}}
  
 Slice is a 2D cutting plane that is used to intersect a skin. A slice can be full-depth, zero-depth, or both, specified by selection of "​Shell",​ "​Cap",​ or "Shell and Cap", respectively. The cutting plane for a slice is defined by an orientation,​ center location, and rotation. Orientation is the plane the slice runs parallel to. This can be defined from either the absolute axes or the body axes of the parent geometry. An option is available to specify distance as either relative or absolute. Relative distance is identified as a fraction of the bounding box of the parent geometry. Absolute is defined as a fixed location within the bounding box.  Slice is a 2D cutting plane that is used to intersect a skin. A slice can be full-depth, zero-depth, or both, specified by selection of "​Shell",​ "​Cap",​ or "Shell and Cap", respectively. The cutting plane for a slice is defined by an orientation,​ center location, and rotation. Orientation is the plane the slice runs parallel to. This can be defined from either the absolute axes or the body axes of the parent geometry. An option is available to specify distance as either relative or absolute. Relative distance is identified as a fraction of the bounding box of the parent geometry. Absolute is defined as a fixed location within the bounding box. 
Line 129: Line 137:
   - If placing a fixed point on an FEA part surface other than the skin, make sure the fixed point is located within the intersection curve of the parent part. Otherwise, the fixed point can cause the parent surface to be trimmed incorrectly.   - If placing a fixed point on an FEA part surface other than the skin, make sure the fixed point is located within the intersection curve of the parent part. Otherwise, the fixed point can cause the parent surface to be trimmed incorrectly.
   - Ribs and spars on complex wing geometries may not intersect the skin correctly. If this is the case, try using sectional constrains or using the "Trim to Bounding Box" option. Slice can also be used to model a rib or spar.    - Ribs and spars on complex wing geometries may not intersect the skin correctly. If this is the case, try using sectional constrains or using the "Trim to Bounding Box" option. Slice can also be used to model a rib or spar. 
-  - Mesh errors often result when intersection curves overlap. This could occur if a spar is placed on a control surface edge, a slice is aligned directly with a line sub-surface,​ or a similar intersection conflict is created. ​  ​+  - Mesh errors often result when intersection curves overlap. This could occur if a spar is placed on a control surface edge, a slice is aligned directly with a line sub-surface,​ or a similar intersection conflict is created. 
 +  - Currently, a planar slice that completely intersects the first and last constant U/W curve (feature line) of a closed U/W geometry is not supported in the FEA mesh generator. Similarly, a slice that completely intersects a wing leading or trailing edge feature line is not supported.
  
 ==== API and Scripting ==== ==== API and Scripting ====
Line 135: Line 144:
 === Functions === === Functions ===
  
-int AddFeaStruct( const string & in geom_id, bool init_skin = true, int surfindex = 0 )\\+**int AddFeaStruct( const string & in geom_id, bool init_skin = true, int surfindex = 0 )\\
 void DeleteFeaStruct( const string & in geom_id, int fea_struct_ind )\\ void DeleteFeaStruct( const string & in geom_id, int fea_struct_ind )\\
 +string GetFeaStructName( const string & in geom_id, int fea_struct_ind )\\
 +void SetFeaStructName( const string & in geom_id, int fea_struct_ind,​ const string & in name )\\
 void SetFeaMeshVal( const string & in geom_id, int fea_struct_ind,​ int type, double val )\\ void SetFeaMeshVal( const string & in geom_id, int fea_struct_ind,​ int type, double val )\\
 void SetFeaMeshFileName( const string & in geom_id, int fea_struct_id,​ int file_type, const string & in file_name )\\ void SetFeaMeshFileName( const string & in geom_id, int fea_struct_id,​ int file_type, const string & in file_name )\\
Line 145: Line 156:
 string DeleteFeaSubSurf( const string & in geom_id, int fea_struct_id,​ const string & in ss_id )\\ string DeleteFeaSubSurf( const string & in geom_id, int fea_struct_id,​ const string & in ss_id )\\
 string AddFeaMaterial()\\ string AddFeaMaterial()\\
-string AddFeaProperty( int property_type = 0 )\\+string AddFeaProperty( int property_type = 0 )**
  
 === Enums === === Enums ===
Line 201: Line 212:
 FEA_STL_FILE_NAME\\ FEA_STL_FILE_NAME\\
 FEA_GMSH_FILE_NAME\\ FEA_GMSH_FILE_NAME\\
 +FEA_SRF_FILE_NAME\\
 +FEA_CURV_FILE_NAME\\
 +FEA_PLOT3D_FILE_NAME\\
 FEA_NUM_FILE_NAMES\\ FEA_NUM_FILE_NAMES\\
  
feamesh.1506114984.txt.gz · Last modified: 2018/04/01 14:40 (external edit)