Note that either the upper/lower surface class shape parameter DV can be defined (e.g., "N1_upper"), or the DV for both the upper and lower surfaces’ class shape parameter can be defined (e.g., "N1"), but not both.įor this tutorial, we’ll add upper and lower CST coefficients, the two class shape parameters applied to both the upper and lower surfaces, and the chord length. "chord": chord length in whatever units the point set length is defined and scaled to keep the leading edge at the same position (adds a single DV) "N2_lower": second class shape parameters for lower surface (adds a single DV) "N2_upper": second class shape parameters for upper surface (adds a single DV) "N1_lower": first class shape parameters for lower surface (adds a single DV) "N1_upper": first class shape parameters for upper surface (adds a single DV) "N2": second class shape parameter for both upper and lower surfaces (adds a single DV) "N1": first class shape parameter for both upper and lower surfaces (adds a single DV) "lower": lower surface CST coefficients (specify dvNum to define how many) "upper": upper surface CST coefficients (specify dvNum to define how many) The available design variables types (not case sensitive) are When the addDV method is called, we pass the name of the design variable we’d like to use and the type. The next step is to tell the DVGeometr圜ST object which design variables to use. If your geometry is oriented differently, the indices can be set here with the idxChord and idxVertical optional arguments. It then fits a spline to the upper and lower surfaces that is used to determine which points in a point set are on the upper surface and which are on the lower.įinally, it computes the CST coefficients that achieve the best fit of the input airfoil (assuming the class shape parameters are 0.5 and 1.0).ĭVGeometr圜ST assumes that the first index in each point coordinate (a.k.a the \(x\) coordinate) is the chordwise coordinate and the second (a.k.a the \(y\) coordinate) is the vertical. It identifies the trailing edge to figure out whether it has a sharp or blunt trailing edge. The initialization analyzes the airfoil coordinate data to determine airfoil properties and fit the CST coordinates to the airfoil to provide a starting point. join ( curDir, "naca2412.dat" ) nCoeff = 4 # number of CST coefficients on each surface DVGeo = DVGeometr圜ST ( airfoilFile, numCST = nCoeff ) dirname ( _file_ ) # directory of this script airfoilFile = os. # Initialize the DVGeometr圜ST object curDir = os. We also provide the number of CST coefficients that will be used to parameterize the upper and lower surfaces (in this case we use four for each surface). We provide the dat file’s name, which is used as the initial airfoil shape. We begin by initializing the DVGeometr圜ST object. The airfoil is not rotated (trailing edge and leading edge are close to \(y = 0\)) The airfoil’s leading edge is on the left (minimum \(x\)) and trailing edge is on the right (maximum \(x\)) The pointset geometry is exclusively an extruded shape (no spanwise changes allowed) The initial airfoil dat file is ordered continuously around the airfoil and the beginning and end of the list is the trailing edge (no jumping around, but clockwise vs. This parameterization makes the following assumptions: This may result in unexpected optimizer behavior, such as adjacent CST design variables ending up at very large equal and opposite values. Note that while the CST parameterization is easy to set up and use, it may not be the best choice for all applications.Īs we increase the number of CST coefficients that parameterize the airfoil shape, the parameterization becomes poorly conditioned. Next, we add pointsets that will be deformed when the airfoil shape is updated.įinally, we can change the variables to update the airfoil shape and associated pointsets. Setting up a CST parameterization requires only an airfoil dat file, so initialization is straightforward.Īfter the DVGeometr圜ST object is initialized with the airfoil dat file, we add design variables. In addition to CST coefficients, it allows the user to add design variables for the chord length and class shape parameters. PyGeo includes a Class-Shape Transformation (CST) implementation for airfoil parameterization called DVGeometr圜ST.
0 Comments
Leave a Reply. |
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |