Changeset 106 for palm/trunk/SOURCE/init_3d_model.f90
- Timestamp:
- Aug 16, 2007 2:30:26 PM (17 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
palm/trunk/SOURCE/init_3d_model.f90
r102 r106 7 7 ! Actual revisions: 8 8 ! ----------------- 9 ! Flux initialization in case of coupled runs, +momentum fluxes at top boundary 9 ! Flux initialization in case of coupled runs, +momentum fluxes at top boundary, 10 ! +arrays for phase speed c_u, c_v, c_w, indices for u|v|w_m_l|r changed 10 11 ! 11 12 ! Former revisions: … … 233 234 234 235 ! 235 !-- Arrays to store velocity data from t-dt needed for radiation boundary236 !-- conditions236 !-- Arrays to store velocity data from t-dt and the phase speeds which 237 !-- are needed for radiation boundary conditions 237 238 IF ( outflow_l ) THEN 238 ALLOCATE( u_m_l(nzb:nzt+1,nys-1:nyn+1, -1:1), &239 v_m_l(nzb:nzt+1,nys-1:nyn+1, -1:1), &240 w_m_l(nzb:nzt+1,nys-1:nyn+1, -1:1) )239 ALLOCATE( u_m_l(nzb:nzt+1,nys-1:nyn+1,1:2), & 240 v_m_l(nzb:nzt+1,nys-1:nyn+1,0:1), & 241 w_m_l(nzb:nzt+1,nys-1:nyn+1,0:1) ) 241 242 ENDIF 242 243 IF ( outflow_r ) THEN 243 ALLOCATE( u_m_r(nzb:nzt+1,nys-1:nyn+1,nx-1:nx+1), & 244 v_m_r(nzb:nzt+1,nys-1:nyn+1,nx-1:nx+1), & 245 w_m_r(nzb:nzt+1,nys-1:nyn+1,nx-1:nx+1) ) 244 ALLOCATE( u_m_r(nzb:nzt+1,nys-1:nyn+1,nx-1:nx), & 245 v_m_r(nzb:nzt+1,nys-1:nyn+1,nx-1:nx), & 246 w_m_r(nzb:nzt+1,nys-1:nyn+1,nx-1:nx) ) 247 ENDIF 248 IF ( outflow_l .OR. outflow_r ) THEN 249 ALLOCATE( c_u(nzb:nzt+1,nys-1:nyn+1), c_v(nzb:nzt+1,nys-1:nyn+1), & 250 c_w(nzb:nzt+1,nys-1:nyn+1) ) 246 251 ENDIF 247 252 IF ( outflow_s ) THEN 248 ALLOCATE( u_m_s(nzb:nzt+1, -1:1,nxl-1:nxr+1), &249 v_m_s(nzb:nzt+1, -1:1,nxl-1:nxr+1), &250 w_m_s(nzb:nzt+1, -1:1,nxl-1:nxr+1) )253 ALLOCATE( u_m_s(nzb:nzt+1,0:1,nxl-1:nxr+1), & 254 v_m_s(nzb:nzt+1,1:2,nxl-1:nxr+1), & 255 w_m_s(nzb:nzt+1,0:1,nxl-1:nxr+1) ) 251 256 ENDIF 252 257 IF ( outflow_n ) THEN 253 ALLOCATE( u_m_n(nzb:nzt+1,ny-1:ny+1,nxl-1:nxr+1), & 254 v_m_n(nzb:nzt+1,ny-1:ny+1,nxl-1:nxr+1), & 255 w_m_n(nzb:nzt+1,ny-1:ny+1,nxl-1:nxr+1) ) 258 ALLOCATE( u_m_n(nzb:nzt+1,ny-1:ny,nxl-1:nxr+1), & 259 v_m_n(nzb:nzt+1,ny-1:ny,nxl-1:nxr+1), & 260 w_m_n(nzb:nzt+1,ny-1:ny,nxl-1:nxr+1) ) 261 ENDIF 262 IF ( outflow_s .OR. outflow_n ) THEN 263 ALLOCATE( c_u(nzb:nzt+1,nxl-1:nxr+1), c_v(nzb:nzt+1,nxl-1:nxr+1), & 264 c_w(nzb:nzt+1,nxl-1:nxr+1) ) 256 265 ENDIF 257 266 … … 808 817 !-- Initialize old timelevels needed for radiation boundary conditions 809 818 IF ( outflow_l ) THEN 810 u_m_l(:,:,:) = u(:,:, -1:1)811 v_m_l(:,:,:) = v(:,:, -1:1)812 w_m_l(:,:,:) = w(:,:, -1:1)819 u_m_l(:,:,:) = u(:,:,1:2) 820 v_m_l(:,:,:) = v(:,:,0:1) 821 w_m_l(:,:,:) = w(:,:,0:1) 813 822 ENDIF 814 823 IF ( outflow_r ) THEN 815 u_m_r(:,:,:) = u(:,:,nx-1:nx +1)816 v_m_r(:,:,:) = v(:,:,nx-1:nx +1)817 w_m_r(:,:,:) = w(:,:,nx-1:nx +1)824 u_m_r(:,:,:) = u(:,:,nx-1:nx) 825 v_m_r(:,:,:) = v(:,:,nx-1:nx) 826 w_m_r(:,:,:) = w(:,:,nx-1:nx) 818 827 ENDIF 819 828 IF ( outflow_s ) THEN 820 u_m_s(:,:,:) = u(:, -1:1,:)821 v_m_s(:,:,:) = v(:, -1:1,:)822 w_m_s(:,:,:) = w(:, -1:1,:)829 u_m_s(:,:,:) = u(:,0:1,:) 830 v_m_s(:,:,:) = v(:,1:2,:) 831 w_m_s(:,:,:) = w(:,0:1,:) 823 832 ENDIF 824 833 IF ( outflow_n ) THEN 825 u_m_n(:,:,:) = u(:,ny-1:ny +1,:)826 v_m_n(:,:,:) = v(:,ny-1:ny +1,:)827 w_m_n(:,:,:) = w(:,ny-1:ny +1,:)834 u_m_n(:,:,:) = u(:,ny-1:ny,:) 835 v_m_n(:,:,:) = v(:,ny-1:ny,:) 836 w_m_n(:,:,:) = w(:,ny-1:ny,:) 828 837 ENDIF 829 838
Note: See TracChangeset
for help on using the changeset viewer.