Skip to content
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

Twist direction inconsistent #212

Closed
DomIno0o opened this issue Sep 5, 2022 · 2 comments
Closed

Twist direction inconsistent #212

DomIno0o opened this issue Sep 5, 2022 · 2 comments

Comments

@DomIno0o
Copy link

DomIno0o commented Sep 5, 2022

Hi,

Describe the bug
The aerodynamic twist is applied in the wrong direction according to right-hand rule (positive twist results in downwards rotation of airfoil). This is also inconsistent with the structural_twist, which is applied with positive structural_twist resulting in upwards rotation of the beam section/B-FoR.

To Reproduce
Input positive twist, negative rotation can be seen in AerogridPlot.

Expected behavior
Twist rotation should follow right hand rule and should be consistent with structural_twist such that positive twist results in upwards rotation of the airfoil.

Additional context
The issue arises because twist is applied before the rotation around the local (B-FoR) z-axis by -rot_angle in generate_strip() in aerogrid.py (line 557-562) (angle between inflow and y-axis in B-FoR around z-axis in B-FoR). I don't quite understand what this rotation is for.
My initial guess was that UVLM requries the aerodynamic grid lines to be parallel to the inflow but as sweep rotation is applied after rot_angle this does not seem to be the case.
One aspect that is realised by the rotation is mirroring of the airfoil, which is necessary because the coordinates in xFoil style (as well as Naca airfoil formulas) are opposite to your definition (xFoil: leading edge shows towards negative x-direction, SHARPy: leading edge shows towards positive y-direction (B-FoR)). However, in my eyes this requires a constant rotation of 180° independent of inflow angle.

@ACea15
Copy link
Collaborator

ACea15 commented Sep 6, 2022

Hi Dominooo,

What you describe is correct. However, right-hand rule does not apply for the twist, the convention is to be consistent with a nose-up or nose-down movement in both left and right wings. If the right-hand rule was to be applied, one wing would pitch up while the other down, with the same value of twist. As you might have noticed, a positive twist leads to a nose-down grid in SHARPy, which might be different from other codes but what is important is that the code takes care of applying this consistently regardless of the wing reference frame (in the very LoC you pointed out), i.e. whether it is the left or the right wing. We should probably document this convention better.
The aerodynamic grid can be indeed rotated with the aero sweep variable. I dont think you need to change this value from the default 0, so that your grid panels align in the x-direction that represents your airfoil. But what you say is right, the y-direction in the B-frame is usually defined towards the leading-edge, it can be changed with the delta_for. I would need more details as to what is the problem with the airfoil definition.

@DomIno0o
Copy link
Author

DomIno0o commented Sep 7, 2022

Hi ACea15,

thanks for your answer.
That does make sense.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants