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/)
-   -   Mesh sensitivity diverged (discrete adjoint optimization) (https://www.cfd-online.com/Forums/su2-shape-design/193327-mesh-sensitivity-diverged-discrete-adjoint-optimization.html)

WillemFloris September 22, 2017 03:55

Mesh sensitivity diverged (discrete adjoint optimization)
 
2 Attachment(s)
Hello guys,

After successfully optimizing an incompressible flow problem with the continuous adjoint optimizer, I would like to switch to the discrete adjoint optimizer. However there occurred some errors during the simulation. For example, in the ./DSN_001/log_ADJOINT.out, Sens_Press and Sens_AoA are 0.00. Furthermore at the end of this file it shows the following error:
Attachment 58558

However the surface sensitivities seems to be ok:
Attachment 58557

Is anyone familiar to this problem or does anyone know how to solve this problem? Any advice would be great!

Cheers,

Floris

talbring September 25, 2017 08:34

Hi,

Sens_Press and Sens_AoA are always zero when you use the incompressible solver. However, the mesh sensitivity should not diverge ... can you attach the log_ADJOINT.out and possibly also the config_DOT_AD.cfg ?

WillemFloris September 28, 2017 02:30

1 Attachment(s)
Hi Tim,

Yes, ofcourse.

After I had posted this thread, I tested multiple cases trying different parameters and different meshes. I discovered that switching to the discrete adjoint optimizer difficulties arises when using the same high aspect ratio (~4000) close to the surface. After I changed the aspect ratio to (~2500), the mesh converges and the discrete adjoint optimizer did his job!:)

I removed the iterations 5001-1499 from the log file in order to not cross the size limitation; Attachment 58714.

Cheers!

Floris van der Schuur

WillemFloris October 5, 2017 05:52

1 Attachment(s)
Hi,

In the latter post I described that the discrete adjoint optimizer was working. Although it was working, it did not deform the shape. I thought it is just a matter of scaling, so I tried dozens of scaling factors but this all was without success.

Then I checked the log_adjoint.out and I saw that the mesh sensitivity computation was converged, although the value of FGMRES residual was huge; after 1000 iterations it was ~0.02. Subsequently the volumes of the grid element were computed, these had an error of 1.144E+16.

The resulting efficiency gradients at each design variable contain values between -1E10 and -1E13. Which is quite high when these gradients are compared with the continuous adjoint optimization (1E0-1E3).

I have tried to lower the gradients by lowering the scale factor for the objective function. However this did not help much.

Does anybody know why these gradients are that large? Or does anyone know another way to improve the performance of the discrete adjoint optimizer for an incompressible case?

Kind regards,

Floris

log_adjoint.out & config_DOT_AD.cfg: Attachment 58822

WillemFloris October 17, 2017 10:23

5 Attachment(s)
Hi Tim,

For the following test cases I disabled the transition. Here I am only testing the influence of compressibility to the performance of the optimizer:
Configure file:Attachment 59025

Compressible config_DOT_AD:Attachment 59027
Compressible log adjoint file:Attachment 59028

Incompressible config_DOT_AD:Attachment 59024
Incompressible log adjoint file:Attachment 59023


Furthermore I compared the compressible discrete gradient determination with the finite difference gradient. This should be approximately the same. I have to note that different objective scaling factors are used (Discrete:1E-1, finite difference: 1E-2) and different DV scaling factors (Discrete: 1E3, finite difference: 1E2) but the different DV scaling should not matter in this stage. So I expected a difference of order 1, however the gradients of the discrete are amazingly high ~3E18 while the gradients of the finite difference are ~3E6. (these gradients are the efficiency gradient for each control point.) Why is the discrete adjoint over-predicting the gradient?

Kind regards,

Floris


All times are GMT -4. The time now is 05:49.