86 lines
3.0 KiB
Matlab
86 lines
3.0 KiB
Matlab
function plotDis_3D_to_2D_new(i, r, OutputRs, type)
|
|
coordinate=r.coordinates;
|
|
nodes=r.nodes;
|
|
cell_divided_by_fracture_flag = r.cell_divided_by_fracture_flag;
|
|
nmc = size(nodes,1);
|
|
% nel = size(nodes,2);
|
|
nel = 4;
|
|
if type == 1
|
|
v = OutputRs{i}.p;
|
|
else
|
|
v = 1-OutputRs{i}.sw;%含油饱和度
|
|
end
|
|
number_divided_cells = size(cell_divided_by_fracture_flag,1);
|
|
dis = zeros(nel, nmc-number_divided_cells);
|
|
x = zeros(nel, nmc-number_divided_cells);
|
|
y = zeros(nel, nmc-number_divided_cells);
|
|
the_numbering = 0;
|
|
for i = 1 :nmc
|
|
if ~ismember(i,cell_divided_by_fracture_flag)
|
|
the_numbering = the_numbering +1;
|
|
for j = 1 :nel
|
|
x(j, the_numbering) = coordinate(nodes(i,j), 1);
|
|
y(j, the_numbering) = coordinate(nodes(i,j), 2);
|
|
if j == 3
|
|
x(j, the_numbering) = coordinate(nodes(i,4), 1);
|
|
y(j, the_numbering) = coordinate(nodes(i,4), 2);
|
|
end
|
|
if j == 4
|
|
x(j, the_numbering) = coordinate(nodes(i,3), 1);
|
|
y(j, the_numbering) = coordinate(nodes(i,3), 2);
|
|
end
|
|
dis(j, the_numbering) = v(i);
|
|
end
|
|
end
|
|
end
|
|
% 被裂缝剖分的网格绘图
|
|
nel = 3;
|
|
% if type == 1
|
|
% v = OutputRs{i}.p;
|
|
% else
|
|
% v = 1-OutputRs{i}.sw;%含油饱和度
|
|
% end
|
|
number_divided_cells = size(cell_divided_by_fracture_flag,1);
|
|
dis_division = zeros(nel, 2*number_divided_cells);
|
|
x_division = zeros(nel, 2*number_divided_cells);
|
|
y_division = zeros(nel, 2*number_divided_cells);
|
|
the_numbering_division = 0;
|
|
for i = 1 :nmc
|
|
if ismember(i,cell_divided_by_fracture_flag)
|
|
the_numbering_division = the_numbering_division +2;
|
|
% for j = 1 :nel
|
|
x_division(1, the_numbering_division-1) = coordinate(nodes(i,1), 1);
|
|
y_division(1, the_numbering_division-1) = coordinate(nodes(i,1), 2);
|
|
x_division(2, the_numbering_division-1) = coordinate(nodes(i,4), 1);
|
|
y_division(2, the_numbering_division-1) = coordinate(nodes(i,4), 2);
|
|
x_division(3, the_numbering_division-1) = coordinate(nodes(i,3), 1);
|
|
y_division(3, the_numbering_division-1) = coordinate(nodes(i,3), 2);
|
|
dis_division(1:3, the_numbering_division-1) = v(i)*ones(3,1);
|
|
|
|
x_division(1, the_numbering_division) = coordinate(nodes(i,1), 1);
|
|
y_division(1, the_numbering_division) = coordinate(nodes(i,1), 2);
|
|
x_division(2, the_numbering_division) = coordinate(nodes(i,2), 1);
|
|
y_division(2, the_numbering_division) = coordinate(nodes(i,2), 2);
|
|
x_division(3, the_numbering_division) = coordinate(nodes(i,4), 1);
|
|
y_division(3, the_numbering_division) = coordinate(nodes(i,4), 2);
|
|
|
|
dis_division(1:3, the_numbering_division) = v(nmc+the_numbering_division/2)*ones(3,1);
|
|
% end
|
|
end
|
|
end
|
|
% fill(x,y,dis,'EdgeAlpha',1);
|
|
figure('color','w');
|
|
fill(x,y,dis,'EdgeColor','interp');
|
|
hold on;
|
|
fill(x_division,y_division,dis_division,'EdgeColor','interp');
|
|
xlabel( 'x, m' );
|
|
ylabel( 'y, m' );
|
|
axis equal;
|
|
axis tight
|
|
xlim([0,60]);
|
|
ylim([0,60]);
|
|
colorbar
|
|
colormap jet
|
|
% fill(x,y,dis);
|
|
% axis off
|