1adj = load('cell_to_node_quad.txt') + 1; %% load node adjacency table, increment by 1 for 1-based indexing 2 3nodes = load('nodes.txt'); %% load node coordinates 4 5data_obj = importdata('state.txt', ' ', 2); %% we need to skip the first two lines 6state = data_obj.data; 7data_obj = importdata('map_state.txt', ' ', 9); %% we need to skip the first 9 lines 8map_state = data_obj.data; 9map_state = map_state(1:2:end)+1; 10[tmp, state_permute] = sort(map_state); 11state = state(state_permute); %% we need to permute the state according to parallel maps 12 13N = 3*length(nodes); 14% Extract x-velocity 15Ux = state(1:3:N); 16% Extract y-velocity 17Uy = state(2:3:N); 18% Extract pressure 19P = state(3:3:N); 20 21figure, 22trisurf(adj, nodes(:,1), nodes(:,2), Ux); 23shading interp; 24view(0,90) 25axis equal 26axis tight 27 28figure, 29trisurf(adj, nodes(:,1), nodes(:,2), Uy); 30shading interp; 31view(0,90) 32axis equal 33axis tight 34 35figure, 36trisurf(adj, nodes(:,1), nodes(:,2), sqrt(Ux.^2 + Uy.^2)); 37shading interp; 38view(0,90) 39axis equal 40axis tight 41 42figure, 43trisurf(adj, nodes(:,1), nodes(:,2), P); 44shading interp; 45view(0,90) 46axis equal 47axis tight 48 49figure, 50quiver(nodes(:,1), nodes(:,2), Ux, Uy); 51axis equal 52axis tight 53 54data_obj = importdata('control.txt', ' ', 2); %% we need to skip the first two lines 55control = data_obj.data; 56data_obj = importdata('map_control.txt', ' ', 9); %% we need to skip the first 9 lines 57map_control = data_obj.data; 58map_control = map_control(1:2:end)+1; 59[tmp, control_permute] = sort(map_control); 60control = control(control_permute); %% we need to permute the control according to parallel maps 61 62% Extract x-velocity 63Zx = control(1:3:N); 64% Extract y-velocity 65Zy = control(2:3:N); 66% Extract pressure 67P = control(3:3:N); 68 69figure, 70trisurf(adj, nodes(:,1), nodes(:,2), Zx); 71shading interp; 72view(0,90) 73axis equal 74axis tight 75 76figure, 77trisurf(adj, nodes(:,1), nodes(:,2), Zy); 78shading interp; 79view(0,90) 80axis equal 81axis tight 82 83figure, 84trisurf(adj, nodes(:,1), nodes(:,2), P); 85shading interp; 86view(0,90) 87axis equal 88axis tight 89 90figure, 91quiver(nodes(:,1), nodes(:,2), Zx, Zy); 92axis equal 93axis tight 94 95figure, 96idx = find((nodes(:,1) == 1) .* (nodes(:,2) <= 0.5)); 97ZX = zeros(size(Zx)); ZX(idx) = Zx(idx); 98ZY = zeros(size(Zy)); ZY(idx) = Zy(idx); 99quiver(nodes(:,1), nodes(:,2), ZX, ZY); 100axis equal 101axis tight 102xlim([0.6,1.2]); 103ylim([-0.2,0.7]); 104 105figure, 106idx = find((nodes(:,1) == 1) .* (nodes(:,2) <= 0.5)); 107UX = zeros(size(Ux)); UX(idx) = Ux(idx); 108UY = zeros(size(Uy)); UY(idx) = Uy(idx); 109quiver(nodes(:,1), nodes(:,2), UX, UY); 110axis equal 111axis tight 112xlim([0.6,1.2]); 113ylim([-0.2,0.7]); 114