| 1 |
global Nx Ny Nz |
| 2 |
global dx dy lat long |
| 3 |
global dz depth |
| 4 |
global delt iteration it |
| 5 |
global descriptor |
| 6 |
global this_path |
| 7 |
global g Cp rho_bar alpha |
| 8 |
global f0 B0 Q0 beta r_heat r_expt H |
| 9 |
global u v w t |
| 10 |
|
| 11 |
param_file_name = 'datadonut'; |
| 12 |
feval(param_file_name) ; |
| 13 |
|
| 14 |
iteration |
| 15 |
|
| 16 |
it = input(' Please enter iteration : ') |
| 17 |
|
| 18 |
path = this_path |
| 19 |
eval(['cd ' path '/it',int2str(it)]); |
| 20 |
path=pwd |
| 21 |
|
| 22 |
fprintf(1,' Reading output ... \n') ; |
| 23 |
|
| 24 |
tfn='theta.sun.b'; |
| 25 |
ufn='u.sun.b'; |
| 26 |
vfn='v.sun.b'; |
| 27 |
|
| 28 |
% T (m/s) |
| 29 |
t=Readmodel(tfn,[Nx Ny Nz],'float32'); |
| 30 |
t=Extract([3 Nx Ny Nz t(5:4+Nx*Ny*Nz)],[1 Nx 1 Ny 1 Nz]); |
| 31 |
t=reshape(t,Nx,Ny,Nz); |
| 32 |
|
| 33 |
% U (m/s) |
| 34 |
u=Readmodel(ufn,[Nx Ny Nz],'float32'); |
| 35 |
u=Extract([3 Nx Ny Nz u(5:4+Nx*Ny*Nz)],[1 Nx 1 Ny 1 Nz]); |
| 36 |
u=reshape(u,Nx,Ny,Nz); |
| 37 |
|
| 38 |
% V (m/s) |
| 39 |
v=Readmodel(vfn,[Nx Ny Nz],'float32'); |
| 40 |
v=Extract([3 Nx Ny Nz v(5:4+Nx*Ny*Nz)],[1 Nx 1 Ny 1 Nz]); |
| 41 |
v=reshape(v,Nx,Ny,Nz); |
| 42 |
|
| 43 |
% W (m/s) |
| 44 |
|
| 45 |
w=zeros(Nx,Ny,Nz+1); |
| 46 |
|
| 47 |
for k=Nz:-1:1, |
| 48 |
w(1:Nx-1,1:Ny-1,k)= w(1:Nx-1,1:Ny-1,k+1)... |
| 49 |
-u(2:Nx,1:Ny-1,k)*dz(k)/dx +u(1:Nx-1,1:Ny-1,k)*dz(k)/dx ... |
| 50 |
-v(1:Nx-1,2:Ny,k)*dz(k)/dy +v(1:Nx-1,1:Ny-1,k)*dz(k)/dy ; |
| 51 |
end |
| 52 |
|
| 53 |
return |