-
Notifications
You must be signed in to change notification settings - Fork 99
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Separation constraint using surface vector projection #238
base: main
Are you sure you want to change the base?
Changes from 81 commits
b48133b
b930796
ca5676b
ef11f9a
0275e36
1db5cde
4b9fa06
f0e3d71
89c72ee
18bad41
a03b058
523afd1
105a716
bd0af07
0c70701
0f845cf
47233a3
0547d47
3b868ea
2efdf90
7967bb9
509a738
1e94bbe
6f76399
087c976
d8d1cff
8c6d62e
f4156b6
4f001ca
598041c
b745855
796e106
17626fb
6803a7e
d3ef851
e7c83b5
8534e68
ca95d3e
aac508a
a5263cf
fa38741
6083b9f
efd6e88
f4d9143
28f0a80
b5fb379
a031566
b15e6ef
0f321cc
eedd90e
e03f5d9
536ac7e
eb200d2
46d6fae
793be68
92f3019
edaf203
e68d96a
1730783
5de0dcf
fa800e4
5c57495
0e3cb76
7ce61ae
3aa33d0
6631194
a40b949
45d70fa
2e82c05
0a0ba4f
cd72f4e
bc6fae1
0727921
54bb2bf
067e6e1
c7dc2eb
d207556
941453b
a1d1196
3332dc8
43e22ce
d694c11
5537040
e8a1652
9920bb6
65a05ba
94d01d8
572c5fd
60e312b
b2fc0e0
5dac06d
afb5bfd
be47be2
d3b1ce7
84dc3cb
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -1527,16 +1527,42 @@ verifyExtra: | |
This option is for debugging the adjoint only. | ||
It is used to verify dIda. | ||
|
||
sepSensorModel: | ||
desc: > | ||
This option allows to pick 3 separation sensor models. | ||
heaviside: Based on (Kenway2017b) | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Also briefly explain this method like you explained the other 2 options. |
||
surfvec: Surface vector projection. The separation is based on how much the local flow velocity deviates from the desired flow direction. | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. I have several problems with this explanation. First, the sweep angle is not explained. Why would we want to correct for sweep in the first place? You say this is formulated for 3d, but applies to airfoils. That makes no sense. If it is only applicable to airfoils say so. How the value varies from 0 to 1 is not well explained. Again, this is also with how the sweep is defined. What is a common use case? Do you constrain separation to be below 0.0 or 0.5? |
||
We project the freestream over the desired surface and compute the desired flow direction based on the sweep angle of the wing (``sepSweepAngleCorrection``) in 3D cases (For airfoils, the desired direction would be the projected freestream vector over the airfoil surface). | ||
Then we compute the deviation between the local flow velocity and this desired direction. We use a separation metric to integrate this computation over the desired surface. | ||
``0`` means no separation and ``1`` means that the flow is fully separated. | ||
Although this method is formulated for 3D cases, it is appropriate for airfoils. However, for 3D cases, please use ``surfvec_ks`` option, which has KS aggregation to aggregate the maximum separation sensor value to be constrained. This option will effectively alleviate separation anywhere on the interested surface and provide separation free design. On the other hand, ``surfvec`` option may not guarantee to achieve separation free design when the separation happens in a very smaller region and thus, the integration over this region may not violate the constraint. | ||
surfvec_ks: This method uses similar formulation to ``surfvec`` to compute the maximum separation sensor value on a desired surface instead of integrating over this surface. | ||
Therefore, this maximum separation sensor value from KS aggregation function can be constrained to alleviate separation. | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. change to "... function can be used to constrain separation." |
||
|
||
sepSensorMaxRho: | ||
desc: > | ||
The rho parameter used for the KS aggregation used for computing maximum separation sensor value in ``surfvec_ks`` model in ``sepSensorModel``. | ||
KS aggregation is used to compute the differentiable max separation sensor within the given family group. | ||
A higher rho value will approach the actual max separation sensor value more accurately, at the cost of a more nonlinear function. | ||
|
||
sepSensorOffset: | ||
desc: > | ||
The offset value used for the separation sensor. | ||
The offset value used for the separation sensor in ``heaviside`` model in ``sepSensorModel``. | ||
See "Buffet-Onset Constraint Formulation for Aerodynamic Shape Optimization" (Kenway2017b) for more details. | ||
|
||
sepSensorSharpness: | ||
desc: > | ||
The sharpness parameter for the separation sensor. | ||
The sharpness parameter for the separation sensor ``heaviside`` model in ``sepSensorModel``. | ||
See "Buffet-Onset Constraint Formulation for Aerodynamic Shape Optimization" (Kenway2017b) for more details. | ||
|
||
sepSweepAngleCorrection: | ||
ArshSaja marked this conversation as resolved.
Show resolved
Hide resolved
|
||
desc: > | ||
This option is only for ``surfvec`` and ``surfvec_ks`` separation models in ``sepSensorModel``. | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. what is the sweep direction? Do you account for fwd or bwd sweep? Do you account for lift direction being y or z? This explanation needs to be a lot better. Right now it is not clear at all what it is doing. |
||
This angle (in degrees) is for 3D cases only when the wing has a sweep. | ||
For airfoils, by default, this is ``0``. | ||
For a 3D case, the sweep angle of the wing (25% chord sweep angle) is recommended. | ||
It represents the desired flow direction over the surface, which is normal to quarter chord line. | ||
|
||
computeCavitation: | ||
desc: > | ||
Whether or not to compute cavitation related cost functions, which are `cavitation` and `cpMin`. | ||
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
change to "pick one of 3 separation sensor methods".