; Read and save only a slices ; Input parameters ; ipz1 ; ipz2 ; iz_proc @parameters print,'ivar=',ivar print,'1) ivar=',ivar spawn,'date >> pvar_some.log' nghost=3 ;pc_read_kf,kf pc_read_dim,obj=dim,/quiet ;pc_read_grid,obj=grid,/quiet & save,file='y.sav',y pc_read_param,/param2,obj=param,/quiet print,'2) ivar=',ivar nprocx=dim.nprocx nprocy=dim.nprocy nprocz=dim.nprocz nxgrid=dim.nxgrid nygrid=dim.nygrid nzgrid=dim.nzgrid default,ighost,0 ;(1 for yes, read with ghost zones) default,itest,1 ;(1 for yes, just testing) ; ; find the y processor ; print,'3) ivar=',ivar ny=nygrid/nprocy ;y1=grid.y(dim.l1) ;y2=grid.y(dim.l1+ny) restore,'y.sav' y1=y[dim.l1] y2=y[dim.l1+ny] ipy=fix((ytarget-y1)/(y2-y1)) print,'ipy=',ipy ; print,'4) ivar=',ivar if ighost eq 1 then begin x=fltarr(nxgrid+2*nghost) z=fltarr(nzgrid+2*nghost) print,'mk array: ',nxgrid+2*nghost,ny+2*nghost,nzgrid+2*nghost uu=fltarr(nxgrid+2*nghost,ny+2*nghost,nzgrid+2*nghost,3) lnrho=fltarr(nxgrid+2*nghost,ny+2*nghost,nzgrid+2*nghost) endif else begin x=fltarr(nxgrid) z=fltarr(nzgrid) uu=fltarr(nxgrid,ny,nzgrid,3) lnrho=fltarr(nxgrid,ny,nzgrid) endelse ; default,itest,0 default,ifirst,0 default,iread_old,0 if iread_old ge 1 then restore,file n=nzgrid/nprocz-1 default,ivar,1 default,ipz1,0 default,ipz2,nprocz-1 for ipz=ipz1,ipz2 do begin ;for ipy=0,nprocy-1 do begin for ipx=0,nprocx-1 do begin if ighost eq 1 then begin l1=nghost+ipx*nxgrid/nprocx l2=nghost+(ipx+1)*nxgrid/nprocx-1 m1=nghost+ipy*nygrid/nprocy m2=nghost+(ipy+1)*nygrid/nprocy-1 n1=nghost+ipz*nzgrid/nprocz n2=nghost+(ipz+1)*nzgrid/nprocz-1 endif else begin l1=ipx*nxgrid/nprocx l2=(ipx+1)*nxgrid/nprocx-1 m1=ipy*nygrid/nprocy m2=(ipy+1)*nygrid/nprocy-1 n1=ipz*nzgrid/nprocz n2=(ipz+1)*nzgrid/nprocz-1 endelse proc=ipx+ipy*nprocx+ipz*nprocx*nprocy print,'proc',str(proc) if itest eq 0 then begin print,'5) ivar=',ivar pc_read_var,obj=var,proc=proc,ivar=ivar ;pc_read_var,/bb,/trimall,obj=var,proc=proc,ivar=ivar ;pc_read_var,/bb,/trimall,obj=var,proc=proc,/quiet,varfile='VAR'+str(ivar) if ighost eq 1 then begin lnrho(l1-nghost:l2+nghost,*,n1-nghost:n2+nghost)=var.lnrho(*,*,*) uu(l1-nghost:l2+nghost,*,n1-nghost:n2+nghost,*)=var.uu(*,*,*,*) x(l1-nghost:l2+nghost)=var.x y=var.y z(n1-nghost:n2+nghost)=var.z endif else begin lnrho(l1:l2,*,n1:n2)=var.lnrho(*,*,*) uu(l1:l2,*,n1:n2)=var.uu(*,*,*,0) x(l1:l2)=var.x y=var.y z(n1:n2)=var.z endelse ; ifirst=ifirst+1 ; print,float(ipx)/nprocx,float(ipy)/nprocy,float(ipz)/nprocz wait,.0 endif endfor ;endfor endfor ; t=var.t print,'t =', t file='var_plane'+str(ivar)+'.sav' ; oo=curl(uu) divu=div(uu) uu_slice=reform(uu(*,ny-1+nghost,*,*)) oo_slice=reform(oo(*,ny-1+nghost,*,*)) divu_slice=reform(divu(*,ny-1+nghost,*)) lnrho_slice=reform(lnrho(*,ny-1+nghost,*)) ; ;contour,lnrho_slice,x,z,nlev=30,/fil,xr=[-1,1]*.5,yr=[-1,1]*.5-5 save,file='slices/'+file,t,x,z,lnrho_slice,uu_slice,oo_slice,divu_slice ; ;spawn,'date >> pvar_some.log' END