File indexing completed on 2024-02-01 06:11:16 UTC
view on githubraw file Latest commit 427e24e1 on 2024-01-31 16:50:14 UTC
f8e9124d84 Jean*0001 #include "AUTODIFF_OPTIONS.h"
9f5240b52a Jean*0002 #ifdef ALLOW_CTRL
0003 # include "CTRL_OPTIONS.h"
0004 #endif
f0aa841546 Patr*0005
9f5240b52a Jean*0006
0007
0008
0009
f8e9124d84 Jean*0010
9f5240b52a Jean*0011
0012
0013
0014
0015 SUBROUTINE DUMMY_IN_HFAC( myName, myIter, myThid )
f8e9124d84 Jean*0016
9f5240b52a Jean*0017
0018
0019
0020
0021
f0aa841546 Patr*0022 IMPLICIT NONE
0023
0024 #include "SIZE.h"
0025 #include "EEPARAMS.h"
0026 #include "PARAMS.h"
0027
9f5240b52a Jean*0028
0029
0030 CHARACTER*(*) myName
f8e9124d84 Jean*0031 INTEGER myIter
0032 INTEGER myThid
9f5240b52a Jean*0033
f0aa841546 Patr*0034
f8e9124d84 Jean*0035 RETURN
0036 END
f0aa841546 Patr*0037
f8e9124d84 Jean*0038
f0aa841546 Patr*0039
9f5240b52a Jean*0040
f0aa841546 Patr*0041
9f5240b52a Jean*0042 SUBROUTINE ADDUMMY_IN_HFAC( myName, myIter, myThid )
f0aa841546 Patr*0043
0044
0045
f8e9124d84 Jean*0046
f0aa841546 Patr*0047
0048
0049
0050
0051
0052
0053
f8e9124d84 Jean*0054
f0aa841546 Patr*0055
0056
0057
0058
0059 IMPLICIT NONE
0060
0061
0062 #include "SIZE.h"
0063 #include "EEPARAMS.h"
0064 #include "PARAMS.h"
0065 #ifdef ALLOW_AUTODIFF_MONITOR
0066 #include "adcommon.h"
0067 #endif
0068
9f5240b52a Jean*0069
0070
0071 CHARACTER*(1) myName
0072 INTEGER myIter
0073 INTEGER myThid
0074
0075 #ifdef ALLOW_AUTODIFF_MONITOR
0076 #ifdef ALLOW_DEPTH_CONTROL
0077
f0aa841546 Patr*0078 LOGICAL DIFFERENT_MULTIPLE
0079 EXTERNAL DIFFERENT_MULTIPLE
0080 INTEGER IO_ERRCOUNT
0081 EXTERNAL IO_ERRCOUNT
0082
0083
9f5240b52a Jean*0084
0085
0086
0087
f0aa841546 Patr*0088 CHARACTER*(MAX_LEN_FNAM) suff
0089 INTEGER beginIOErrCount
0090 INTEGER endIOErrCount
0091 CHARACTER*(MAX_LEN_MBUF) msgBuf
9f5240b52a Jean*0092 _RL myTime
0093 CHARACTER*(5) myFullName
f0aa841546 Patr*0094
0095
9f5240b52a Jean*0096 myTime = 0.
f0aa841546 Patr*0097
9f5240b52a Jean*0098 IF ( DIFFERENT_MULTIPLE( dumpFreq, myTime, myTime-deltaTClock )
0099 & ) THEN
f0aa841546 Patr*0100
f8e9124d84 Jean*0101 CALL TIMER_START('I/O (WRITE) [ADJOINT LOOP]', myThid )
f0aa841546 Patr*0102
0103
0104 WRITE(suff,'(I10.10)') myIter
0105
0106
0107 beginIOErrCount = IO_ERRCOUNT(myThid)
0108
9f5240b52a Jean*0109 IF ( myName .EQ. 'C' ) THEN
0110 myFullName = 'hFacC'
0111 CALL WRITE_FLD_XYZ_RL( 'ADJhFacC.', suff, adhfacc,
0112 & myIter, myThid )
0113 ELSE IF ( myName .EQ. 'W' ) THEN
0114 myFullName = 'hFacW'
0115 CALL WRITE_FLD_XYZ_RL( 'ADJhFacW.', suff, adhfacw,
0116 & myIter, myThid )
0117 ELSE IF ( myName .EQ. 'S' ) THEN
0118 myFullName = 'hFacS'
0119 CALL WRITE_FLD_XYZ_RL( 'ADJhFacS.', suff, adhfacs,
0120 & myIter, myThid )
f0aa841546 Patr*0121 ELSE
9f5240b52a Jean*0122 WRITE(*,*) 'addummy_in_hfac: no valid myName specified'
f0aa841546 Patr*0123 END IF
0124
0125 endIOErrCount = IO_ERRCOUNT(myThid)
0126
0127
0128 IF ( endIOErrCount .NE. beginIOErrCount ) THEN
9f5240b52a Jean*0129 WRITE(msgBuf,'(A)') 'S/R WRITE_STATE'
0130 CALL PRINT_ERROR( msgBuf, myThid )
0131 WRITE(msgBuf,'(A)') 'Error writing out model state'
0132 CALL PRINT_ERROR( msgBuf, myThid )
0133 WRITE(msgBuf,'(A,I10)') 'Timestep ',myIter
0134 CALL PRINT_ERROR( msgBuf, myThid )
f0aa841546 Patr*0135 ELSE
9f5240b52a Jean*0136 WRITE(msgBuf,'(A,I10)')
0137 & '// ad'//myFullName//' written, timestep', myIter
0138 CALL PRINT_MESSAGE( msgBuf, standardMessageUnit,
0139 & SQUEEZE_RIGHT, myThid )
0140 WRITE(msgBuf,'(A)') ' '
0141 CALL PRINT_MESSAGE( msgBuf, standardMessageUnit,
0142 & SQUEEZE_RIGHT, myThid )
f0aa841546 Patr*0143 ENDIF
0144
f8e9124d84 Jean*0145 CALL TIMER_STOP( 'I/O (WRITE) [ADJOINT LOOP]', myThid )
f0aa841546 Patr*0146
0147 ENDIF
0148
0149 #endif /* ALLOW_DEPTH_CONTROL */
f55a683bf6 Jean*0150 #endif /* ALLOW_AUTODIFF_MONITOR */
f0aa841546 Patr*0151
f8e9124d84 Jean*0152 RETURN
0153 END