OpenAeroStruct
OpenAeroStruct copied to clipboard
Fix displacement transfer
Type of issue
What types of issue is it?
- Bugfix (non-breaking change which fixes an issue)
Description
The implemented displacement transfer scheme doesn't match the scheme in the OAS paper. (But, this is not a major concern for reasonably fine meshes.)
Current behavior
See #322
Expected behavior
The work done for the aero and structures should match for all mesh levels (see #322).
I implemented a displacement transfer that is (almost) identical to the scheme in the paper. Now I confirmed that the new implementation satisfies the work conservation even with a coarse mesh.
With a 5*2 mesh of CRM, the relative difference between aero and structural works is:
v2.2.0: 0.74%
v2.2.1: 29.0%
Newest: 0.0047%
I believe the tiny difference comes from the nonlinear rotational transfer of the code, as opposed to the linear assumption in the paper. But this effect is small enough, and I'm not going to fix this part.
Now I'll be implementing the partial derivatives and updating the doc as needed. This will take a while because I had to change the mesh data structure throughout the VLM module.