Topology Optimization using Optistruct - Solution discreteness & Stress constraint concerns
Good morning to all of you,
I have recently started working with Altair Engineering Softwares (e.g. few months with Student License) and more precisely with HyperWorks & Inspire in the context of last year thesis at Brussels Polytechnic School. The topic of the thesis is the following : 'Building lightweight cobot arm using stress constrained topology optimization'. To do so, I have been through the literature to understand the issues related to strength-based topology optimization such that I know that it is not recommended in a first conceptual design stage. However, I need to play with stress costraint to get my own practical experience on the subject.
I am actually working on static Topology Optimization (TO) of a single robot link by considering the simplest formulation : minimize the mass while limitating the maximum stress below the yield stress of the considered material (e.g. lightweight failure-free design). I have encountered some problems related to the discreteness of the solution as well as to the stress constraint itself. I will try to express my questions as clearly as possible below, do not hesitate to tell me if more information, precision or files are needed for properly understanding and/or answering to the situation.
DISCRETENESS
I want to increase the Discrete Index (DI) of the TO solution in order to obtain a result that can be used for designing a link (e.g. back and white design, 0 or 1 density) that is more representative/accurate with respect to the optimized solution. To do so, I have played with differents parameters (e.g. DISCRETE, OBJTOL, DESMAX & TOPDISC) as suggested in the documentation. However, I have so far only managed to reach a maximum discreteness index DI = 0.28 as it can be seen in the .out file here attached (e.g. ElysaV2ForearmMMSC_MD7DP6DDV1RC002.out & ElysaV2ForearmMMSC.hm).
Is there any other way for improving the solution DI ?
Maybe, a formulation in which mimizing a modified mass function (see below) can be implemented for penalizing intermediate density element as suggested in the Stress-Constrained Structural Topology Optimization with Design-Dependent Loads scientific paper by Edmund Lee.
Another question that I have is linked to Continuation Method that consists in "beginning the optimization with no penalization of intermediate densities (i.e., p = 1) and then to gradually increasing the SIMP penalization parameter until an acceptable black-and-white solution is obtained" according to Edmond Lee. This is used for avoiding that the solution prematurely converges to local minima.
Is there a way for gradually change the density penalty parameter during TO ?
STRESS CONSTRAINT
I would like to increase the p-parameter of the p-norm aggregation stress measure method to avoid the overestimation of the peak (e.g. conservative design) stress that appears when the default value p = 6 is used, even if high value of p is subject to numerical instability. I have seen in the documentation related to Lattice Optimization that the PNORM opticontrol parameter can be modified but I do not see this parameter in the opticontrol panel for solid optimization.
Is PNORM parameter also available for conventional solid TO ?
Is there a way for adjusting the p-parameter in an iterative fashion during TO ?
FREQUENTLY ENCOUNTERED ERROR
I have often faced up the same fatal error (see below) when I was playing with the opticontrol parameters. This error is related to too large compliance and occurs after a certain number of iterations as if a significant change in design variables (e.g. element density) would lead to a too weak stiffness matrix. I am not sure that this is the right explanation. Please find attached an .out file example in which the error happens at iteration 4 as well as the corresponding history .mvw file (e.g. ElysaV2ForearmMMSC_Ultem_Error.out & ElysaV2ForearmMMSC_Ultem_hist_Error.mvw).
What is the exact reason for this error happening and how to tackle it ?
*** ERROR # 312 ***
In static load case 1
the compliance is negative or large 2.1369e+08.
Optimization/buckling analysis cannot be performed.
due to possible rigid body mode.
INFEASIBLE DESIGN (AT LEAST ONE CONSTRAINT VIOLATED).
It is the very first time I ask question on Altair Support Site so I hope I have been sufficiently clear and I have posted this in the right section. Thank you in advance for yours answers.
Best Answer
-
Hi Theo Saclier,
I try to give you the answers to your questions on my best knowledge.Is there any other way for improving the solution DI ?
As I see you already tested the available options DISCRETE, OBJTOL, DESMAX & TOPDISC
the only one thing you can try out is Levelset methodIs there a way for gradually change the density penalty parameter during TO ?
There is no active way to influence it during topology optimization, but in case you are using manufacturing constraints, penalty is automatically increased 2 times during convergence.
Is PNORM parameter also available for conventional solid TO ?
As from the Online Help on PNORM, it is only for Lattice approach
What is the exact reason for this error happening and how to tackle it ?
In most cases this is caused by an insufficient constrained model.
I suggest to run a Normal Modes analysis to detect whether model is ill constrained or parts are not connected.0
Answers
-
Hi Theo Saclier,
I try to give you the answers to your questions on my best knowledge.Is there any other way for improving the solution DI ?
As I see you already tested the available options DISCRETE, OBJTOL, DESMAX & TOPDISC
the only one thing you can try out is Levelset methodIs there a way for gradually change the density penalty parameter during TO ?
There is no active way to influence it during topology optimization, but in case you are using manufacturing constraints, penalty is automatically increased 2 times during convergence.
Is PNORM parameter also available for conventional solid TO ?
As from the Online Help on PNORM, it is only for Lattice approach
What is the exact reason for this error happening and how to tackle it ?
In most cases this is caused by an insufficient constrained model.
I suggest to run a Normal Modes analysis to detect whether model is ill constrained or parts are not connected.0 -
Juergen Kranzeder_21413 said:
Hi Theo Saclier,
I try to give you the answers to your questions on my best knowledge.Is there any other way for improving the solution DI ?
As I see you already tested the available options DISCRETE, OBJTOL, DESMAX & TOPDISC
the only one thing you can try out is Levelset methodIs there a way for gradually change the density penalty parameter during TO ?
There is no active way to influence it during topology optimization, but in case you are using manufacturing constraints, penalty is automatically increased 2 times during convergence.
Is PNORM parameter also available for conventional solid TO ?
As from the Online Help on PNORM, it is only for Lattice approach
What is the exact reason for this error happening and how to tackle it ?
In most cases this is caused by an insufficient constrained model.
I suggest to run a Normal Modes analysis to detect whether model is ill constrained or parts are not connected.Hello Juergen Kranzeder,
First of all I would like to thank you for your answers. I have two subsequent questions that are now running through my mind.
The first one is related to the p-norm parameter.
Do you know if there is a particular reason why the p-norm parameter is only available for lattice structure optimization and not for conventional optimization process ?
The second one concerns too large compliance fatal error.
Does the fact that the error appears after several iterations (e.g. not at the first) not exclude the possibility that the error comes from insufficient constrained model ?
Thank you in advance for your answers.
0 -
Theo Saclier said:
Hello Juergen Kranzeder,
First of all I would like to thank you for your answers. I have two subsequent questions that are now running through my mind.
The first one is related to the p-norm parameter.
Do you know if there is a particular reason why the p-norm parameter is only available for lattice structure optimization and not for conventional optimization process ?
The second one concerns too large compliance fatal error.
Does the fact that the error appears after several iterations (e.g. not at the first) not exclude the possibility that the error comes from insufficient constrained model ?
Thank you in advance for your answers.
For the large/negative compliance or insufficiently constrained issue, are any of your constraints/loads attached to designable material? That may cause that I think?
0 -
Paul Sharp_21301 said:
For the large/negative compliance or insufficiently constrained issue, are any of your constraints/loads attached to designable material? That may cause that I think?
My model corresponds to a cantilever beam (roughly speaking) for which both the load and the constraint have been created on single RBE2 nodes directly attached to non-design material as it can be seen on the attached figure.
0 -
Theo Saclier said:
My model corresponds to a cantilever beam (roughly speaking) for which both the load and the constraint have been created on single RBE2 nodes directly attached to non-design material as it can be seen on the attached figure.
That looks like it is ok in principle, apologies, I had missed that you had attached the model earlier.
I think the cause of your large compliance issue was probably a combination of setting the MINDENS very low (below recommended), DISCRETE very high, and without TOPDISC you have no MINDIM either, while not setting any constraint except for stress. If you have stress as the only requirement and give the design a lot of freedom to have low densities then removing material can remove stress so you can end up with something converging that direction (which will sort of detach your loaded end from the constrained end).
I took a look at your settings, you have a MINDIM by default with TOPDISC, your DDVOPT is redundant (that is referring to discreteness in terms of levels, e.g. in a gauge optimisation, not topology) and reset discrete to 3 (recommendation for Solids)
I would also add a displacement constraint:
Displacement at loading point at the initial increment (90% density fraction throughout) is 0.02mm, if you add a constraint on displacement of 0.2mm, you force the optimisation to use 'some' material, that it then has to get down below your stress target
I think you stated this earlier, but this is only going to give indicative loadpaths, to proceed you really need to interpret these into a design then perform size/shape on those to make sure you meet your stress targets.
1