/[MITgcm]/MITgcm/pkg/diagnostics/diagstats_calc.F
ViewVC logotype

Diff of /MITgcm/pkg/diagnostics/diagstats_calc.F

Parent Directory Parent Directory | Revision Log Revision Log | View Revision Graph Revision Graph | View Patch Patch

revision 1.2 by mlosch, Mon Nov 7 09:20:46 2011 UTC revision 1.3 by mlosch, Mon Nov 21 09:37:10 2011 UTC
# Line 353  C     and thus will not compile with a F Line 353  C     and thus will not compile with a F
353          ENDDO          ENDDO
354         ENDDO         ENDDO
355         IF ( useWeight ) THEN         IF ( useWeight ) THEN
356          tmpVol = arrDr*arrhFac*arrArea*frcArr          tmpVol = arrhFac*arrArea*frcArr
357         ELSE         ELSE
358          tmpVol = arrDr*arrArea*frcArr          tmpVol = arrArea*frcArr
359         ENDIF         ENDIF
360    
361        ELSEIF ( regId.EQ.0 .AND. useFract ) THEN        ELSEIF ( regId.EQ.0 .AND. useFract ) THEN
# Line 367  C     and thus will not compile with a F Line 367  C     and thus will not compile with a F
367          ENDDO          ENDDO
368         ENDDO         ENDDO
369         IF ( useWeight ) THEN         IF ( useWeight ) THEN
370          tmpVol = arrDr*arrhFac*arrArea*frcArr          tmpVol = arrhFac*arrArea*frcArr
371         ELSE         ELSE
372          tmpVol = arrDr*arrArea*frcArr          tmpVol = arrArea*frcArr
373         ENDIF         ENDIF
374    
375        ELSEIF ( regId.EQ.0 .AND. exclSpVal ) THEN        ELSEIF ( regId.EQ.0 .AND. exclSpVal ) THEN
# Line 381  C     and thus will not compile with a F Line 381  C     and thus will not compile with a F
381          ENDDO          ENDDO
382         ENDDO         ENDDO
383         IF ( useWeight ) THEN         IF ( useWeight ) THEN
384          tmpVol = arrDr*arrhFac*arrArea          tmpVol = arrhFac*arrArea
385         ELSE         ELSE
386          tmpVol = arrDr*arrArea          tmpVol = arrArea
387         ENDIF         ENDIF
388    
389        ELSEIF ( regId.EQ.0 ) THEN        ELSEIF ( regId.EQ.0 ) THEN
# Line 394  C     and thus will not compile with a F Line 394  C     and thus will not compile with a F
394          ENDDO          ENDDO
395         ENDDO         ENDDO
396         IF ( useWeight ) THEN         IF ( useWeight ) THEN
397          tmpVol = arrDr*arrhFac*arrArea          tmpVol = arrhFac*arrArea
398         ELSE         ELSE
399          tmpVol = arrDr*arrArea          tmpVol = arrArea
400         ENDIF         ENDIF
401    
402        ELSEIF ( useFract .AND. exclSpVal ) THEN        ELSEIF ( useFract .AND. exclSpVal ) THEN
# Line 410  C     and thus will not compile with a F Line 410  C     and thus will not compile with a F
410          ENDDO          ENDDO
411         ENDDO         ENDDO
412         IF ( useWeight ) THEN         IF ( useWeight ) THEN
413          tmpVol = arrDr*arrhFac*arrArea*frcArr          tmpVol = arrhFac*arrArea*frcArr
414         ELSE         ELSE
415          tmpVol = arrDr*arrArea*frcArr          tmpVol = arrArea*frcArr
416         ENDIF         ENDIF
417    
418        ELSEIF ( useFract ) THEN        ELSEIF ( useFract ) THEN
# Line 425  C     and thus will not compile with a F Line 425  C     and thus will not compile with a F
425          ENDDO          ENDDO
426         ENDDO         ENDDO
427         IF ( useWeight ) THEN         IF ( useWeight ) THEN
428          tmpVol = arrDr*arrhFac*arrArea*frcArr          tmpVol = arrhFac*arrArea*frcArr
429         ELSE         ELSE
430          tmpVol = arrDr*arrArea*frcArr          tmpVol = arrArea*frcArr
431         ENDIF         ENDIF
432    
433        ELSEIF ( exclSpVal ) THEN        ELSEIF ( exclSpVal ) THEN
# Line 441  C     and thus will not compile with a F Line 441  C     and thus will not compile with a F
441          ENDDO          ENDDO
442         ENDDO         ENDDO
443         IF ( useWeight ) THEN         IF ( useWeight ) THEN
444          tmpVol = arrDr*arrhFac*arrArea          tmpVol = arrhFac*arrArea
445         ELSE         ELSE
446          tmpVol = arrDr*arrArea          tmpVol = arrArea
447         ENDIF         ENDIF
448    
449        ELSE        ELSE
# Line 456  C     and thus will not compile with a F Line 456  C     and thus will not compile with a F
456          ENDDO          ENDDO
457         ENDDO         ENDDO
458         IF ( useWeight ) THEN         IF ( useWeight ) THEN
459          tmpVol = arrDr*arrhFac*arrArea          tmpVol = arrhFac*arrArea
460         ELSE         ELSE
461          tmpVol = arrDr*arrArea          tmpVol = arrArea
462         ENDIF         ENDIF
463    
464        ENDIF        ENDIF
465        IF ( power.EQ.2) THEN        IF ( power.EQ.2) THEN
466         tmpFld = tmpFac*inpArr*inpArr         tmpFld = inpArr*inpArr
467        ELSE        ELSE
468         tmpFld = tmpFac*inpArr         tmpFld = inpArr
469        ENDIF        ENDIF
470  C     sum up the volume  C     sum up the volume
471        tmpVol = tmpVol*arrMaskL        tmpVol = tmpVol*arrMaskL
472        statArr(0)  = SUM(tmpVol)        statArr(0)  = SUM(tmpVol)*arrDr
473  C     compute and sum up volume*field  C     compute and sum up volume*field
474        tmpVol = tmpVol*tmpFld        tmpVol = tmpVol*tmpFld
475        statArr(1)  = SUM(tmpVol)        statArr(1)  = SUM(tmpVol)*tmpFac*arrDr
476  C     compute and sum up volume*field**2  C     compute and sum up volume*field**2
477        tmpVol = tmpVol*tmpFld        tmpVol = tmpVol*tmpFld
478        statArr(2)  = SUM(tmpVol)        statArr(2)  = SUM(tmpVol)*tmpFac*tmpFac*arrDr
479        statArr(im) = MINVAL(tmpFld, MASK = arrMaskL>0.)        statArr(im) = MINVAL(tmpFld, MASK = arrMaskL>0.)*tmpFac
480        statArr(ix) = MAXVAL(tmpFld, MASK = arrMaskL>0.)        statArr(ix) = MAXVAL(tmpFld, MASK = arrMaskL>0.)*tmpFac
481    
482  #endif /* TARGET_NEC_SX */  #endif /* TARGET_NEC_SX */
483    

Legend:
Removed from v.1.2  
changed lines
  Added in v.1.3

  ViewVC Help
Powered by ViewVC 1.1.22