Discussion Closed This discussion was created more than 6 months ago and has been closed. To start a new discussion with a link back to this one, click here.

Top. Opt. Density model not updating

Hendrik Mechanical Engineering

Please login with a confirmed email address before reporting spam

Hello,

The goal of my study is to maximize the first eigenfrequency of a prestressed plate structure, by using topology optimization (Density model). (objective function = plate.freq)

I have a study with Optimization (MMA), Stationary and Eigenfrequency.
In my Density Model, the Helmholtz filter has been disabled (otherwise the model does not run)

My problem is that the optimization result returns a density model where theta is equal to 0.001 everywhere. Even when a constraint of theta_avg >= 0.5 is applied. The objective function does increase as the model runs, but no influence can be seen on the density.

Kind regards,

Kaap


1 Reply Last Post 2023/04/24 5:26 GMT-4
Kristian Ejlebjærg Jensen COMSOL Employee

Please login with a confirmed email address before reporting spam

Posted: 1 year ago 2023/04/24 5:26 GMT-4

Hi,

The default minimum value of theta_p is 0.001, so it sounds like you are plotting that rather than theta. It is difficult to guess the reason for the described behavior without seeing the model, so I suggest creating a support case. If you forgot to use the controls in the physics, the sensitivity will be zero. You can plot fsens(dtopo1.theta_c) to see how sensitive the objective is to the various controls. Big elements will be more sensitive, so it might make more sense to plot fsens(dtopo1.theta_c)/dvol.

Best regards, Kristian E. Jensen Technical Product Manager, Optimization

Hi, The default minimum value of theta_p is 0.001, so it sounds like you are plotting that rather than theta. It is difficult to guess the reason for the described behavior without seeing the model, so I suggest creating a support case. If you forgot to use the controls in the physics, the sensitivity will be zero. You can plot fsens(dtopo1.theta_c) to see how sensitive the objective is to the various controls. Big elements will be more sensitive, so it might make more sense to plot fsens(dtopo1.theta_c)/dvol. Best regards, Kristian E. Jensen Technical Product Manager, Optimization

Note that while COMSOL employees may participate in the discussion forum, COMSOL® software users who are on-subscription should submit their questions via the Support Center for a more comprehensive response from the Technical Support team.