316 |
CADJ STORE salt (:,:,:,bi,bj) = comlev1_bibj, key=itdkey, byte=isbyte |
CADJ STORE salt (:,:,:,bi,bj) = comlev1_bibj, key=itdkey, byte=isbyte |
317 |
CADJ STORE uvel (:,:,:,bi,bj) = comlev1_bibj, key=itdkey, byte=isbyte |
CADJ STORE uvel (:,:,:,bi,bj) = comlev1_bibj, key=itdkey, byte=isbyte |
318 |
CADJ STORE vvel (:,:,:,bi,bj) = comlev1_bibj, key=itdkey, byte=isbyte |
CADJ STORE vvel (:,:,:,bi,bj) = comlev1_bibj, key=itdkey, byte=isbyte |
|
cph-test |
|
319 |
# ifdef ALLOW_DEPTH_CONTROL |
# ifdef ALLOW_DEPTH_CONTROL |
320 |
CADJ STORE gtnm1(:,:,:,bi,bj) = comlev1_bibj, key=itdkey, byte=isbyte |
CADJ STORE gtnm1(:,:,:,bi,bj) = comlev1_bibj, key=itdkey, byte=isbyte |
321 |
CADJ STORE gsnm1(:,:,:,bi,bj) = comlev1_bibj, key=itdkey, byte=isbyte |
CADJ STORE gsnm1(:,:,:,bi,bj) = comlev1_bibj, key=itdkey, byte=isbyte |
418 |
|
|
419 |
C-- Get temporary terms used by tendency routines : |
C-- Get temporary terms used by tendency routines : |
420 |
C- Calculate horizontal "volume transport" through tracer cell face |
C- Calculate horizontal "volume transport" through tracer cell face |
421 |
|
C anelastic: uTrans,vTrans are scaled by rhoFacC (~ mass transport) |
422 |
CALL CALC_COMMON_FACTORS ( |
CALL CALC_COMMON_FACTORS ( |
423 |
I uVel, vVel, |
I uVel, vVel, |
424 |
O uFld, vFld, uTrans, vTrans, xA, yA, |
O uFld, vFld, uTrans, vTrans, xA, yA, |
436 |
ENDDO |
ENDDO |
437 |
ELSE |
ELSE |
438 |
C- Interior interface : |
C- Interior interface : |
439 |
|
C anelastic: rTrans is scaled by rhoFacF (~ mass transport) |
440 |
DO j=1-Oly,sNy+Oly |
DO j=1-Oly,sNy+Oly |
441 |
DO i=1-Olx,sNx+Olx |
DO i=1-Olx,sNx+Olx |
442 |
wFld(i,j) = wVel(i,j,k,bi,bj) |
wFld(i,j) = wVel(i,j,k,bi,bj) |
443 |
maskUp(i,j) = maskC(i,j,k-1,bi,bj)*maskC(i,j,k,bi,bj) |
maskUp(i,j) = maskC(i,j,k-1,bi,bj)*maskC(i,j,k,bi,bj) |
444 |
rTrans(i,j) = wFld(i,j)*rA(i,j,bi,bj)*maskUp(i,j) |
rTrans(i,j) = wFld(i,j)*rA(i,j,bi,bj)*maskUp(i,j) |
445 |
|
& *deepFac2F(k)*rhoFacF(k) |
446 |
ENDDO |
ENDDO |
447 |
ENDDO |
ENDDO |
448 |
ENDIF |
ENDIF |
453 |
CALL GMREDI_CALC_UVFLOW( |
CALL GMREDI_CALC_UVFLOW( |
454 |
U uFld, vFld, uTrans, vTrans, |
U uFld, vFld, uTrans, vTrans, |
455 |
I k, bi, bj, myThid ) |
I k, bi, bj, myThid ) |
456 |
IF (K.GE.2) CALL GMREDI_CALC_WFLOW( |
IF (K.GE.2) THEN |
457 |
|
CALL GMREDI_CALC_WFLOW( |
458 |
U wFld, rTrans, |
U wFld, rTrans, |
459 |
I k, bi, bj, myThid ) |
I k, bi, bj, myThid ) |
460 |
|
ENDIF |
461 |
ENDIF |
ENDIF |
462 |
# ifdef ALLOW_AUTODIFF_TAMC |
# ifdef ALLOW_AUTODIFF_TAMC |
463 |
CADJ STORE rTrans(:,:) = comlev1_bibj_k, key=kkey, byte=isbyte |
CADJ STORE rTrans(:,:) = comlev1_bibj_k, key=kkey, byte=isbyte |
464 |
|
CADJ STORE wfld(:,:) = comlev1_bibj_k, key=kkey, byte=isbyte |
465 |
# ifdef GM_BOLUS_ADVEC |
# ifdef GM_BOLUS_ADVEC |
466 |
|
CADJ STORE ufld(:,:) = comlev1_bibj_k, key=kkey, byte=isbyte |
467 |
|
CADJ STORE vfld(:,:) = comlev1_bibj_k, key=kkey, byte=isbyte |
468 |
CADJ STORE uTrans(:,:) = comlev1_bibj_k, key=kkey, byte=isbyte |
CADJ STORE uTrans(:,:) = comlev1_bibj_k, key=kkey, byte=isbyte |
469 |
CADJ STORE vTrans(:,:) = comlev1_bibj_k, key=kkey, byte=isbyte |
CADJ STORE vTrans(:,:) = comlev1_bibj_k, key=kkey, byte=isbyte |
470 |
# endif |
# endif |
504 |
# endif |
# endif |
505 |
# endif |
# endif |
506 |
# endif /* ALLOW_AUTODIFF_TAMC */ |
# endif /* ALLOW_AUTODIFF_TAMC */ |
507 |
|
C |
508 |
|
#ifdef ALLOW_AUTODIFF_TAMC |
509 |
|
# if (defined NONLIN_FRSURF) || (defined ALLOW_DEPTH_CONTROL) |
510 |
|
cph-test |
511 |
|
CADJ STORE uFld(:,:), vFld(:,:), wFld(:,:) |
512 |
|
CADJ & = comlev1_bibj_k, key=kkey, byte=isbyte |
513 |
|
CADJ STORE uTrans(:,:), vTrans(:,:) |
514 |
|
CADJ & = comlev1_bibj_k, key=kkey, byte=isbyte |
515 |
|
CADJ STORE xA(:,:), yA(:,:) |
516 |
|
CADJ & = comlev1_bibj_k, key=kkey, byte=isbyte |
517 |
|
# endif |
518 |
|
#endif /* ALLOW_AUTODIFF_TAMC */ |
519 |
|
C |
520 |
IF ( tempStepping ) THEN |
IF ( tempStepping ) THEN |
521 |
#ifdef ALLOW_AUTODIFF_TAMC |
#ifdef ALLOW_AUTODIFF_TAMC |
522 |
CADJ STORE gTnm1(:,:,k,bi,bj) = comlev1_bibj_k, key=kkey, byte=isbyte |
CADJ STORE gTnm1(:,:,k,bi,bj) = comlev1_bibj_k, key=kkey, byte=isbyte |
523 |
# if (defined NONLIN_FRSURF) || (defined ALLOW_DEPTH_CONTROL) |
# if (defined NONLIN_FRSURF) || (defined ALLOW_DEPTH_CONTROL) |
524 |
CADJ STORE gT(:,:,k,bi,bj) = comlev1_bibj_k, key=kkey, byte=isbyte |
CADJ STORE fvert(:,:,:) = comlev1_bibj_k, key=kkey, byte=isbyte |
525 |
# endif |
# endif |
526 |
#endif /* ALLOW_AUTODIFF_TAMC */ |
#endif /* ALLOW_AUTODIFF_TAMC */ |
527 |
CALL CALC_GT( |
CALL CALC_GT( |
554 |
#ifdef ALLOW_AUTODIFF_TAMC |
#ifdef ALLOW_AUTODIFF_TAMC |
555 |
CADJ STORE gSnm1(:,:,k,bi,bj) = comlev1_bibj_k, key=kkey, byte=isbyte |
CADJ STORE gSnm1(:,:,k,bi,bj) = comlev1_bibj_k, key=kkey, byte=isbyte |
556 |
# if (defined NONLIN_FRSURF) || (defined ALLOW_DEPTH_CONTROL) |
# if (defined NONLIN_FRSURF) || (defined ALLOW_DEPTH_CONTROL) |
557 |
CADJ STORE gS(:,:,k,bi,bj) = comlev1_bibj_k, key=kkey, byte=isbyte |
CADJ STORE fvers(:,:,:) = comlev1_bibj_k, key=kkey, byte=isbyte |
558 |
# endif |
# endif |
559 |
#endif /* ALLOW_AUTODIFF_TAMC */ |
#endif /* ALLOW_AUTODIFF_TAMC */ |
560 |
CALL CALC_GS( |
CALL CALC_GS( |