function idum = PlotaRede(coord, conec, P, C, flag, xmin,xmax,ymin,ymax,str,pre) nv=length(coord); for i=1:nv xx(2*i-1,1) = coord(i,1); xx(2*i,1) = coord(i,2); end %% plota estado xx [nb aux] = size(conec); hold on; for i=1:nb xyloc(1,1) = xx(2*conec(i,1)-1); xyloc(1,2) = xx(2*conec(i,1)); xyloc(2,1) = xx(2*conec(i,2)-1); xyloc(2,2) = xx(2*conec(i,2)); plot(xyloc(:,1),xyloc(:,2),str); if( P(conec(i,1)) <= P(conec(i,2)) ) u(i,1) = xx(2*conec(i,1)-1) - xx(2*conec(i,2)-1); v(i,1) = xx(2*conec(i,1)) - xx(2*conec(i,2)); else u(i,1) = xx(2*conec(i,2)-1) - xx(2*conec(i,1)-1); v(i,1) = xx(2*conec(i,2)) - xx(2*conec(i,1)); end vazoes(i) = C(i)*abs(P(conec(i,1)) - P(conec(i,2))); scale = norm([u(i) v(i)]); u(i) = u(i) / scale; v(i) = v(i) / scale; cx(i,1) = 0.5 * (xx(2*conec(i,1)-1) + xx(2*conec(i,2)-1)); cy(i,1) = 0.5 * (xx(2*conec(i,1)) + xx(2*conec(i,2))); end %% plot pressures on each node if(flag == 0) text(xx(1:2:end)+0.03, xx(2:2:end)+0.03, num2str(P,2)); end %% plot arrows indicating the flux direction quiver(cx,cy,u,v,0.5); if(flag ~= 0) % if desired print the flow rates text(cx, cy, num2str(vazoes',3)); end axis([xmin xmax ymin ymax]); hold off; end