File indexing completed on 2020-07-25 05:10:56 UTC
view on githubraw file Latest commit a2844551 on 2020-07-25 02:56:46 UTC
c0d1c06c15 Matt*0001 #include "BLING_OPTIONS.h"
ad31d92a39 Jean*0002 #ifdef ALLOW_EXF
0003 # include "EXF_OPTIONS.h"
0004 #endif
c0d1c06c15 Matt*0005
0006
0007 subroutine BLING_INI_FORCING( myThid )
0008
0009
0010
0011
0012
0013
e0f9a7ba0b Matt*0014 IMPLICIT NONE
ad31d92a39 Jean*0015
c0d1c06c15 Matt*0016
0017 #include "SIZE.h"
0018 #include "EEPARAMS.h"
0019 #include "PARAMS.h"
0020 #include "GRID.h"
e0f9a7ba0b Matt*0021 #ifdef ALLOW_EXF
9f0da36f91 Jean*0022 # include "EXF_INTERP_SIZE.h"
079948e6a6 Matt*0023 #endif
c0d1c06c15 Matt*0024 #include "BLING_VARS.h"
0025 #include "BLING_LOAD.h"
0026
0027
0028
0029 INTEGER myThid
0030
0031
0032 #ifdef ALLOW_BLING
0033
0034
0035 INTEGER bi,bj,i,j
e0f9a7ba0b Matt*0036 #ifdef USE_BLING_V1
c0d1c06c15 Matt*0037 CHARACTER*(MAX_LEN_MBUF) msgBuf
0038 #endif
0039
0040
0041 DO bj = myByLo(myThid), myByHi(myThid)
0042 DO bi = myBxLo(myThid), myBxHi(myThid)
0043 BLING_ldRec(bi,bj) = 0
0044 ENDDO
0045 ENDDO
0046 CALL LEF_ZERO( dicwind0,myThid )
0047 CALL LEF_ZERO( dicwind1,myThid )
0048 CALL LEF_ZERO( atmosp0,myThid )
0049 CALL LEF_ZERO( atmosp1,myThid )
0050 CALL LEF_ZERO( silica0,myThid )
0051 CALL LEF_ZERO( silica1,myThid )
0052 CALL LEF_ZERO( ice0,myThid )
0053 CALL LEF_ZERO( ice1,myThid )
0054 CALL LEF_ZERO( feinput0,myThid )
0055 CALL LEF_ZERO( feinput1,myThid )
0056
e0f9a7ba0b Matt*0057 #ifdef USE_BLING_V1
0058 #ifdef USE_SIBLING
c0d1c06c15 Matt*0059 WRITE(msgBuf,'(2A)')
e0f9a7ba0b Matt*0060 & ' BLING_INI_FORCING: You can not have USE_SIBLING ',
0061 & ' with USE_BLING_V1'
c0d1c06c15 Matt*0062 CALL PRINT_ERROR( msgBuf, myThid )
0063 STOP 'ABNORMAL END: S/R BLING_INI_FORCING'
0064 #endif
e0f9a7ba0b Matt*0065 #ifdef USE_BLING_DVM
0066 WRITE(msgBuf,'(2A)')
0067 & ' BLING_INI_FORCING: You can not have USE_BLING_DVM ',
0068 & ' with USE_BLING_V1'
0069 CALL PRINT_ERROR( msgBuf, myThid )
0070 STOP 'ABNORMAL END: S/R BLING_INI_FORCING'
c0d1c06c15 Matt*0071 #endif
e0f9a7ba0b Matt*0072 #ifdef ADVECT_PHYTO
0073 WRITE(msgBuf,'(2A)')
0074 & ' BLING_INI_FORCING: You can not use ADVECT_PHYTO ',
0075 & ' with USE_BLING_V1'
0076 CALL PRINT_ERROR( msgBuf, myThid )
0077 STOP 'ABNORMAL END: S/R BLING_INI_FORCING'
0078 #endif
0079 #endif /* USE_BLING_V1 */
c0d1c06c15 Matt*0080
0081
0082 DO bj = myByLo(myThid), myByHi(myThid)
0083 DO bi = myBxLo(myThid), myBxHi(myThid)
ad31d92a39 Jean*0084 DO j=1-OLy,sNy+OLy
0085 DO i=1-OLx,sNx+OLx
a284455135 Matt*0086 apco2(i,j,bi,bj) = bling_pCO2*maskC(i,j,1,bi,bj)
e0f9a7ba0b Matt*0087 wind(i,j,bi,bj) = 5. _d 0*maskC(i,j,1,bi,bj)
0088 atmosP(i,j,bi,bj) = 1. _d 0*maskC(i,j,1,bi,bj)
0089 fIce(i,j,bi,bj) = 0. _d 0
0090 fluxCO2(i,j,bi,bj) = 0. _d 0
0091 InputFe(i,j,bi,bj) = 1. _d -11*maskC(i,j,1,bi,bj)
0092 silica(i,j,bi,bj) = 7.6838 _d -3*maskC(i,j,1,bi,bj)
c0d1c06c15 Matt*0093 ENDDO
0094 ENDDO
0095 ENDDO
0096 ENDDO
0097
e0f9a7ba0b Matt*0098 #ifdef ALLOW_EXF
0099 IF ( useEXF ) THEN
a284455135 Matt*0100 IF ( apco2file .NE. ' ' ) THEN
ad31d92a39 Jean*0101 CALL EXF_INIT_FLD(
0102 I 'apco2', apco2file, apco2mask,
0103 I apco2period, exf_inscal_apco2, apco2const,
a284455135 Matt*0104 O apco2, apco20, apco21,
079948e6a6 Matt*0105 # ifdef USE_EXF_INTERPOLATION
ad31d92a39 Jean*0106 I apco2_lon0, apco2_lon_inc,
0107 I apco2_lat0, apco2_lat_inc,
0108 I apco2_nlon, apco2_nlat, xC, yC, apco2_interpMethod,
079948e6a6 Matt*0109 # endif
ad31d92a39 Jean*0110 I myThid )
a284455135 Matt*0111 ENDIF
e0f9a7ba0b Matt*0112 ENDIF
9f0da36f91 Jean*0113 #endif /* ALLOW_EXF */
079948e6a6 Matt*0114
c0d1c06c15 Matt*0115 #endif /* ALLOW_BLING */
0116 RETURN
0117 END