60 |
READ(37,*) (eosC(I,K),I=1,9) |
READ(37,*) (eosC(I,K),I=1,9) |
61 |
ENDDO |
ENDDO |
62 |
CLOSE(37) |
CLOSE(37) |
63 |
|
|
64 |
elseif ( equationOfState(1:5) .eq. 'JMD95' |
elseif ( equationOfState(1:5) .eq. 'JMD95' |
65 |
& .or. equationOfState .eq. 'UNESCO' ) then |
& .or. equationOfState .eq. 'UNESCO' ) then |
66 |
C |
C |
69 |
C pressure needs to be available (from the previous |
C pressure needs to be available (from the previous |
70 |
C time step to linearize the problem) |
C time step to linearize the problem) |
71 |
C |
C |
72 |
do bj = myByLo(myThid), myByHi(myThid) |
if ( equationOfState .eq. 'JMD95Z' |
73 |
do bi = myBxLo(myThid), myBxHi(myThid) |
& .and. buoyancyRelation .eq. 'OCEANICP' ) then |
74 |
do K=1,Nr |
write(msgBuf,'(A)') |
75 |
do J=1-Oly,sNy+Oly |
& 'ini_eos: equation of state ''JMD95Z'' should not' |
76 |
do I=1-Olx,sNx+Olx |
CALL PRINT_ERROR( msgBuf , 1) |
77 |
pressure(i,j,k,bi,bj) = |
write(msgBuf,'(A)') |
78 |
& - rhonil*gravity*rC(k) |
& ' be used together with pressure coordinates.' |
79 |
|
CALL PRINT_ERROR( msgBuf , 1) |
80 |
|
write(msgBuf,'(A)') |
81 |
|
& ' Use only ''JMD95P'' with ''OCEANICP''.' |
82 |
|
CALL PRINT_ERROR( msgBuf , 1) |
83 |
|
STOP 'ABNORMAL END: S/R INI_EOS' |
84 |
|
endif |
85 |
|
C |
86 |
|
if ( buoyancyRelation .eq. 'OCEANIC' ) then |
87 |
|
do bj = myByLo(myThid), myByHi(myThid) |
88 |
|
do bi = myBxLo(myThid), myBxHi(myThid) |
89 |
|
do K=1,Nr |
90 |
|
do J=1-Oly,sNy+Oly |
91 |
|
do I=1-Olx,sNx+Olx |
92 |
|
pressure(i,j,k,bi,bj) = rhonil * ( |
93 |
|
& - gravity*rC(k) |
94 |
|
& ) |
95 |
|
end do |
96 |
|
end do |
97 |
|
end do |
98 |
|
end do |
99 |
|
end do |
100 |
|
elseif ( buoyancyRelation .eq. 'ATMOSPHERIC' |
101 |
|
& .or. buoyancyRelation .eq. 'OCEANICP' ) then |
102 |
|
C in pressure coordinates the pressure is just the coordinate of |
103 |
|
C the tracer point |
104 |
|
do bj = myByLo(myThid), myByHi(myThid) |
105 |
|
do bi = myBxLo(myThid), myBxHi(myThid) |
106 |
|
do K=1,Nr |
107 |
|
do J=1-Oly,sNy+Oly |
108 |
|
do I=1-Olx,sNx+Olx |
109 |
|
pressure(i,j,k,bi,bj) = rC(k) |
110 |
|
end do |
111 |
end do |
end do |
112 |
end do |
end do |
113 |
end do |
end do |
114 |
end do |
end do |
115 |
end do |
endif |
116 |
|
|
117 |
C coefficients nonlinear equation of state in pressure coordinates for |
C coefficients nonlinear equation of state in pressure coordinates for |
118 |
C 1. density of fresh water at p = 0 |
C 1. density of fresh water at p = 0 |
348 |
bulkMod(i,j) = -1. _d 0 |
bulkMod(i,j) = -1. _d 0 |
349 |
|
|
350 |
call find_rhop0( |
call find_rhop0( |
351 |
I bi, bj, imin, imax, jmin, jmax, k, tFld, sFld, |
I bi, bj, imin, imax, jmin, jmax, k, k, |
352 |
|
I tFld, sFld, |
353 |
O rhoP0, |
O rhoP0, |
354 |
I myThid ) |
I myThid ) |
355 |
|
|
356 |
call find_bulkmod( |
call find_bulkmod( |
357 |
I bi, bj, imin, imax, jmin, jmax, k, tFld, sFld, |
I bi, bj, imin, imax, jmin, jmax, k, k, |
358 |
|
I tFld, sFld, |
359 |
O bulkMod, |
O bulkMod, |
360 |
I myThid ) |
I myThid ) |
361 |
|
|