added file to read complete velocity field (legacy)

This commit is contained in:
Tiago Pestana 2020-09-25 21:12:23 +02:00
parent fcadbd2e5d
commit 9fa7fedcda
1 changed files with 76 additions and 0 deletions

View File

@ -0,0 +1,76 @@
function [u,v,w,p] = read_uvwp_complete_legacy(wkdir,fileid,nmyid,...
x_periodic,y_periodic,z_periodic,ghost)
% '_' if no ghost cells
% 'g' if there are ghost cells but u dont want to read them
% 'G' if there are ghost cells and u want to read them
% some default properties --> this can be added to a parser later
nparam = 10;
precision = 'float64';
endian = 'a';
resdir = [wkdir '/result'];
% load the domain
fcurrent_domain = [wkdir 'current_domain.tmp'];
[a,b,c,d,e,f] = read_domain_legacy(fcurrent_domain);
% load the grid
fcurrent_points = [wkdir 'current_points.tmp'];
[ xu,yu,zu,xv,yv,zv ,...
xw,yw,zw,xp,yp,zp ,...
nxu,nyu,nzu,nxv,nyv ,...
nzv,nxw,nyw,nzw,nxp ,...
nyp,nzp] = read_grid_legacy(fcurrent_domain,a,b,c,d,e,f,...
x_periodic,y_periodic,z_periodic);
% load the proc-grid data:
fcurrent_proc_grid =[wkdir 'current_proc_grid.tmp'];
[ibegu,iendu,jbegu,jendu,kbegu,kendu,...
ibegv,iendv,jbegv,jendv,kbegv,kendv,...
ibegw,iendw,jbegw,jendw,kbegw,kendw,...
ibegp,iendp,jbegp,jendp,kbegp,kendp,...
nxprocs,nyprocs,nzprocs] = read_procgrid_legacy(fcurrent_proc_grid);
for ifile=1:length(fileid)
ifield = fileid(ifile);
% initialize zero arrays
u = zeros(nxu,nyu,nzu);
v = zeros(nxv,nyv,nzv);
w = zeros(nxw,nyw,nzw);
p = zeros(nxp,nyp,nzp);
for myid = 0:nmyid-1
file=[resdir 'uvwp_' sprintf('%04d',ifield) '.' sprintf('%04d',myid)];
[~,~,~,~,param]=read3dp4_partial(file,nparam,precision,endian,...
1,1,1,1,1,1,1,1,1,1,1,1,'i',ghost);
mycol_vec = floor(param(3));
myrow_vec = floor(param(4));
mypln_vec = floor(param(5));
time=param(1);
% the local array sizes for processor "myid,my_col,my_row,my_pln":
[ibu,ieu,jbu,jeu,kbu,keu,ibv,iev,jbv,jev,kbv,kev,...
ibw,iew,jbw,jew,kbw,kew,ibp,iep,jbp,jep,kbp,kep,...
nxlu,nylu,nzlu,nxlv,nylv,nzlv,nxlw,nylw,nzlw,...
nxlp,nylp,nzlp]=my_array_size(...
ibegu,iendu,jbegu,jendu,kbegu,kendu,...
ibegv,iendv,jbegv,jendv,kbegv,kendv,...
ibegw,iendw,jbegw,jendw,kbegw,kendw,...
ibegp,iendp,jbegp,jendp,kbegp,kendp,...
mycol_vec,myrow_vec,mypln_vec);
[utmp,vtmp,wtmp,ptmp,param]=read3dp4_partial(...
file,nparam,precision,endian,nxlu,nylu,nzlu,...
nxlv,nylv,nzlv,nxlw,nylw,nzlw,nxlp,nylp,nzlp,'_',ghost);
u(ibu:ieu,jbu:jeu,kbu:keu) = utmp;
v(ibv:iev,jbv:jev,kbv:kev) = vtmp;
w(ibw:iew,jbw:jew,kbw:kew) = wtmp;
p(ibp:iep,jbp:jep,kbp:kep) = ptmp;
clear utmp vtmp wtmp ptmp;
end
end
end