File indexing completed on 2018-03-02 18:36:47 UTC
view on githubraw file Latest commit add29e06 on 2018-01-31 20:35:05 UTC
0ac260a803 Andr*0001 #include "CPP_OPTIONS.h"
0002
0003
b6aef9f254 Jean*0004
0ac260a803 Andr*0005
b6aef9f254 Jean*0006 SUBROUTINE INI_CYLINDER_GRID( myThid )
758c85d317 Jean*0007
0ac260a803 Andr*0008
758c85d317 Jean*0009
b6aef9f254 Jean*0010
758c85d317 Jean*0011
0012
0013
0014
0015
0016
06399abf63 Jean*0017
0018
0019
0020
758c85d317 Jean*0021
0ac260a803 Andr*0022
0023
0024
0025 IMPLICIT NONE
0026
0027 #include "SIZE.h"
0028 #include "EEPARAMS.h"
0029 #include "PARAMS.h"
0030 #include "GRID.h"
0031
0032
0033
758c85d317 Jean*0034
0ac260a803 Andr*0035 INTEGER myThid
0036
0037
0038
758c85d317 Jean*0039
0040
06399abf63 Jean*0041
0042
0043
0044
0045
0046
0047
0ac260a803 Andr*0048 INTEGER bi, bj
06399abf63 Jean*0049 INTEGER i, j
0050 INTEGER gridNx, gridNy
0051
0052
0053 _RL dtheta, thisRad
0054
0055 _RL delXloc(0-OLx:sNx+OLx)
0056 _RL delYloc(0-OLy:sNy+OLy)
0057
0058 _RL xGloc(1-OLx:sNx+OLx+1,1-OLy:sNy+OLy+1)
0059 _RL yGloc(1-OLx:sNx+OLx+1,1-OLy:sNy+OLy+1)
0ac260a803 Andr*0060
0061
06399abf63 Jean*0062
0ac260a803 Andr*0063 DO bj = myByLo(myThid), myByHi(myThid)
0064 DO bi = myBxLo(myThid), myBxHi(myThid)
0065
06399abf63 Jean*0066
0067
0068 CALL INI_LOCAL_GRID(
0069 O xGloc, yGloc,
0070 O delXloc, delYloc,
0071 O gridNx, gridNy,
0072 I bi, bj, myThid )
0ac260a803 Andr*0073
0074
06399abf63 Jean*0075 DO j=1-OLy,sNy+OLy
0076 DO i=1-OLx,sNx+OLx
758c85d317 Jean*0077 xG(i,j,bi,bj) = xGloc(i,j)
0078 yG(i,j,bi,bj) = yGloc(i,j)
0ac260a803 Andr*0079 ENDDO
0080 ENDDO
0081
0082
06399abf63 Jean*0083 DO j=1-OLy,sNy+OLy
0084 DO i=1-OLx,sNx+OLx
0ac260a803 Andr*0085
758c85d317 Jean*0086 xC(i,j,bi,bj) = 0.25 _d 0*(
0087 & xGloc(i,j)+xGloc(i+1,j)+xGloc(i,j+1)+xGloc(i+1,j+1) )
0088 yC(i,j,bi,bj) = 0.25 _d 0*(
0089 & yGloc(i,j)+yGloc(i+1,j)+yGloc(i,j+1)+yGloc(i+1,j+1) )
0ac260a803 Andr*0090 ENDDO
0091 ENDDO
0092
0093
06399abf63 Jean*0094 DO j=1-OLy,sNy+OLy
0095 DO i=1-OLx,sNx+OLx
758c85d317 Jean*0096 thisRad = yC(i,j,bi,bj)
06399abf63 Jean*0097 dtheta = delXloc(i)
758c85d317 Jean*0098 dxF(i,j,bi,bj) = thisRad*dtheta*deg2rad
06399abf63 Jean*0099 dyF(i,j,bi,bj) = delYloc(j)
0ac260a803 Andr*0100 ENDDO
0101 ENDDO
0102
0103
06399abf63 Jean*0104 DO j=1-OLy,sNy+OLy
0105 DO i=1-OLx,sNx+OLx
758c85d317 Jean*0106 thisRad = 0.5 _d 0*(yGloc(i,j)+yGloc(i+1,j))
06399abf63 Jean*0107 dtheta = delXloc(i)
758c85d317 Jean*0108 dxG(i,j,bi,bj) = thisRad*dtheta*deg2rad
06399abf63 Jean*0109 dyG(i,j,bi,bj) = delYloc(j)
0ac260a803 Andr*0110 ENDDO
0111 ENDDO
0112
0113
71b5d4795f Jean*0114
0115
0ac260a803 Andr*0116
0117
06399abf63 Jean*0118 DO j=1-OLy,sNy+OLy
0119 DO i=1-OLx+1,sNx+OLx
0ac260a803 Andr*0120
758c85d317 Jean*0121 dxC(i,j,bi,bj) = 0.5 _d 0*(dxF(i,j,bi,bj)+dxF(i-1,j,bi,bj))
0ac260a803 Andr*0122 ENDDO
0123 ENDDO
0124
0125
06399abf63 Jean*0126 DO j=1-OLy+1,sNy+OLy
0127 DO i=1-OLx,sNx+OLx
0ac260a803 Andr*0128
758c85d317 Jean*0129 dyC(i,j,bi,bj) = 0.5 _d 0*(dyF(i,j,bi,bj)+dyF(i,j-1,bi,bj))
0ac260a803 Andr*0130 ENDDO
0131 ENDDO
0132
0133
06399abf63 Jean*0134 DO j=1-OLy+1,sNy+OLy
0135 DO i=1-OLx+1,sNx+OLx
0ac260a803 Andr*0136
758c85d317 Jean*0137 dxV(i,j,bi,bj) = 0.5 _d 0*(dxG(i,j,bi,bj)+dxG(i-1,j,bi,bj))
0138 dyU(i,j,bi,bj) = 0.5 _d 0*(dyG(i,j,bi,bj)+dyG(i,j-1,bi,bj))
0ac260a803 Andr*0139 ENDDO
0140 ENDDO
0141
9780090eaa Jean*0142
06399abf63 Jean*0143 DO j=1-OLy,sNy+OLy
0144 DO i=1-OLx,sNx+OLx
b6aef9f254 Jean*0145
758c85d317 Jean*0146 rA (i,j,bi,bj) = dxF(i,j,bi,bj)*dyF(i,j,bi,bj)
0147 rAw(i,j,bi,bj) = dxC(i,j,bi,bj)*dyG(i,j,bi,bj)
0148 rAs(i,j,bi,bj) = dxG(i,j,bi,bj)*dyC(i,j,bi,bj)
0149 rAz(i,j,bi,bj) = dxV(i,j,bi,bj)*dyU(i,j,bi,bj)
b6aef9f254 Jean*0150
71b5d4795f Jean*0151
0152
0153
0154
0155
0ac260a803 Andr*0156 ENDDO
0157 ENDDO
0158
06399abf63 Jean*0159
0160 ENDDO
0161 ENDDO
f76021331f Jean*0162
0ac260a803 Andr*0163 RETURN
0164 END