Page 5 - Demo
P. 5
Planar Truss Examplefor ComrelAdd-onRCPConsult, 2021-2025Page 5% Plot nodal numbersplot(XY(:,1),XY(:,2),'r*');text(XY(:,1),XY(:,2),strcat('N',num2str((1nnp)')),'FontSize',8);% Value of vertical deflection in node N04text(DEF(4,1),DEF(4,2)0.2,sprintf('U = %g m',b(4,2)),'FontSize',8);% Plot vertical loadsn=0;fori=1:nnpquiver(XY(i,1)+d(i,1),XY(i,2)+d(i,2),d(i,1),d(i,2),'k','LineWidth',2,'MaxHeadSize',0.5);% single vector if(d(i,2)>0.001)n=n+1;Pn=strcat('P',num2str(n'));text(XY(i,1)+0.1+d(i,1),XY(i,2)+d(i,2),strcat(Pn,sprintf('=%g N',d(i,2)*40000)),'FontSize',8);% force valueendendcase2% Center plot for internal member forces Nff(2)=figure('Name',tit,'NumberTitle','off','Position',[pxl(3)/4pxl(4)/4pxl(3)/2pxl(4)/2]);figure(ff(2))holdonboxonview(2)% Plot frameaxisequalaxis([-226-210])gridminor% Set a main subtitle of plottext(12.0,8.0,'Internal member forces [N]','FontSize',16,'HorizontalAlignment','center');% Plot internal member force Nfore =1:nfel=leng(e)/2;n=abs(N(e))*0.0000005;X=[l l l l];Y=[-n -n n n];c =cosd(theta(e));s =sind(theta(e));Xrot =X*c -Y*s;Yrot =X*s +Y*c;x=(XY(IEN(e,1),1)+XY(IEN(e,2),1))/2;y=(XY(IEN(e,1),2)+XY(IEN(e,2),2))/2;if(N(e)>=0)co=[1.00.60.5];elseco=[0.50.61.0];endfill(Xrot +x,Yrot +y,co);text(x,y,sprintf('%0.1f N',N(e)),'FontSize',7,'HorizontalAlignment','center');endcase3% Center plot for internal member Tensile stressff(3)=figure('Name',tit,'NumberTitle','off','Position',[pxl(3)/4pxl(4)/4pxl(3)/2pxl(4)/2]);figure(ff(3))holdonboxonview(2)% Plot frameaxisequalaxis([-226-210])gridminor% Set a main subtitle of plottext(12.0,8.0,'Internal member von Mises stress \\sigma_{v} [MPa]','FontSize',16,'HorizontalAlignment','center');% Plot for internal member von Mises stresscmap=jet(21);% prepare color mappingminA=min(abs(N'./Area*1e6));maxA=max(abs(N'./Area*1e6));ddA=maxA-minA;dA=ddA/20;fore =1:nfeSu=abs(N(e)/Area(e)*1e6);l=leng(e)/2;n=Su/ddA*0.2;% height of rectangleX=[-l l l -l];Y=[-n -n n n];c =cosd(theta(e));s =sind(theta(e));Xrot =X*c -Y*s;Yrot =X*s +Y*c;x=(XY(IEN(e,1),1)+XY(IEN(e,2),1))/2;y=(XY(IEN(e,1),2)+XY(IEN(e,2),2))/2;nc=int32((SuminA)/dA0.01)+1;co=cmap(nc,:);% colorfill(Xrot +x,Yrot +y,co,'EdgeColor','none','FaceAlpha',0.7);text(x,y,sprintf('%.0f',Su),'FontSize',7,'HorizontalAlignment','center');end% Color barcolormapjet;colorbar();clim([minA maxA]);end%% Do rest for all plotstitle(strcat('\\fontsize{18}',tit));