Changeset 3294 for trunk/NEMOGCM/NEMO/LIM_SRC_3/limupdate.F90
- Timestamp:
- 2012-01-28T17:44:18+01:00 (12 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/NEMOGCM/NEMO/LIM_SRC_3/limupdate.F90
r2715 r3294 35 35 USE prtctl ! Print control 36 36 USE lbclnk ! lateral boundary condition - MPP exchanges 37 USE wrk_nemo ! work arrays 37 38 38 39 IMPLICIT NONE … … 85 86 REAL(wp) :: z_prescr_hi, zat_i_old, ztmelts, ze_s 86 87 87 LOGICAL , DIMENSION(jpi,jpj,jpl) :: internal_melt88 REAL(wp), DIMENSION(jkmax) :: zthick0, zqm0 ! thickness of the layers and heat contents for88 INTEGER , POINTER, DIMENSION(:,:,:) :: internal_melt 89 REAL(wp), POINTER, DIMENSION(:) :: zthick0, zqm0 ! thickness of the layers and heat contents for 89 90 !!------------------------------------------------------------------- 91 92 CALL wrk_alloc( jpi,jpj,jpl, internal_melt ) ! integer 93 CALL wrk_alloc( jkmax, zthick0, zqm0 ) 90 94 91 95 IF( ln_nicep ) THEN … … 456 460 ! 2.3) Melt of an internal layer 457 461 !--------------------------------- 458 internal_melt(:,:,:) = .false.462 internal_melt(:,:,:) = 0 459 463 460 464 DO jl = 1, jpl … … 471 475 ! WRITE(numout,*) ' e_i : ', e_i(ji,jj,jk,jl) 472 476 ! WRITE(numout,*) ' v_i : ', v_i(ji,jj,jl) 473 internal_melt(ji,jj,jl) = .true.477 internal_melt(ji,jj,jl) = 1 474 478 ENDIF 475 479 END DO ! ji … … 481 485 DO jj = 1, jpj 482 486 DO ji = 1, jpi 483 IF( internal_melt(ji,jj,jl) ) THEN487 IF( internal_melt(ji,jj,jl) == 1 ) THEN 484 488 ! initial ice thickness 485 489 !----------------------- … … 576 580 ENDIF 577 581 578 internal_melt(:,:,:) = .false.582 internal_melt(:,:,:) = 0 579 583 580 584 ! Melt of snow … … 589 593 ! If snow energy of melting smaller then Lf 590 594 ! Then all snow melts and meltwater, heat go to the ocean 591 IF ( ze_s .LE. rhosn * lfus ) internal_melt(ji,jj,jl) = .true.595 IF ( ze_s .LE. rhosn * lfus ) internal_melt(ji,jj,jl) = 1 592 596 593 597 IF( ln_nicep ) THEN … … 611 615 DO jj = 1, jpj 612 616 DO ji = 1, jpi 613 IF ( internal_melt(ji,jj,jl) ) THEN617 IF ( internal_melt(ji,jj,jl) == 1 ) THEN 614 618 v_s(ji,jj,jl) = 0.0 615 619 e_s(ji,jj,1,jl) = 0.0 … … 1027 1031 ENDIF 1028 1032 1029 !--------------------- 1033 CALL wrk_dealloc( jpi,jpj,jpl, internal_melt ) ! integer 1034 CALL wrk_dealloc( jkmax, zthick0, zqm0 ) 1030 1035 1031 1036 END SUBROUTINE lim_update
Note: See TracChangeset
for help on using the changeset viewer.