Changeset 10413 for NEMO/trunk/src/ICE/icevar.F90
- Timestamp:
- 2018-12-18T18:59:59+01:00 (5 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
NEMO/trunk/src/ICE/icevar.F90
r10332 r10413 557 557 !!------------------------------------------------------------------- 558 558 ! 559 ! 560 DO jl = 1, jpl !== loop over the categories ==! 561 ! 562 !---------------------------------------- 563 ! zap ice energy and send it to the ocean 564 !---------------------------------------- 565 DO jk = 1, nlay_i 566 DO jj = 1 , jpj 567 DO ji = 1 , jpi 568 IF( pe_i(ji,jj,jk,jl) < 0._wp .OR. pa_i(ji,jj,jl) < 0._wp ) THEN 569 hfx_res(ji,jj) = hfx_res(ji,jj) - pe_i(ji,jj,jk,jl) * r1_rdtice ! W.m-2 <0 570 pe_i(ji,jj,jk,jl) = 0._wp 571 ENDIF 572 END DO 573 END DO 574 END DO 575 ! 576 DO jk = 1, nlay_s 577 DO jj = 1 , jpj 578 DO ji = 1 , jpi 579 IF( pe_s(ji,jj,jk,jl) < 0._wp .OR. pa_i(ji,jj,jl) < 0._wp ) THEN 580 hfx_res(ji,jj) = hfx_res(ji,jj) - pe_s(ji,jj,jk,jl) * r1_rdtice ! W.m-2 <0 581 pe_s(ji,jj,jk,jl) = 0._wp 582 ENDIF 583 END DO 584 END DO 585 END DO 586 ! 587 !----------------------------------------------------- 588 ! zap ice and snow volume, add water and salt to ocean 589 !----------------------------------------------------- 590 DO jj = 1 , jpj 591 DO ji = 1 , jpi 592 IF( pv_i(ji,jj,jl) < 0._wp .OR. pa_i(ji,jj,jl) < 0._wp ) THEN 593 wfx_res(ji,jj) = wfx_res(ji,jj) + pv_i (ji,jj,jl) * rhoi * r1_rdtice 594 pv_i (ji,jj,jl) = 0._wp 595 ENDIF 596 IF( pv_s(ji,jj,jl) < 0._wp .OR. pa_i(ji,jj,jl) < 0._wp ) THEN 597 wfx_res(ji,jj) = wfx_res(ji,jj) + pv_s (ji,jj,jl) * rhos * r1_rdtice 598 pv_s (ji,jj,jl) = 0._wp 599 ENDIF 600 IF( psv_i(ji,jj,jl) < 0._wp .OR. pa_i(ji,jj,jl) < 0._wp ) THEN 601 sfx_res(ji,jj) = sfx_res(ji,jj) + psv_i(ji,jj,jl) * rhoi * r1_rdtice 602 psv_i (ji,jj,jl) = 0._wp 603 ENDIF 604 END DO 605 END DO 606 ! 607 END DO 608 ! 559 609 WHERE( pato_i(:,:) < 0._wp ) pato_i(:,:) = 0._wp 560 610 WHERE( poa_i (:,:,:) < 0._wp ) poa_i (:,:,:) = 0._wp … … 563 613 WHERE( pv_ip (:,:,:) < 0._wp ) pv_ip (:,:,:) = 0._wp ! in theory one should change wfx_pnd(-) and wfx_sum(+) 564 614 ! but it does not change conservation, so keep it this way is ok 565 !566 DO jl = 1, jpl !== loop over the categories ==!567 !568 !----------------------------------------569 ! zap ice energy and send it to the ocean570 !----------------------------------------571 DO jk = 1, nlay_i572 DO jj = 1 , jpj573 DO ji = 1 , jpi574 IF( pe_i(ji,jj,jk,jl) < 0._wp ) THEN575 hfx_res(ji,jj) = hfx_res(ji,jj) - pe_i(ji,jj,jk,jl) * r1_rdtice ! W.m-2 <0576 pe_i(ji,jj,jk,jl) = 0._wp577 ENDIF578 END DO579 END DO580 END DO581 !582 DO jk = 1, nlay_s583 DO jj = 1 , jpj584 DO ji = 1 , jpi585 IF( pe_s(ji,jj,jk,jl) < 0._wp ) THEN586 hfx_res(ji,jj) = hfx_res(ji,jj) - pe_s(ji,jj,jk,jl) * r1_rdtice ! W.m-2 <0587 pe_s(ji,jj,jk,jl) = 0._wp588 ENDIF589 END DO590 END DO591 END DO592 !593 !-----------------------------------------------------594 ! zap ice and snow volume, add water and salt to ocean595 !-----------------------------------------------------596 DO jj = 1 , jpj597 DO ji = 1 , jpi598 IF( pv_i(ji,jj,jl) < 0._wp ) THEN599 wfx_res(ji,jj) = wfx_res(ji,jj) + pv_i (ji,jj,jl) * rhoi * r1_rdtice600 pv_i (ji,jj,jl) = 0._wp601 ENDIF602 IF( pv_s(ji,jj,jl) < 0._wp ) THEN603 wfx_res(ji,jj) = wfx_res(ji,jj) + pv_s (ji,jj,jl) * rhos * r1_rdtice604 pv_s (ji,jj,jl) = 0._wp605 ENDIF606 IF( psv_i(ji,jj,jl) < 0._wp ) THEN607 sfx_res(ji,jj) = sfx_res(ji,jj) + psv_i(ji,jj,jl) * rhoi * r1_rdtice608 psv_i (ji,jj,jl) = 0._wp609 ENDIF610 END DO611 END DO612 !613 END DO614 615 ! 615 616 END SUBROUTINE ice_var_zapneg
Note: See TracChangeset
for help on using the changeset viewer.