Problem Description
This tutorial shows how to calculate cross-sectional properties of the TRAC boom with given dimensions and material properties using SwiftComp 1.3 and PreVABS.
Flattened height: 45 mm, Web height: 6mm, Subtended angle: 90 degree, Ply thickness: 0.058 mm,
Radius of the flange (curved part): 24.85 mm,
Layup: 45/-45. The layup sequence is along with the direction pointing to the center of flange(Blue arrow).
Material properties
E1 = E2 = 94.2 GPa, E3 = 9.42 GPa, G12 = 3.94 GPa, G13 = G23 = 1.97 GPa, ν12 = 0.026, ν13 = ν23 = 0.3.
Software Used
SwiftComp 1.3 and PreVABS
Solution Procedure
The input files for PreVABS are prepared in XML format based on all the design parameters given above. A brief summary of the input files is given below:
• A baseline file (baselines_TRAC.xml), storing definitions of geometry.
• A material file (MaterialDB.xml), storing definitions of materials and laminae.
• A layup file (layups_TRAC.xml), storing definitions of layups.
• A main cross-section file (boom_TRAC.xml), storing definitions of components and other configurations of modelling and analysis.
All files can have file names of user’s choice and can be placed at any working directory.
Step 1: Preparing the baseline file (baselines_TRAC.xml)
Basepoints: Six points from p0 to p5 are used to define the geometry of the cross-section. Points p1 and p0 define the web, while p0, p2 and p3 define the right flange and p0, p4 and p5 define the left flange. Note that p3 and p5 are the centers of the arcs which form the baselines for the flanges. Point p0 is taken as the origin of the coordinate system. The coordinates of the points are obtained from simple geometric calculations.
Base lines are created based on key points defined above. The direction of each base line is important. It is related with how the laminate is created for each segment, and how the local coordinate system is defined for each element. Refer to the prevabs manual for more details on input file generation.
Input file for geometric elements (baseline_TRAC.xml).
<baselines> <basepoints> <point name="p0">0 0</point> <point name="p1">0 6</point> <point name="p2">24.85 -24.85</point> <point name="p3">24.85 0</point> <point name="p4">-24.85 -24.85</point> <point name="p5">-24.85 0</point> </basepoints> <baseline name="line_1" type="straight"> <points>p1,p0</points> </baseline> <baseline name="line_2" type="arc"> <center>p3</center> <start>p0</start> <end>p2</end> <direction>ccw</direction> </baseline> <baseline name="line_3" type="arc"> <center>p5</center> <start>p0</start> <end>p4</end> <direction>cw</direction> </baseline> </baselines>
Step 2: Preparing the material file (MaterialDB.xml)
Material data is stored in the material database. Arrangements of data are different for different material types, which can be isotropic, orthotropic, or anisotropic. Another part of the file is the lamina data. A lamina is a unique combination of material and ply thickness. It is the lamina, instead of the material, that will be used to define each layer of the layup. The lamina defined here is named la_1 with thickness 0.058 mm.
Input file for materials (MaterialDB.xml).
<materials> <material name="m30s_pw_lee2019" type="orthotropic"> <density>1</density> <elastic> <e1>94.2e3</e1> <e2>94.2e3</e2> <e3>9.42e3</e3> <g12>3.94e3</g12> <g13>1.97e3</g13> <g23>1.97e3</g23> <nu12>0.026</nu12> <nu13>0.3</nu13> <nu23>0.3</nu23> </elastic> </material> <lamina name="la_1"> <material>m30s_pw_lee2019</material> <thickness>0.058</thickness> </lamina> </materials>
Step 3: Preparing the layup file (layups_TRAC.xml)
Layup information is stored in a separate file and the main input file calls upon the layup file to define the laminate, named here as layupper. The order of the layers defines the laying sequence from the base line. The number in the element stands for the orientation of the lamina.
Input file for layups (layups_TRAC.xml).
<layups> <layup name="layupper"> <layer lamina="la_1">-45</layer> <layer lamina="la_1">45</layer> </layup> </layups>
Step 4: Preparing the main cross-section file (boom_TRAC.xml)
The main input file of the cross-section contains several required or optional settings along with the definitions of components.
• The first part is the settings, which is required. This contains the baselines and layups files.
• The second part is the settings, which is optional. This contains configurations used by SwiftComp for the cross-sectional analysis. For this example, the setting is set to 0, which means that the Euler-Bernoulli beam model will be used and the 4 by 4 stiffness matrix will be calculated.
• The third part is the settings, which is optional. This part contains global configurations for the shape and meshing of the cross-section. Here, the global mesh size is set to 0.03.
• The fourth part is the component definition. Each laminate-type component is composed of one or more segments. Each segment is a unique combination of a base line and a layup. The layup can be created on either side of the base line. This is controlled by an attribute “direction”, which can be either left or right while moving along the baseline. The component on the right side, right_part is defined by two segments formed by baselines line_1 and line_2, and is assigned the direction “left”. Similarly the component on the left side, left_part is defined by two segments formed by baselines line_1 and line_3, and is assigned the direction “right”.
Input file for the cross-section (boom_TRAC.xml).
<cross_section name="boom"> <include> <baseline>baselines_TRAC</baseline> <layup>layups_TRAC</layup> <material>MaterialDB</material> </include> <analysis> <model>0</model> </analysis> <general> <mesh_size>0.03</mesh_size> </general> <component name="right_part"> <segment name="right_web"> <baseline>line_1</baseline> <layup direction="left">layupper</layup> </segment> <segment name="right_flange"> <baseline>line_2</baseline> <layup direction="left">layupper</layup> </segment> </component> <component name="left_part"> <segment name="left_web"> <baseline>line_1</baseline> <layup direction="right">layupper</layup> </segment> <segment name="left_flange"> <baseline>line_3</baseline> <layup direction="right">layupper</layup> </segment> </component> </cross_section>
Step 5: Execution and Results
Once all input files are prepared, the cross-section can be created and homogenized using the following procedure:
• Open the command line window and change directory to the root of the working directory.
• Type the following command:
prevabs –sc –i boom_TRAC.xml -h -v -e
If everything works successfully, Gmsh will be called and the cross-section will be plotted as shown in Figure 3 and SwiftComp homogenization analysis will be carried out and effective beam properties can be found in the file boom_TRAC.sg.K.
The effective stiffness matrix:
1.5193E+05 | 0 | -2.0165E+06 | 0 |
0 | 2.9431E+03 | 0 | 0 |
-2.0165E+06 | 0 | 4.0685E+07 | 0 |
0 | 0 | 0 | 1.8494E+07 |