File indexing completed on 2018-03-02 18:44:35 UTC
view on githubraw file Latest commit add29e06 on 2018-01-31 20:35:05 UTC
87ea84cac6 Jean*0001 #include "THSICE_OPTIONS.h"
0002
0003
0004
cc04975b16 Jean*0005 SUBROUTINE THSICE_WRITE_PICKUP( permPickup, suff,
0006 I myTime, myIter, myThid )
87ea84cac6 Jean*0007
0008
0009
0010
0011
0012
0013
0014
0015
0016 IMPLICIT NONE
0017
0018
0019 #include "SIZE.h"
0020 #include "EEPARAMS.h"
0021 #include "PARAMS.h"
0022 #include "THSICE_PARAMS.h"
0023 #include "THSICE_VARS.h"
0024
0025
0026
cc04975b16 Jean*0027
0028
0029
0030
0031
0032 LOGICAL permPickup
0033 CHARACTER*(*) suff
0034 _RL myTime
87ea84cac6 Jean*0035 INTEGER myIter
0036 INTEGER myThid
0037
0038
0039 #ifdef ALLOW_THSICE
cc04975b16 Jean*0040
87ea84cac6 Jean*0041 CHARACTER*(MAX_LEN_FNAM) fn
cc04975b16 Jean*0042 INTEGER prec
87ea84cac6 Jean*0043
60cad0f1a5 Jean*0044
0045
0046 #ifdef ALLOW_OCN_COMPON_INTERF
0047 IF ( useCoupler .AND. thSIce_skipThermo ) RETURN
0048 #endif /* ALLOW_OCN_COMPON_INTERF */
0049
df4e8f7bcf Ed H*0050 IF ( thSIce_pickup_write_mdsio ) THEN
cc04975b16 Jean*0051 prec = precFloat64
0052 WRITE(fn,'(A,A)') 'pickup_ic.',suff
0053
0054 CALL WRITE_REC_3D_RL( fn,prec, 1, iceMask, 1, myIter,myThid )
0055 CALL WRITE_REC_3D_RL( fn,prec, 1, iceHeight,2, myIter,myThid )
0056 CALL WRITE_REC_3D_RL( fn,prec, 1,snowHeight,3, myIter,myThid )
0057 CALL WRITE_REC_3D_RL( fn,prec, 1, Tsrf, 4, myIter,myThid )
0058 CALL WRITE_REC_3D_RL( fn,prec, 1, Tice1, 5, myIter,myThid )
0059 CALL WRITE_REC_3D_RL( fn,prec, 1, Tice2, 6, myIter,myThid )
0060 CALL WRITE_REC_3D_RL( fn,prec, 1, Qice1, 7, myIter,myThid )
0061 CALL WRITE_REC_3D_RL( fn,prec, 1, Qice2, 8, myIter,myThid )
0062 CALL WRITE_REC_3D_RL( fn,prec, 1, snowAge, 9, myIter,myThid )
87ea84cac6 Jean*0063
df4e8f7bcf Ed H*0064 IF ( stepFwd_oceMxL ) THEN
cc04975b16 Jean*0065 CALL WRITE_REC_3D_RL( fn,prec,1, tOceMxL, 10, myIter,myThid )
0066 CALL WRITE_REC_3D_RL( fn,prec,1, sOceMxL, 11, myIter,myThid )
df4e8f7bcf Ed H*0067 ENDIF
0068 ENDIF
0069
0070 #ifdef ALLOW_MNC
0071 IF ( thSIce_pickup_write_mnc ) THEN
cc04975b16 Jean*0072 IF ( permPickup ) THEN
c29c5d093c Ed H*0073 WRITE(fn,'(A)') 'pickup_ic'
0074 ELSE
cc04975b16 Jean*0075 WRITE(fn,'(A,A)') 'pickup_ic.',suff
c29c5d093c Ed H*0076 ENDIF
0077
df4e8f7bcf Ed H*0078 CALL MNC_CW_SET_UDIM(fn, 0, myThid)
cc04975b16 Jean*0079 IF ( permPickup ) THEN
c29c5d093c Ed H*0080 CALL MNC_CW_SET_CITER(fn, 3, 3, myIter, 0, myThid)
0081 ELSE
0082 CALL MNC_CW_SET_CITER(fn, 2, -1, -1, -1, myThid)
0083 ENDIF
0084
0085 CALL MNC_CW_SET_UDIM(fn, 1, myThid)
0086 CALL MNC_CW_I_W_S('I',fn,0,0,'iter', myIter, myThid)
df4e8f7bcf Ed H*0087
0088 CALL MNC_CW_RL_W('D',fn,0,0,'iceMask', iceMask, myThid)
0089 CALL MNC_CW_RL_W('D',fn,0,0,'iceHeight', iceHeight, myThid)
0090 CALL MNC_CW_RL_W('D',fn,0,0,'snowHeight',snowHeight,myThid)
0091 CALL MNC_CW_RL_W('D',fn,0,0,'Tsrf', Tsrf, myThid)
0092 CALL MNC_CW_RL_W('D',fn,0,0,'Tice1', Tice1, myThid)
0093 CALL MNC_CW_RL_W('D',fn,0,0,'Tice2', Tice1, myThid)
0094 CALL MNC_CW_RL_W('D',fn,0,0,'Qice1', Qice1, myThid)
0095 CALL MNC_CW_RL_W('D',fn,0,0,'Qice2', Qice2, myThid)
0096 CALL MNC_CW_RL_W('D',fn,0,0,'snowAge', snowAge, myThid)
0097 IF ( stepFwd_oceMxL ) THEN
0098 CALL MNC_CW_RL_W('D',fn,0,0,'tOceMxL',tOceMxL,myThid)
0099 CALL MNC_CW_RL_W('D',fn,0,0,'sOceMxL',sOceMxL,myThid)
0100 ENDIF
0101 ENDIF
0102 #endif /* ALLOW_MNC */
87ea84cac6 Jean*0103
0104 #endif /* ALLOW_THSICE */
0105 RETURN
0106 END