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

Sensitivities discrepancies with rotType=7 #74

Open
marcomangano opened this issue Mar 16, 2021 · 1 comment
Open

Sensitivities discrepancies with rotType=7 #74

marcomangano opened this issue Mar 16, 2021 · 1 comment
Labels
bug Something isn't working

Comments

@marcomangano
Copy link
Contributor

Description

In some corner parametrization cases we have observed that when swtiching to rotType=7 (instead of using rotType=0), the total derivatives become unusable, despite the geometry deformations being consistent and the FD test showing negligible changes in value.

Posting to make the user base aware of potential issues with this setting, I apologize for posting such a general statement here.

Steps to reproduce issue

This is actually the hardest part of the issue.. this has been only observed on some wind turbine sensitivity studies I carried out for this dev PR using another (at the time of writing) unmerged ADflow bugfix.
Unfortunately I do not have the bandwidth and the necessary implementation understanding to figure out where this error is coming from, but I am leaving this here for reference. There is probably some non-linearity or "non-commutativeness" coming from the operations within rotType=7 that was exacerbated by my sensitivity studies.
Hope to come back on this some time soon.

Current behavior

An example of how off the derivatives can be:

FD derivative - step 1e-2: 115540.23375306278
adjoint derivative (optimization-safe): 119087.22965122
adjoint derivative (rotType=7): 196336.67968909

Expected behavior

The derivatives should be consistent with the reference values!!

Code versions

pyGeo v 1.4.0

@sseraj
Copy link
Contributor

sseraj commented Mar 8, 2023

Commenting here for documentation purposes. I tested the rotType=7 derivatives with just rot_theta for my case, and they match finite difference to 6 digits. The issue could be related to using multiple rotations or something else that my case does not cover.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

No branches or pull requests

3 participants