A way of indirectly constraining the thickness of an airfoil section is to constraint its cross sectional area. This can be a good compromise between allowing sufficient geometric freedom while not letting the airfoil get too thin. For a fixed planform, this also maintains a required wing volume, but is a bit more restrictive than simply a volume constraint as it determines the volume distribution and prevents undesirable exploitation of the volume constraint such as thickening of the wing root. This constraint is a nonlinear constraint, and is activated with jtstrm%secAreaCon = .true., and a secAreaCons.dat file. The file is simply a two column format, with the first column being the span location at which the constraint is applied, and the second is the sectional area value. An example is shown below:
Often, the sectional area of different sections is not known before hand. So, to get the target values, the following procedure is helpful.
Setup the optimization as usual, and set the lower bound for the sectional areas (2nd column values) to 0.0.
Run the optimization just long enough for it to do one function call. When it does the function call it will calculate the sectional area constraints and report the sectional area values in the output file results.sacon as well as in results.scr.
Enter these values in the secAreaCons.dat file.
Reset the optimization case, and submit it with the updated secAreaCons.dat file.
Some notes about the constraint:
It is currently intended for single wings. If multiple wings are present (e.g. wing and tail, strut-braced wing, etc.) the constraint may not function properly there may be multiple surfaces at a given span station.
It assumes low dihedral. The sectional area is calculated in the x-z plane. For winglets or wings with significant dihedral, the calculation won't be accurate.
The sectional area values are in grid units. They are not nondimensionalized with the chord length. So, if the planform changes significantly, e.g. the chord increases, the relative thickness would decrease for a given sectional area.