Optimization of a simple composite structure
이전 댓글 표시
Dear all,
I am new in Matlab, and I'm looking for some help to solve the following problem.
I have to minimize the deflection of a composite structure by changing the value of the fibre angle (theta) in one of its layer. Theta can vary between -90 and 90. I don't know the analytical function of the deflection of the structure but I can obtain it with a finite element analysis.
For example, if theta is 0, i know that the deflction is .0175 mm;
if theta is -45, the deflection is 0.0237 mm;
and so on...
Thank you for your time, and looking forward to hearing from you!
답변 (1개)
Torsten
2023년 2월 14일
1 개 추천
Why not varying the angle between -90 and 90 in steps of delta_theta and choosing the value of minimum deflection ?
Do the finite element computations take too long for small increments of delta_theta ?
댓글 수: 6
structeng
2023년 2월 14일
structeng
2023년 2월 14일
And this works already ? You can pass angles from MATLAB to Abaqus and deflections from Abaqus to MATLAB interactively ?
Then just start MATLAB with a guess for the angle. In the objective function of the optimizer you choose in MATLAB (e.g. fminsearch, fmincon), you will get passed an angle for which you have to call Abaqus to get the corresponding deflection. The deflection you get back from Abaqus is then passed back to MATLAB. The optimizer will generate a new suggestion for the angle, pass it to the objective function, Abaqus computes the deflection and so on until MATLAB claims to have found the optimal angle.
But I'm still convinced that calling Abaqus in increments of 5 degree, e.g., for the angle will be faster and less error prone.
structeng
2023년 2월 14일
angle0 = 15;
angle = fmincon(@obj,angle0)
function beam_deflection = obj(angle)
beam_deflection = abaqus(angle); % here is the coupling between the two programs
end
카테고리
도움말 센터 및 File Exchange에서 Mathematics에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!