![]() |
[求助]显示受力区域
4 个附件
大家好,本人新手,有一个力学问题,请大家多指点。
我做的一个小课题是关于飞机尾翼受力。我把XY平面划定了6个尾翼的区域,然后根据不同的XY值套入相应的公式得到Z值作为所受应力。 做完以后发现所受应力表示出来了,但是无法看出所对应的XY区域。 查help的过程中,希望能找到类似阴影或则light的命令,让所受应力的曲面下产生阴影,或者在mesh(X,Y,Z)的同时能够相应的画出(X,Y)的图像。这样在同一幅图里可以看到受力区域和所受应力,可是没有找到相应的表达。:( 不知道大家能不能解答这个问题。祝大家晚上看球愉快! 附:受应力图(2张);matlab的code. CODE: x02=549; x03=200; x04=49; x05=295; h1=280; h2=545; h3=610; h4=1415; h5=1405; h6=1478; xi=-x02:1:x03; zi=0:1:h6; wquer=203; g=9.8; [X,Z]=meshgrid(xi,zi); for i=1:1:size(X,1) for j=1:1:size(X,2) x=xi(j); z=zi(i); % Area 1 if(x<=0 && z<=h1 && z+(h1/x02)*x>=0) b=x02*(z/h1); pquer=2*wquer*g; Y(i,j)=公式1; % Area 2 elseif(x<=0 && z>h1 && z<=h2 && z<=x*(h6-h1)/(x02-x05)+x02*(h6-h1)/(x02-x05)+h1) b=x02+((z-h1)/(h6-h1))*(x05-x02); pquer=2*wquer*g; Y(i,j)=公式2; % Area 3 elseif(x<=0 && z>h2 && z<=h3 && z<=x*(h6-h1)/(x02-x05)+x02*(h6-h1)/(x02-x05)+h1) a=x03*(z-h2)/(h3-h2); b=x02+((z-h1)/(h6-h1))*(x05-x02); pquer=2*wquer*g*(a+b)/(5*a+b); Y(i,j)=公式3.1; elseif(x>0 && z<=h3 && z>=((h3-h2)/x03)*x+h2) a=x03*(z-h2)/(h3-h2); b=x02+((z-h1)/(h6-h1))*(x05-x02); pquer=2*wquer*g*(a+b)/(5*a+b); Y(i,j)=公式3.2; % Area 4 elseif(x>0 && z>h3 && z<=h5 && z<=-((h5-h3)/(x03-x04))*x+((h5-h3)/(x03-x04))*x03+h3) a=x03+((z-h3)/(h5-h3))*(x04-x03); b=x02+((z-h1)/(h6-h1))*(x05-x02); pquer=2*wquer*g*(a+b)/(5*a+b); Y(i,j)=公式4.1; elseif(x<=0 && z>h3 && z<=h5 && z<=x*(h6-h1)/(x02-x05)+x02*(h6-h1)/(x02-x05)+h1) a=x03+((z-h3)/(h5-h3))*(x04-x03); b=x02+((z-h1)/(h6-h1))*(x05-x02); pquer=2*wquer*g*(a+b)/(5*a+b); Y(i,j)=公式4.2; % Area 5 elseif(x>0 && z>h5 && z<=-((h4-h5)/x04)*x+h4) a=x04+((z-h5)/(h4-h5))*(0-x04); b=x02+((z-h1)/(h6-h1))*(x05-x02); pquer=2*wquer*g*(a+b)/(5*a+b); Y(i,j)=公式5.1; elseif(x<=0 && z>=h5 && z<h4 && z<=x*(h6-h1)/(x02-x05)+x02*(h6-h1)/(x02-x05)+h1) a=x04+((z-h5)/(h4-h5))*(0-x04); b=x02+((z-h1)/(h6-h1))*(x05-x02); pquer=2*wquer*g*(a+b)/(5*a+b); Y(i,j)=公式5.2; % Area 6 elseif(z>=h4 && z<=-((h4-h5)/x04)*x+h4 && z<=x*(h6-h1)/(x02-x05)+x02*(h6-h1)/(x02-x05)+h1) b=x02+((z-h1)/(h6-h1))*(x05-x02)-x05*(z-h4)/(h6-h4); pquer=2*wquer*g; Y(i,j)=公式6; else Y(i,j)=NaN; end end end figure; mesh(-X,Z,Y); view(0,120) |
所有时间均为北京时间。现在的时间是 12:24。 |
Powered by vBulletin
版权所有 ©2000 - 2025,Jelsoft Enterprises Ltd.