Getting started with PreVABS: parametrized composite blade design and optimization
This tutorial will introduce a workflow to design and optimize composite blades with PreVABS+VABS+gmsh+msgpi+Dakota. PreVABS is a parametrized composite design tool. VABS is a commercial code for cross-sectional property analysis. msgpi is a Python interface for VABS. Gmsh is an open source CAD software. Dakota is a open source tool for optimization developed by sandia national lab.
Documentation
PreVABS documentation: https://pages.github.rcac.purdue.edu/wenbinyugroup/prevabs_doc/
Installation
- Download. The package include PreVABS+VABS+msgpi+gmsh+Dakota. An installer and a portable package is provided.
- Install.
- For the installer, everything will be set once your finished installing. We recommend installing it in a non-elevated folder otherwise Administration permission would be needed.
- For the portable package, extract it anywhere; you can run
env.cmd
to set environment variables or manually set environment variables according to the file. I will useVABS-IDE-root
to denote the installation path.
- Request VABS license from http://analyswift.com/software-trial/. VABS is a commercial code. Put the license in
VABS-IDE-root
.
Example 1: Capability of PreVABS (UH60A airfoil)
This figure shows the construction model of PreVABS input. You should prepare 5 input files: basepoints, baseline.xml, layup.xml, material.xml, section.xml. Current version of PreVABS also support combining all inputs in a single XML file.
- Get into
VABS-IDE-root\examples\ex_uh60a
- Open a command prompt.
- Run
prevabs -i uh60a_section.xml -h -v -e
- This will build the airfoil model and run VABS. The cross-sectional property will be stored in uh60a_section.sg.K. Gmsh GUI will be opened to display the model. airfoil The table below shows the 4×4 stiffness matrix for of classical beam model.
$$\begin{array} {|r|r|}\hline 4.2369E+07 & -8.1467E+03 & 4.6272E+05 & -1.7006E+07 \\ \hline -8.1467E+03 & 1.6166E+05 & -7.2404E+01 & 2.2351E+03 \\ \hline 4.6272E+05 & -7.2404E+01 & 1.4981E+05 & -1.8577E+05 \\ \hline -1.7006E+07 & 2.2351E+03 & -1.8577E+05 & 1.2608E+07 \\ \hline \end{array}$$
PreVABS features non-structural mass, ply drops, filler materials, build layups from sub-layups.
Example 2: Optimization with Dakota
This example will use dakota to explore the material choice, orientation angles, layers of the two webs and wing box of the UH60A airfoil to match the expected stiffness.
- Get into
VABS-IDE-root\examples\ex_uh60a_opt
- Open a command prompt.
- Run
dakota -i uh60a_opt_soga.in -o uh60a_opt_soga.out
- Read uh60a_opt_soga.out for the optimized design and error. Among two laminas IM7 of 0.001 inch thickness and IM7 of 0.0008 inch thickness. The latter one is chosen. The optimized orientations angles of the 5 studied layers are
$$\begin{array}{|r|r|} \hline 7.6717123936E+01\\ \hline -4.7058626057E+01\\ \hline 4.0018921476E+00\\ \hline -8.5918454543E+01 \\ \hline 3.4209723197E+01 \\ \hline \end{array}$$
Overall, the desired stiffness is reached within 2% error.
Summary
The framework is for design and optimization of composite airfoil. It combines the best of tool in several fields. PreVABS is a composite blade parametrized design tool. VABS is an infamous commercial code for beam cross-sectional analysis. Dakota provides versatile methods for optimization. You are welcomed to try it out and make suggestions.