File indexing completed on 2023-07-14 05:10:08 UTC
view on githubraw file Latest commit de57a2ec on 2023-07-13 16:55:13 UTC
97d49af5d4 Jean*0001 #include "AUTODIFF_OPTIONS.h"
0002
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012
0013
0014
db46a9c7cf Jean*0015
97d49af5d4 Jean*0016
0017
0018
0019
0020
0021
0022 #ifdef AUTODIFF_TAMC_COMPATIBILITY
0023 SUBROUTINE adACTIVE_READ_GEN_RL(
0024 I activeVar_file,
0025 I arrShape, myNr,
0026 I iRec,
0027 I globalFile,
0028 I useCurrentDir,
0029 I lAdInit,
0030 I myIter,
0031 I myThid,
0032 O adactive_var
0033 I )
0034 #else
0035 SUBROUTINE adACTIVE_READ_GEN_RL(
0036 I activeVar_file,
0037 O adactive_var,
0038 I arrShape, myNr,
0039 I iRec,
0040 I globalFile,
0041 I useCurrentDir,
0042 I lAdInit,
0043 I myIter,
0044 I myThid,
0045 I dummy,
0046 O addummy )
0047 #endif
0048
0049
0050
0051
0052
0053
0054
0055
0056
0057
0058
0059
0060 IMPLICIT NONE
0061
0062
0063 #include "EEPARAMS.h"
0064
0065
0066
0067
0068
0069
0070
0071
0072
0073
0074
0075
0076
0077
0078
0079 CHARACTER*(*) activeVar_file
0080 _RL adactive_var(*)
0081 CHARACTER*(2) arrShape
0082 INTEGER myNr
0083 INTEGER iRec
0084 LOGICAL globalFile
0085 LOGICAL useCurrentDir
0086 LOGICAL lAdInit
0087 INTEGER myIter
0088 INTEGER myThid
0089 _RL dummy, addummy
0090
0091
0092 CHARACTER*(2) pref
de57a2ec4b Mart*0093 CHARACTER*(MAX_LEN_FNAM) fName
97d49af5d4 Jean*0094
0095
0096 pref = 'ad'
f9d7cbfb72 Ou W*0097 CALL ADD_PREFIX( pref, activeVar_file, fName )
97d49af5d4 Jean*0098
0099 IF ( arrShape.EQ.'XY' ) THEN
0100
0101 CALL ACTIVE_READ_3D_RL(
0102 & fName, adactive_var, globalFile,
0103 & useCurrentDir, lAdInit, iRec, myNr,
0104 & REVERSE_SIMULATION, myIter, myThid )
0105
0106 ELSEIF ( arrShape.EQ.'XZ' ) THEN
0107
0108 CALL ACTIVE_READ_XZ_RL(
0109 & fName, adactive_var, globalFile,
0110 & useCurrentDir, lAdInit, iRec, myNr,
0111 & REVERSE_SIMULATION, myIter, myThid )
0112
0113 ELSEIF ( arrShape.EQ.'YZ' ) THEN
0114
0115 CALL ACTIVE_READ_YZ_RL(
0116 & fName, adactive_var, globalFile,
0117 & useCurrentDir, lAdInit, iRec, myNr,
0118 & REVERSE_SIMULATION, myIter, myThid )
0119
0120 ELSE
0121 STOP
0122 & 'ABNORMAL END: S/R adACTIVE_READ_GEN_RL: invalid arrShape'
0123 ENDIF
0124
0125 RETURN
0126 END
0127
0128
0129
0130
0131
0132 #ifdef AUTODIFF_TAMC_COMPATIBILITY
0133 SUBROUTINE adACTIVE_READ_GEN_RS(
0134 I activeVar_file,
0135 I arrShape, myNr,
0136 I iRec,
0137 I globalFile,
0138 I useCurrentDir,
0139 I lAdInit,
0140 I myIter,
0141 I myThid,
0142 O adactive_var
0143 I )
0144 #else
0145 SUBROUTINE adACTIVE_READ_GEN_RS(
0146 I activeVar_file,
0147 O adactive_var,
0148 I arrShape, myNr,
0149 I iRec,
0150 I globalFile,
0151 I useCurrentDir,
0152 I lAdInit,
0153 I myIter,
0154 I myThid,
0155 I dummy,
0156 O addummy )
0157 #endif
0158
0159
0160
0161
0162
0163
0164
0165
0166
0167
0168
0169
0170 IMPLICIT NONE
0171
0172
0173 #include "EEPARAMS.h"
0174
0175
0176
0177
0178
0179
0180
0181
0182
0183
0184
0185
0186
0187
0188
0189 CHARACTER*(*) activeVar_file
0190 _RS adactive_var(*)
0191 CHARACTER*(2) arrShape
0192 INTEGER myNr
0193 INTEGER iRec
0194 LOGICAL globalFile
0195 LOGICAL useCurrentDir
0196 LOGICAL lAdInit
0197 INTEGER myIter
0198 INTEGER myThid
0199 _RS dummy, addummy
0200
0201
0202 CHARACTER*(2) pref
de57a2ec4b Mart*0203 CHARACTER*(MAX_LEN_FNAM) fName
97d49af5d4 Jean*0204
0205
0206 pref = 'ad'
f9d7cbfb72 Ou W*0207 CALL ADD_PREFIX( pref, activeVar_file, fName )
97d49af5d4 Jean*0208
0209 IF ( arrShape.EQ.'XY' ) THEN
0210
0211 CALL ACTIVE_READ_3D_RS(
0212 & fName, adactive_var, globalFile,
0213 & useCurrentDir, lAdInit, iRec, myNr,
0214 & REVERSE_SIMULATION, myIter, myThid )
0215
0216 ELSEIF ( arrShape.EQ.'XZ' ) THEN
0217
0218 CALL ACTIVE_READ_XZ_RS(
0219 & fName, adactive_var, globalFile,
0220 & useCurrentDir, lAdInit, iRec, myNr,
0221 & REVERSE_SIMULATION, myIter, myThid )
0222
0223 ELSEIF ( arrShape.EQ.'YZ' ) THEN
0224
0225 CALL ACTIVE_READ_YZ_RS(
0226 & fName, adactive_var, globalFile,
0227 & useCurrentDir, lAdInit, iRec, myNr,
0228 & REVERSE_SIMULATION, myIter, myThid )
0229
0230 ELSE
0231 STOP
0232 & 'ABNORMAL END: S/R adACTIVE_READ_GEN_RS: invalid arrShape'
0233 ENDIF
0234
0235 RETURN
0236 END
0237
0238
0239
0240
0241
0242 #ifdef AUTODIFF_TAMC_COMPATIBILITY
0243 SUBROUTINE adACTIVE_WRITE_GEN_RL(
0244 I activeVar_file,
0245 I arrShape, myNr,
0246 I iRec,
0247 I useCurrentDir,
0248 I myIter,
0249 I myThid,
0250 U adactive_var,
0251 I dummy )
0252 #else
0253 SUBROUTINE adACTIVE_WRITE_GEN_RL(
0254 I activeVar_file,
0255 U adactive_var,
0256 I arrShape, myNr,
0257 I iRec,
0258 I useCurrentDir,
0259 I myIter,
0260 I myThid,
0261 I dummy )
0262 #endif
0263
0264
0265
0266
0267
0268
0269
0270
0271
0272
0273
0274
0275 IMPLICIT NONE
0276
0277
0278 #include "EEPARAMS.h"
0279
0280
0281
0282
0283
0284
0285
0286
0287
0288
0289
0290
0291 CHARACTER*(*) activeVar_file
0292 _RL adactive_var(*)
0293 CHARACTER*(2) arrShape
0294 INTEGER myNr
0295 INTEGER iRec
0296 LOGICAL useCurrentDir
0297 INTEGER myIter
0298 INTEGER myThid
0299 _RL dummy
0300
0301
0302
0303 CHARACTER*(2) pref
de57a2ec4b Mart*0304 CHARACTER*(MAX_LEN_FNAM) fName
97d49af5d4 Jean*0305 LOGICAL globalFile
0306
0307
0308 pref = 'ad'
f9d7cbfb72 Ou W*0309 CALL ADD_PREFIX( pref, activeVar_file, fName )
97d49af5d4 Jean*0310 globalFile = .FALSE.
0311
0312 IF ( arrShape.EQ.'XY' ) THEN
0313
0314 CALL ACTIVE_WRITE_3D_RL(
0315 & fName, adactive_var, globalFile,
0316 & useCurrentDir, iRec, myNr,
0317 & REVERSE_SIMULATION, myIter, myThid )
0318
0319 ELSEIF ( arrShape.EQ.'XZ' ) THEN
0320
0321 CALL ACTIVE_WRITE_XZ_RL(
0322 & fName, adactive_var, globalFile,
0323 & useCurrentDir, iRec, myNr,
0324 & REVERSE_SIMULATION, myIter, myThid )
0325
0326 ELSEIF ( arrShape.EQ.'YZ' ) THEN
0327
0328 CALL ACTIVE_WRITE_YZ_RL(
0329 & fName, adactive_var, globalFile,
0330 & useCurrentDir, iRec, myNr,
0331 & REVERSE_SIMULATION, myIter, myThid )
0332
0333 ELSE
0334 STOP
0335 & 'ABNORMAL END: S/R adACTIVE_WRITE_GEN_RL: invalid arrShape'
0336 ENDIF
0337
0338 RETURN
0339 END
0340
0341
0342
0343
0344
0345 #ifdef AUTODIFF_TAMC_COMPATIBILITY
0346 SUBROUTINE adACTIVE_WRITE_GEN_RS(
0347 I activeVar_file,
0348 I arrShape, myNr,
0349 I iRec,
0350 I useCurrentDir,
0351 I myIter,
0352 I myThid,
0353 U adactive_var,
0354 I dummy )
0355 #else
0356 SUBROUTINE adACTIVE_WRITE_GEN_RS(
0357 I activeVar_file,
0358 U adactive_var,
0359 I arrShape, myNr,
0360 I iRec,
0361 I useCurrentDir,
0362 I myIter,
0363 I myThid,
0364 I dummy )
0365 #endif
0366
0367
0368
0369
0370
0371
0372
0373
0374
0375
0376
0377
0378 IMPLICIT NONE
0379
0380
0381 #include "EEPARAMS.h"
0382
0383
0384
0385
0386
0387
0388
0389
0390
0391
0392
0393
0394 CHARACTER*(*) activeVar_file
0395 _RS adactive_var(*)
0396 CHARACTER*(2) arrShape
0397 INTEGER myNr
0398 INTEGER iRec
0399 LOGICAL useCurrentDir
0400 INTEGER myIter
0401 INTEGER myThid
0402 _RS dummy
0403
0404
0405
0406 CHARACTER*(2) pref
de57a2ec4b Mart*0407 CHARACTER*(MAX_LEN_FNAM) fName
97d49af5d4 Jean*0408 LOGICAL globalFile
0409
0410
0411 pref = 'ad'
f9d7cbfb72 Ou W*0412 CALL ADD_PREFIX( pref, activeVar_file, fName )
97d49af5d4 Jean*0413 globalFile = .FALSE.
0414
0415 IF ( arrShape.EQ.'XY' ) THEN
0416
0417 CALL ACTIVE_WRITE_3D_RS(
0418 & fName, adactive_var, globalFile,
0419 & useCurrentDir, iRec, myNr,
0420 & REVERSE_SIMULATION, myIter, myThid )
0421
0422 ELSEIF ( arrShape.EQ.'XZ' ) THEN
0423
0424 CALL ACTIVE_WRITE_XZ_RS(
0425 & fName, adactive_var, globalFile,
0426 & useCurrentDir, iRec, myNr,
0427 & REVERSE_SIMULATION, myIter, myThid )
0428
0429 ELSEIF ( arrShape.EQ.'YZ' ) THEN
0430
0431 CALL ACTIVE_WRITE_YZ_RS(
0432 & fName, adactive_var, globalFile,
0433 & useCurrentDir, iRec, myNr,
0434 & REVERSE_SIMULATION, myIter, myThid )
0435
0436 ELSE
0437 STOP
0438 & 'ABNORMAL END: S/R adACTIVE_WRITE_GEN_RS: invalid arrShape'
0439 ENDIF
0440
0441 RETURN
0442 END