CFD Online Discussion Forums

CFD Online Discussion Forums (https://www.cfd-online.com/Forums/)
-   SU2 Shape Design (https://www.cfd-online.com/Forums/su2-shape-design/)
-   -   Parametric surface deformations for optimization (https://www.cfd-online.com/Forums/su2-shape-design/200165-parametric-surface-deformations-optimization.html)

tomp1993 March 26, 2018 11:08

Parametric surface deformations for optimization
 
Hi All,

I am currently trying to set up an adjoint-based optimization using SU2 v6;
However, I would like to specify my own parametric design variable for the surface shape; rather than use any of the in-built ffd-style design variables.
I have been looking over grid_movement_structure.cpp to find a way of implementing this and have found a couple of possible solutions within my programming skill level.

firstly: CSurfaceMovement::SetExternal_Deformation - this looks like it is set up for unsteady mesh movement but could it be used with some external deformation file to perform shape optimization? if so, what format should this file be in and how should i ensure it is used by the cfg file?

secondly: CSurfaceMovement::SetParametricCoord - The title seems more promising however this looks like it actually utilises the FFD box definitions which i do not want to do.

finally: I have read in https://su2.stanford.edu/papers/AIAA_Paper_ASM_2012.pdf that a software package called pyCAPRI was used to define two parametric design variables for the N+2 supersonic configuration; fuselage width and inboard sweep angle. This is much closer than anything i have seen to the types of parameters i would like to use with SU2.

is there any more information available as to how i might be able to define simple geometric design variables such as this (maybe using external software?) for the shape optimization; without necessarily having to add more code to grid_movement_structure.cpp ? (really want to avoid doing this if at all possible)

Many thanks,
Tom Pratt

fgal January 19, 2024 05:57

Any updates?
 
Hello,

I have the same objective: I have a custom shape parametrization with derivatives and I want to use the existing mesh deformation.

Has anyone managed to do it?

It seems to me that the code in the driver has to be changed to introduce the surface deformation but it is not clear how.

https://github.com/su2code/SU2/blob/...tionDriver.cpp

Can anyone please help?

Thanks
François Gallard

bigfootedrockmidget January 19, 2024 07:27

So you want to use the output of the adjoint and go with this information to an external geometry modeler and deform the CAD directly (CAD based adjoint optimization)?



It is not something that runs out-of-the-box with the current scripts and interface that we have in SU2, but several groups have implemented this and similar things in their own workflow, usually tailored to specific external packages.



For detailed implementation advise, maybe join the su2devteam on slack or join one of the weekly developer meetings online.

fgal January 19, 2024 09:09

Yes it is what I want to acheive.

Thank you very much for your answer.

Could you please give me the names of the projects / packages that follow such approaches if there are any public communications or papers? Or even better open source implementations.

Best Regards
François Gallard

bigfootedrockmidget January 19, 2024 09:33

Hi,


There was a recent presentation on the SU2 conference using parablade. It is still on my list of things to try out.



https://su2foundation.org/su2conference2023/

fgal January 19, 2024 11:25

Great thank you.

From the presentations list I also found one example that seems to fit this need from the Python wrapper:
https://www.youtube.com/watch?v=tEDP...-OpenSourceCFD

8 min 24

Best Regards
François


All times are GMT -4. The time now is 14:47.