# 基于ESO方法位移约束下的拓扑优化.rar

• 爱老虎油
了解作者
• matlab
开发工具
• 3KB
文件大小
• rar
文件格式
• 0
收藏次数
• 10 积分
下载积分
• 28
下载次数
• 2018-05-22 16:15
上传日期

• 基于ESO方法位移约束下的拓扑优化
• reddistrib.m
1KB
• ESO.m
2.1KB
• OC.m
1.4KB
• lk.m
837B
• FE.m
1.3KB

%------------------------------------------------------------------------------------- % Ex.8.1.4 % one side with fixly-supported condition for rectangular plate with individual % displacement and frequency constraints %------------------------------------------------------------------------------------- % INITIALIZE nelx=20; % the numbers of elements of x direction nely=48; % the numbers of elements of y direction x(1:nely,1:nelx) = 0.006*ones(nely,nelx); % initialization of thickness of elements a=0.0025; % length of element along x direction b=0.0025; % length of element along y direction p=1e4; % density of material loop = 0; % iteration variable h=0.2; % relaxation factor U44=-0.00015; % constrained displacement change =0.01; q=0.21; % parameter1 % START ITERATION while change>0.0001 loop = loop + 1; xold = x; % FE-ANALYSIS [U,U2]=FE(nelx,nely,xold); % OBJECTIVE FUNCTION AND SENSITIVITY ANALYSIS [KE] = lk; c = 0.; for ely = 1:nely for elx = 1:nelx n1 = (nely+1)*(elx-1)+ely; n2 = (nely+1)* elx +ely; edof = [2*n1-1; 2*n1; 2*n2-1; 2*n2; 2*n2+1; 2*n2+2; 2*n1+1; 2*n1+2]; c = c + 4*((xold(ely,elx)))*p*a*b; dc(ely,elx) = 4*p*a*b; Ue = U([2*n1-1; 2*n1; 2*n2-1; 2*n2; 2*n2+1; 2*n2+2; 2*n1+1; 2*n1+2],1); F2(edof,:)=xold(ely,elx)*KE*Ue; dU(ely,elx)=F2(edof,:)'*U2([edof],2*(nelx+0.5)*(nely+1)+1); end end % Lagrange multiplier lamda=c/(3*abs(U44)); % COMPUTATION OF DISPLACEMENT SENSITIVITIES [U5]=reddistrib(nelx,nely,x,dU,lamda,p,a,b,h); % DESIGN UPDATE BY THE OPTIMALITY CRITERIA METHOD [x]=OC(nelx,nely,x,h,U5,q); % iterated objective function y(loop)=c; % PRINT RESULTS change = abs(4*p*a*b*sum(sum(x))-4*p*a*b*sum(sum(xold)))/abs(4*p*a*b*sum(sum(x))); disp([' It.: ' sprintf('%4i',loop) ' Obj.: ' sprintf('%10.4f',4*p*a*b*sum(sum(x))) ... ' Vol.: ' sprintf('%6.3f',4*sum(sum(x))*a*b)]) % PLOT DENSITIES figure(1) colormap(gray); imagesc(-x); axis equal; axis tight; axis off;pause(1e-6); grid on; figure(2) plot(y) end

• czyyy 2019-02-20 17:39:20
拿着别人之前的程序冒充可靠性拓扑优化，你不觉得厚颜无耻吗，为了一点分一点底线都没有
• OEwfer-2061 2018-05-30 04:02:47
就是想知道那一部分涉及可靠性了？