106 |
_RL apart_k(Nr,tlam),bpart_k(Nr,tlam),bbpart_k(Nr,tlam) |
_RL apart_k(Nr,tlam),bpart_k(Nr,tlam),bbpart_k(Nr,tlam) |
107 |
_RL bt_k(Nr,tlam), bb_k(Nr,tlam) |
_RL bt_k(Nr,tlam), bb_k(Nr,tlam) |
108 |
_RL discEs, discEu |
_RL discEs, discEu |
109 |
|
INTEGER idiscEs,jdiscEs,kdiscEs,ldiscEs |
110 |
|
INTEGER idiscEu,jdiscEu,kdiscEu,ldiscEu |
111 |
#else |
#else |
112 |
_RL PARwdn(tlam) |
_RL PARwdn(tlam) |
113 |
#endif |
#endif |
336 |
ENDDO |
ENDDO |
337 |
|
|
338 |
#ifdef DAR_RADTRANS |
#ifdef DAR_RADTRANS |
339 |
|
idiscEs = 0 |
340 |
|
jdiscEs = 0 |
341 |
|
kdiscEs = 0 |
342 |
|
ldiscEs = 0 |
343 |
|
idiscEu = 0 |
344 |
|
jdiscEu = 0 |
345 |
|
kdiscEu = 0 |
346 |
|
ldiscEu = 0 |
347 |
discEs = 0. |
discEs = 0. |
348 |
discEu = 0. |
discEu = 0. |
349 |
#endif |
#endif |
677 |
O amp1,amp2, |
O amp1,amp2, |
678 |
I myThid) |
I myThid) |
679 |
#ifdef DAR_CHECK_IRR_CONT |
#ifdef DAR_CHECK_IRR_CONT |
680 |
|
IF( dz_k(1) .GT. 0.0 )THEN |
681 |
DO ilam = 1,tlam |
DO ilam = 1,tlam |
682 |
discEs=MAX(discEs,ABS(Estop(ilam,1)-Eswsf(ilam))) |
IF(Eswsf(ilam).GE.darwin_radmodThresh .OR. |
683 |
ENDDO |
& Edwsf(ilam).GE.darwin_radmodThresh ) THEN |
684 |
DO k=1,darwin_radtrans_kmax-1 |
IF(ABS(Estop(ilam,1)-Eswsf(ilam)) .GT. discEs )THEN |
685 |
DO ilam = 1,tlam |
discEs = ABS(Estop(ilam,1)-Eswsf(ilam)) |
686 |
discEs=MAX(discEs,ABS(Estop(ilam,k+1)-Esz(ilam,k))) |
idiscEs = i |
687 |
discEu=MAX(discEu,ABS(Eutop(ilam,k+1)-Euz(ilam,k))) |
jdiscEs = j |
688 |
|
kdiscEs = 1 |
689 |
|
ldiscEs = ilam |
690 |
|
ENDIF |
691 |
|
DO k=1,darwin_radtrans_kmax-1 |
692 |
|
IF(ABS(Estop(ilam,k+1)-Esz(ilam,k)) .GT. discEs)THEN |
693 |
|
discEs = ABS(Estop(ilam,k+1)-Esz(ilam,k)) |
694 |
|
idiscEs = i |
695 |
|
jdiscEs = j |
696 |
|
kdiscEs = k+1 |
697 |
|
ldiscEs = ilam |
698 |
|
ENDIF |
699 |
|
IF(ABS(Eutop(ilam,k+1)-Euz(ilam,k)) .GT. discEu)THEN |
700 |
|
discEu = ABS(Eutop(ilam,k+1)-Euz(ilam,k)) |
701 |
|
idiscEu = i |
702 |
|
jdiscEu = j |
703 |
|
kdiscEu = k+1 |
704 |
|
ldiscEu = ilam |
705 |
|
ENDIF |
706 |
ENDDO |
ENDDO |
707 |
|
ENDIF |
708 |
ENDDO |
ENDDO |
709 |
ENDIF |
ENDIF |
710 |
#endif |
#endif |
711 |
|
ENDIF |
712 |
c |
c |
713 |
c uses chl from prev timestep (as wavebands does) |
c uses chl from prev timestep (as wavebands does) |
714 |
c keep like this in case need to consider upwelling irradiance as affecting the grid box above |
c keep like this in case need to consider upwelling irradiance as affecting the grid box above |
1552 |
#endif |
#endif |
1553 |
|
|
1554 |
#ifdef DAR_CHECK_IRR_CONT |
#ifdef DAR_CHECK_IRR_CONT |
1555 |
print*,'max Es, Eu discontinuties',discEs,discEu |
i = myXGlobalLo-1+(bi-1)*sNx+idiscEs |
1556 |
|
j = myYGlobalLo-1+(bj-1)*sNy+jdiscEs |
1557 |
|
write(6,'(I4.4,X,A,4(X,I4),1PE24.16)')myProcId,'max Es disc', |
1558 |
|
& i,j,kdiscEs,ldiscEs,discEs |
1559 |
|
i = myXGlobalLo-1+(bi-1)*sNx+idiscEu |
1560 |
|
j = myYGlobalLo-1+(bj-1)*sNy+jdiscEu |
1561 |
|
write(6,'(I4.4,X,A,4(X,I4),1PE24.16)')myProcId,'max Eu disc', |
1562 |
|
& i,j,kdiscEu,ldiscEu,discEu |
1563 |
#endif |
#endif |
1564 |
|
|
1565 |
COJ fill diagnostics |
COJ fill diagnostics |