|
||||
File indexing completed on 2021-11-06 05:18:24 UTC
view on githubraw file Latest commit 016b84c4 on 2021-11-02 20:24:44 UTC08be60903a Mart*0001 #include "MY82_OPTIONS.h" 0002 0003 CBOP a8f92f3b0b Jean*0004 C !ROUTINE: MY82_OUTPUT 08be60903a Mart*0005 C !INTERFACE: a8f92f3b0b Jean*0006 SUBROUTINE MY82_OUTPUT( myTime, myIter, myThid ) cf58ea95cd Jean*0007 08be60903a Mart*0008 C !DESCRIPTION: \bv 0009 C *==========================================================* a8f92f3b0b Jean*0010 C | SUBROUTINE MY82_OUTPUT 0011 C | o Do MY82 diagnostic output. 08be60903a Mart*0012 C *========================================================== 0013 C | The following CPP flag (MULTIPLE_RECORD_MY82_STATE_FILES) is 0014 C | #define/#undefed here since it is specific to this routine 0015 C | and very user-preference specific. 0016 C | 0017 C | If #undefed (default) the state files are written as in all versions 0018 C | prior to checkpoint32, where a file is created per variable, per time 0019 C | and per tile. This *has* to be the default because most users use this 0020 C | mode and all utilities and scripts (diagnostic) assume this form. 0021 C | It is also robust, as explained below. 0022 C | 0023 C | If #defined, subsequent snap-shots are written as records in the 0024 C | same file (no iteration number in filenames). 0025 C | Advantages: - fewer files 0026 C | - for small problems, is easy to copy the output around 0027 C | Disadvantages: 0028 C | - breaks a lot of diagnostic scripts 0029 C | - for large or long problems this creates huge files 0030 C | - is an unexpected, unsolicited change in behaviour which came 0031 C | as a surprise (in c32) and inconvenience to several users 0032 C | - can not accomodate changing the frequency of output 0033 C | after a pickup (this is trivial in previous method 0034 C | but needs new code and parameters in this new method) 0035 C *==========================================================* 0036 C \ev 0037 0038 C !USES: 0039 IMPLICIT NONE 0040 C === Global variables === 0041 #include "SIZE.h" 0042 #include "EEPARAMS.h" 0043 #include "PARAMS.h" 0044 #include "MY82.h" 0045 0046 C !INPUT/OUTPUT PARAMETERS: 0047 C == Routine arguments == a8f92f3b0b Jean*0048 C myTime :: my time in simulation ( s ) 0049 C myIter :: my Iteration number 0050 C myThid :: my Thread Id number 0051 _RL myTime 08be60903a Mart*0052 INTEGER myIter 0053 INTEGER myThid 0054 cf58ea95cd Jean*0055 C !FUNCTIONS: 0056 LOGICAL DIFFERENT_MULTIPLE 0057 EXTERNAL DIFFERENT_MULTIPLE 0058 08be60903a Mart*0059 C !LOCAL VARIABLES: 0060 C == Local variables == df5a9764ba Jean*0061 CHARACTER*(10) suff 08be60903a Mart*0062 CEOP 0063 cf58ea95cd Jean*0064 C---+----1----+----2----+----3----+----4----+----5----+----6----+----7-|--+----| 60c545bbe1 Mart*0065 08be60903a Mart*0066 C---------------------------------------------------------------- 0067 C Dump snapshot of MY82 variables. 0068 C---------------------------------------------------------------- 0069 cf58ea95cd Jean*0070 IF ( myIter.NE.nIter0 .AND. 0071 & DIFFERENT_MULTIPLE( MYdumpFreq, myTime, deltaTClock ) 0072 & ) THEN 08be60903a Mart*0073 016b84c482 Mart*0074 IF ( MYwriteState ) THEN a8f92f3b0b Jean*0075 C Write each snap-shot as a new file 08be60903a Mart*0076 C - creates many files but for large configurations is easier to 0077 C transfer analyse a particular snap-shots df5a9764ba Jean*0078 IF ( rwSuffixType.EQ.0 ) THEN 0079 WRITE(suff,'(I10.10)') myIter 0080 ELSE 0081 CALL RW_GET_SUFFIX( suff, myTime, myIter, myThid ) 0082 ENDIF 08be60903a Mart*0083 CALL WRITE_FLD_XYZ_RL('MYviscAr.',suff,MYviscAr, 0084 & myIter,myThid) 0085 CALL WRITE_FLD_XYZ_RL('MYdiffKr.',suff,MYdiffKr, 0086 & myIter,myThid) 0087 CALL WRITE_FLD_XY_RL('MYhbl.',suff,MYhbl, 0088 & myIter,myThid) 69b5777c01 Mart*0089 ENDIF 08be60903a Mart*0090 cf58ea95cd Jean*0091 ENDIF a8f92f3b0b Jean*0092 08be60903a Mart*0093 RETURN 0094 END
[ Source navigation ] | [ Diff markup ] | [ Identifier search ] | [ general search ] |
This page was automatically generated from https://github.com/MITgcm/MITgcm by the 2.2.1-MITgcm-0.1 LXR engine. The LXR team |