/[MITgcm]/MITgcm/pkg/ctrl/ctrl_map_ini.F
ViewVC logotype

Diff of /MITgcm/pkg/ctrl/ctrl_map_ini.F

Parent Directory Parent Directory | Revision Log Revision Log | View Revision Graph Revision Graph | View Patch Patch

revision 1.18 by heimbach, Tue Jan 3 17:10:35 2006 UTC revision 1.30 by gforget, Fri May 30 02:48:28 2008 UTC
# Line 1  Line 1 
1  C $Header$  C $Header$
2    C $Name$
3    
4  #include "CTRL_CPPOPTIONS.h"  #include "CTRL_CPPOPTIONS.h"
5    
# Line 10  C     !INTERFACE: Line 11  C     !INTERFACE:
11  C     !DESCRIPTION: \bv  C     !DESCRIPTION: \bv
12  c     *=================================================================  c     *=================================================================
13  c     | SUBROUTINE ctrl_map_ini  c     | SUBROUTINE ctrl_map_ini
14  c     | Add the temperature, salinity, and diffusivity parts of the  c     | Add the temperature, salinity, and diffusivity parts of the
15  c     | control vector to the model state and update the tile halos.  c     | control vector to the model state and update the tile halos.
16  c     | The control vector is defined in the header file "ctrl.h".  c     | The control vector is defined in the header file "ctrl.h".
17  c     *=================================================================  c     *=================================================================
18  C     \ev  C     \ev
# Line 31  c     == global variables == Line 32  c     == global variables ==
32  #include "optim.h"  #include "optim.h"
33  #ifdef ALLOW_PTRACERS  #ifdef ALLOW_PTRACERS
34  # include "PTRACERS_SIZE.h"  # include "PTRACERS_SIZE.h"
35  # include "PTRACERS.h"  c#include "PTRACERS_PARAMS.h"
36    # include "PTRACERS_FIELDS.h"
37  #endif  #endif
38  #ifdef ALLOW_ECCO  #ifdef ALLOW_ECCO
39  # include "ecco_cost.h"  # include "ecco_cost.h"
# Line 93  c--   Temperature field. Line 95  c--   Temperature field.
95        il=ilnblnk( xx_theta_file )        il=ilnblnk( xx_theta_file )
96        write(fnamegeneric(1:80),'(2a,i10.10)')        write(fnamegeneric(1:80),'(2a,i10.10)')
97       &     xx_theta_file(1:il),'.',optimcycle       &     xx_theta_file(1:il),'.',optimcycle
98        call active_read_xyz_loc( fnamegeneric, tmpfld3d, 1,        call active_read_xyz( fnamegeneric, tmpfld3d, 1,
99       &                      doglobalread, ladinit, optimcycle,       &                      doglobalread, ladinit, optimcycle,
100       &                      mythid, xx_theta_dummy )       &                      mythid, xx_theta_dummy )
101    
# Line 108  c--   Temperature field. Line 110  c--   Temperature field.
110       $          tmpfld3d(i,j,k,bi,bj)=       $          tmpfld3d(i,j,k,bi,bj)=
111       $          sign(2.0/sqrt(wtheta(k,bi,bj)),tmpfld3d(i,j,k,bi,bj))       $          sign(2.0/sqrt(wtheta(k,bi,bj)),tmpfld3d(i,j,k,bi,bj))
112  #endif  #endif
113  #ifdef ALLOW_OPENAD  #ifdef ALLOW_AUTODIFF_OPENAD
114                  theta(i,j,k,bi,bj) = theta(i,j,k,bi,bj) +                  theta(i,j,k,bi,bj) = theta(i,j,k,bi,bj) +
115       &                               fac*xx_theta(i,j,k,bi,bj)       &                               fac*xx_theta(i,j,k,bi,bj) +
116         &                               fac*tmpfld3d(i,j,k,bi,bj)
117  #else  #else
118                  theta(i,j,k,bi,bj) = theta(i,j,k,bi,bj) +                  theta(i,j,k,bi,bj) = theta(i,j,k,bi,bj) +
119       &                               fac*tmpfld3d(i,j,k,bi,bj)       &                               fac*tmpfld3d(i,j,k,bi,bj)
120  #endif  #endif
121                  if(theta(i,j,k,bi,bj).lt.-2.0)  #ifndef DISABLE_CTRL_THETA_LIMIT
122       &               theta(i,j,k,bi,bj)= -2.0                  if(theta(i,j,k,bi,bj).lt.-2.0)
123         &               theta(i,j,k,bi,bj)= -2.0
124    #endif
125                enddo                enddo
126              enddo              enddo
127            enddo            enddo
# Line 130  c--   Temperature field. Line 135  c--   Temperature field.
135        il=ilnblnk( xx_salt_file )        il=ilnblnk( xx_salt_file )
136        write(fnamegeneric(1:80),'(2a,i10.10)')        write(fnamegeneric(1:80),'(2a,i10.10)')
137       &     xx_salt_file(1:il),'.',optimcycle       &     xx_salt_file(1:il),'.',optimcycle
138        call active_read_xyz_loc( fnamegeneric, tmpfld3d, 1,        call active_read_xyz( fnamegeneric, tmpfld3d, 1,
139       &                      doglobalread, ladinit, optimcycle,       &                      doglobalread, ladinit, optimcycle,
140       &                      mythid, xx_salt_dummy )       &                      mythid, xx_salt_dummy )
141    
# Line 145  c--   Temperature field. Line 150  c--   Temperature field.
150       $          tmpfld3d(i,j,k,bi,bj)=       $          tmpfld3d(i,j,k,bi,bj)=
151       $          sign(2.0/sqrt(wsalt(k,bi,bj)),tmpfld3d(i,j,k,bi,bj))       $          sign(2.0/sqrt(wsalt(k,bi,bj)),tmpfld3d(i,j,k,bi,bj))
152  #endif  #endif
153  #ifdef ALLOW_OPENAD  #ifdef ALLOW_AUTODIFF_OPENAD
154                  salt(i,j,k,bi,bj) = salt(i,j,k,bi,bj) +                  salt(i,j,k,bi,bj) = salt(i,j,k,bi,bj) +
155       &                               fac*xx_salt(i,j,k,bi,bj)       &                               fac*xx_salt(i,j,k,bi,bj) +
156         &                               fac*tmpfld3d(i,j,k,bi,bj)
157  #else  #else
158                  salt(i,j,k,bi,bj) = salt(i,j,k,bi,bj) +                  salt(i,j,k,bi,bj) = salt(i,j,k,bi,bj) +
159       &                               fac*tmpfld3d(i,j,k,bi,bj)       &                               fac*tmpfld3d(i,j,k,bi,bj)
# Line 166  c--   Temperature field. Line 172  c--   Temperature field.
172        il=ilnblnk( xx_tr1_file )        il=ilnblnk( xx_tr1_file )
173        write(fnamegeneric(1:80),'(2a,i10.10)')        write(fnamegeneric(1:80),'(2a,i10.10)')
174       &     xx_tr1_file(1:il),'.',optimcycle       &     xx_tr1_file(1:il),'.',optimcycle
175        call active_read_xyz_loc( fnamegeneric, tmpfld3d, 1,        call active_read_xyz( fnamegeneric, tmpfld3d, 1,
176       &                      doglobalread, ladinit, optimcycle,       &                      doglobalread, ladinit, optimcycle,
177       &                      mythid, xx_tr1_dummy )       &                      mythid, xx_tr1_dummy )
178    
# Line 190  c--   sst0. Line 196  c--   sst0.
196        il=ilnblnk( xx_sst_file )        il=ilnblnk( xx_sst_file )
197        write(fnamegeneric(1:80),'(2a,i10.10)')        write(fnamegeneric(1:80),'(2a,i10.10)')
198       &     xx_sst_file(1:il),'.',optimcycle       &     xx_sst_file(1:il),'.',optimcycle
199        call active_read_xy_loc ( fnamegeneric, tmpfld2d, 1,        call active_read_xy ( fnamegeneric, tmpfld2d, 1,
200       &                      doglobalread, ladinit, optimcycle,       &                      doglobalread, ladinit, optimcycle,
201       &                      mythid, xx_sst_dummy )       &                      mythid, xx_sst_dummy )
202        do bj = jtlo,jthi        do bj = jtlo,jthi
# Line 198  c--   sst0. Line 204  c--   sst0.
204            do j = jmin,jmax            do j = jmin,jmax
205              do i = imin,imax              do i = imin,imax
206  cph              sst(i,j,bi,bj) = sst(i,j,bi,bj) + tmpfld2d(i,j,bi,bj)  cph              sst(i,j,bi,bj) = sst(i,j,bi,bj) + tmpfld2d(i,j,bi,bj)
207                theta(i,j,1,bi,bj) = theta(i,j,1,bi,bj)                theta(i,j,1,bi,bj) = theta(i,j,1,bi,bj)
208       &                             + tmpfld2d(i,j,bi,bj)       &                             + tmpfld2d(i,j,bi,bj)
209              enddo              enddo
210            enddo            enddo
# Line 211  c--   sss0. Line 217  c--   sss0.
217        il=ilnblnk( xx_sss_file )        il=ilnblnk( xx_sss_file )
218        write(fnamegeneric(1:80),'(2a,i10.10)')        write(fnamegeneric(1:80),'(2a,i10.10)')
219       &     xx_sss_file(1:il),'.',optimcycle       &     xx_sss_file(1:il),'.',optimcycle
220        call active_read_xy_loc ( fnamegeneric, tmpfld2d, 1,        call active_read_xy ( fnamegeneric, tmpfld2d, 1,
221       &                      doglobalread, ladinit, optimcycle,       &                      doglobalread, ladinit, optimcycle,
222       &                      mythid, xx_sss_dummy )       &                      mythid, xx_sss_dummy )
223        do bj = jtlo,jthi        do bj = jtlo,jthi
# Line 227  cph              sss(i,j,bi,bj) = sss(i, Line 233  cph              sss(i,j,bi,bj) = sss(i,
233        enddo        enddo
234  #endif  #endif
235    
236    #ifdef ALLOW_AUTODIFF
237  #ifdef ALLOW_DIFFKR_CONTROL  #ifdef ALLOW_DIFFKR_CONTROL
238  c--   diffkr.  c--   diffkr.
239        il=ilnblnk( xx_diffkr_file )        il=ilnblnk( xx_diffkr_file )
240        write(fnamegeneric(1:80),'(2a,i10.10)')        write(fnamegeneric(1:80),'(2a,i10.10)')
241       &     xx_diffkr_file(1:il),'.',optimcycle       &     xx_diffkr_file(1:il),'.',optimcycle
242        call active_read_xyz_loc( fnamegeneric, tmpfld3d, 1,        call active_read_xyz( fnamegeneric, tmpfld3d, 1,
243       &                      doglobalread, ladinit, optimcycle,       &                      doglobalread, ladinit, optimcycle,
244       &                      mythid, xx_diffkr_dummy )       &                      mythid, xx_diffkr_dummy )
245        do bj = jtlo,jthi        do bj = jtlo,jthi
# Line 248  c--   diffkr. Line 255  c--   diffkr.
255         enddo         enddo
256        enddo        enddo
257  #endif  #endif
258    #endif
259    
260    #ifdef ALLOW_AUTODIFF
261  #ifdef ALLOW_KAPGM_CONTROL  #ifdef ALLOW_KAPGM_CONTROL
262  c--   kapgm.  c--   kapgm.
263        il=ilnblnk( xx_kapgm_file )        il=ilnblnk( xx_kapgm_file )
264        write(fnamegeneric(1:80),'(2a,i10.10)')        write(fnamegeneric(1:80),'(2a,i10.10)')
265       &     xx_kapgm_file(1:il),'.',optimcycle       &     xx_kapgm_file(1:il),'.',optimcycle
266        call active_read_xyz_loc( fnamegeneric, tmpfld3d, 1,        call active_read_xyz( fnamegeneric, tmpfld3d, 1,
267       &                      doglobalread, ladinit, optimcycle,       &                      doglobalread, ladinit, optimcycle,
268       &                      mythid, xx_kapgm_dummy )       &                      mythid, xx_kapgm_dummy )
269        do bj = jtlo,jthi        do bj = jtlo,jthi
# Line 270  c--   kapgm. Line 279  c--   kapgm.
279         enddo         enddo
280        enddo        enddo
281  #endif  #endif
282    #endif
283    
284    #ifdef ALLOW_AUTODIFF
285    #ifdef ALLOW_KAPREDI_CONTROL
286    c--   kapredi.
287          il=ilnblnk( xx_kapredi_file )
288          write(fnamegeneric(1:80),'(2a,i10.10)')
289         &     xx_kapredi_file(1:il),'.',optimcycle
290          call active_read_xyz( fnamegeneric, tmpfld3d, 1,
291         &                      doglobalread, ladinit, optimcycle,
292         &                      mythid, xx_kapredi_dummy )
293          do bj = jtlo,jthi
294            do bi = itlo,ithi
295              do k = 1,nr
296                do j = jmin,jmax
297                  do i = imin,imax
298                    kapredi(i,j,k,bi,bj) = kapredi(i,j,k,bi,bj) +
299         &                               tmpfld3d(i,j,k,bi,bj)
300                  enddo
301                enddo
302              enddo
303           enddo
304          enddo
305    #endif
306    #endif
307    
308  #ifdef ALLOW_EFLUXY0_CONTROL  #ifdef ALLOW_EFLUXY0_CONTROL
309  c--   y-component EP-flux field.  c--   y-component EP-flux field.
310        il=ilnblnk( xx_efluxy_file )        il=ilnblnk( xx_efluxy_file )
311        write(fnamegeneric(1:80),'(2a,i10.10)')        write(fnamegeneric(1:80),'(2a,i10.10)')
312       &     xx_efluxy_file(1:il),'.',optimcycle       &     xx_efluxy_file(1:il),'.',optimcycle
313        call active_read_xyz_loc( fnamegeneric, tmpfld3d, 1,        call active_read_xyz( fnamegeneric, tmpfld3d, 1,
314       &                      doglobalread, ladinit, optimcycle,       &                      doglobalread, ladinit, optimcycle,
315       &                      mythid, xx_efluxy_dummy )       &                      mythid, xx_efluxy_dummy )
316    
# Line 303  c--   p-component EP-flux field. Line 337  c--   p-component EP-flux field.
337        il=ilnblnk( xx_efluxp_file )        il=ilnblnk( xx_efluxp_file )
338        write(fnamegeneric(1:80),'(2a,i10.10)')        write(fnamegeneric(1:80),'(2a,i10.10)')
339       &     xx_efluxp_file(1:il),'.',optimcycle       &     xx_efluxp_file(1:il),'.',optimcycle
340        call active_read_xyz_loc( fnamegeneric, tmpfld3d, 1,        call active_read_xyz( fnamegeneric, tmpfld3d, 1,
341       &                      doglobalread, ladinit, optimcycle,       &                      doglobalread, ladinit, optimcycle,
342       &                      mythid, xx_efluxp_dummy )       &                      mythid, xx_efluxp_dummy )
343    
# Line 332  c--   bottom drag Line 366  c--   bottom drag
366        il=ilnblnk( xx_bottomdrag_file )        il=ilnblnk( xx_bottomdrag_file )
367        write(fnamegeneric(1:80),'(2a,i10.10)')        write(fnamegeneric(1:80),'(2a,i10.10)')
368       &     xx_bottomdrag_file(1:il),'.',optimcycle       &     xx_bottomdrag_file(1:il),'.',optimcycle
369        call active_read_xy_loc ( fnamegeneric, tmpfld2d, 1,        call active_read_xy ( fnamegeneric, tmpfld2d, 1,
370       &                      doglobalread, ladinit, optimcycle,       &                      doglobalread, ladinit, optimcycle,
371       &                      mythid, xx_bottomdrag_dummy )       &                      mythid, xx_bottomdrag_dummy )
372        do bj = jtlo,jthi        do bj = jtlo,jthi
373          do bi = itlo,ithi          do bi = itlo,ithi
374            do j = jmin,jmax            do j = jmin,jmax
375              do i = imin,imax              do i = imin,imax
376                bottomdragfld(i,j,bi,bj) = bottomdragfld(i,j,bi,bj)                bottomdragfld(i,j,bi,bj) = bottomdragfld(i,j,bi,bj)
377       &                                   + tmpfld2d(i,j,bi,bj)       &                                   + tmpfld2d(i,j,bi,bj)
378              enddo              enddo
379            enddo            enddo
# Line 347  c--   bottom drag Line 381  c--   bottom drag
381        enddo        enddo
382  #endif  #endif
383    
384  #ifdef ALLOW_EDTAUX_CONTROL  #ifdef ALLOW_EDDYPSI_CONTROL
385  c-- zonal eddy stress : edtaux  c-- zonal eddy streamfunction : eddyPsiX
386        il=ilnblnk( xx_edtaux_file )        il=ilnblnk( xx_edtaux_file )
387        write(fnamegeneric(1:80),'(2a,i10.10)')        write(fnamegeneric(1:80),'(2a,i10.10)')
388       &     xx_edtaux_file(1:il),'.',optimcycle       &     xx_edtaux_file(1:il),'.',optimcycle
# Line 360  c-- zonal eddy stress : edtaux Line 394  c-- zonal eddy stress : edtaux
394            do k = 1,nr            do k = 1,nr
395              do j = jmin,jmax              do j = jmin,jmax
396                do i = imin,imax                do i = imin,imax
397                  Eddytaux(i,j,k,bi,bj) = Eddytaux(i,j,k,bi,bj) +                  eddyPsiX(i,j,k,bi,bj) = eddyPsiX(i,j,k,bi,bj) +
398       &                                tmpfld3d(i,j,k,bi,bj)       &            tmpfld3d(i,j,k,bi,bj)
399                enddo                enddo
400              enddo              enddo
401            enddo            enddo
402         enddo         enddo
403        enddo        enddo
404  #endif  c-- meridional eddy streamfunction : eddyPsiY
   
 #ifdef ALLOW_EDTAUY_CONTROL  
 c-- meridional eddy stress : edtauy  
405        il=ilnblnk( xx_edtauy_file )        il=ilnblnk( xx_edtauy_file )
406        write(fnamegeneric(1:80),'(2a,i10.10)')        write(fnamegeneric(1:80),'(2a,i10.10)')
407       &     xx_edtauy_file(1:il),'.',optimcycle       &     xx_edtauy_file(1:il),'.',optimcycle
# Line 382  c-- meridional eddy stress : edtauy Line 413  c-- meridional eddy stress : edtauy
413            do k = 1,nr            do k = 1,nr
414              do j = jmin,jmax              do j = jmin,jmax
415                do i = imin,imax                do i = imin,imax
416                  Eddytauy(i,j,k,bi,bj) = Eddytauy(i,j,k,bi,bj) +                  eddyPsiY(i,j,k,bi,bj) = eddyPsiY(i,j,k,bi,bj) +
417       &                                tmpfld3d(i,j,k,bi,bj)       &            tmpfld3d(i,j,k,bi,bj)
418                enddo                enddo
419              enddo              enddo
420            enddo            enddo
# Line 404  c-- initial zonal velocity Line 435  c-- initial zonal velocity
435            do k = 1,nr            do k = 1,nr
436              do j = jmin,jmax              do j = jmin,jmax
437                do i = imin,imax                do i = imin,imax
438    #ifdef ALLOW_AUTODIFF_OPENAD
439                  uVel(i,j,k,bi,bj) = uVel(i,j,k,bi,bj) +                  uVel(i,j,k,bi,bj) = uVel(i,j,k,bi,bj) +
440       &                              tmpfld3d(i,j,k,bi,bj)       &                                  fac*xx_uvel(i,j,k,bi,bj)
441    #else
442                    uVel(i,j,k,bi,bj) = uVel(i,j,k,bi,bj) +
443         &                                  fac*tmpfld3d(i,j,k,bi,bj)
444    #endif
445                enddo                enddo
446              enddo              enddo
447            enddo            enddo
# Line 426  c-- initial merid. velocity Line 462  c-- initial merid. velocity
462            do k = 1,nr            do k = 1,nr
463              do j = jmin,jmax              do j = jmin,jmax
464                do i = imin,imax                do i = imin,imax
465    #ifdef ALLOW_AUTODIFF_OPENAD
466                  vVel(i,j,k,bi,bj) = vVel(i,j,k,bi,bj) +                  vVel(i,j,k,bi,bj) = vVel(i,j,k,bi,bj) +
467       &                              tmpfld3d(i,j,k,bi,bj)       &                                  fac*xx_vvel(i,j,k,bi,bj)
468    #else
469                    vVel(i,j,k,bi,bj) = vVel(i,j,k,bi,bj) +
470         &                                  fac*tmpfld3d(i,j,k,bi,bj)
471    #endif
472                enddo                enddo
473              enddo              enddo
474            enddo            enddo
# Line 440  c--   initial Eta. Line 481  c--   initial Eta.
481        il=ilnblnk( xx_etan_file )        il=ilnblnk( xx_etan_file )
482        write(fnamegeneric(1:80),'(2a,i10.10)')        write(fnamegeneric(1:80),'(2a,i10.10)')
483       &     xx_etan_file(1:il),'.',optimcycle       &     xx_etan_file(1:il),'.',optimcycle
484        call active_read_xy_loc ( fnamegeneric, tmpfld2d, 1,        call active_read_xy ( fnamegeneric, tmpfld2d, 1,
485       &                      doglobalread, ladinit, optimcycle,       &                      doglobalread, ladinit, optimcycle,
486       &                      mythid, xx_etan_dummy )       &                      mythid, xx_etan_dummy )
487        do bj = jtlo,jthi        do bj = jtlo,jthi
488          do bi = itlo,ithi          do bi = itlo,ithi
489            do j = jmin,jmax            do j = jmin,jmax
490              do i = imin,imax              do i = imin,imax
491                etaN(i,j,bi,bj) = etaN(i,j,bi,bj) + tmpfld2d(i,j,bi,bj)  #ifdef ALLOW_AUTODIFF_OPENAD
492                  etaN(i,j,bi,bj) = etaN(i,j,bi,bj) +
493         &                              fac*xx_etan(i,j,bi,bj)
494    #else
495                  etaN(i,j,bi,bj) = etaN(i,j,bi,bj) +
496         &                              fac*tmpfld2d(i,j,bi,bj)
497    #endif
498              enddo              enddo
499            enddo            enddo
500          enddo          enddo
# Line 459  c--   SST relaxation coefficient. Line 506  c--   SST relaxation coefficient.
506        il=ilnblnk( xx_relaxsst_file )        il=ilnblnk( xx_relaxsst_file )
507        write(fnamegeneric(1:80),'(2a,i10.10)')        write(fnamegeneric(1:80),'(2a,i10.10)')
508       &     xx_relaxsst_file(1:il),'.',optimcycle       &     xx_relaxsst_file(1:il),'.',optimcycle
509        call active_read_xy_loc ( fnamegeneric, tmpfld2d, 1,        call active_read_xy ( fnamegeneric, tmpfld2d, 1,
510       &                      doglobalread, ladinit, optimcycle,       &                      doglobalread, ladinit, optimcycle,
511       &                      mythid, xx_relaxsst_dummy )       &                      mythid, xx_relaxsst_dummy )
512        do bj = jtlo,jthi        do bj = jtlo,jthi
513          do bi = itlo,ithi          do bi = itlo,ithi
514            do j = jmin,jmax            do j = jmin,jmax
515              do i = imin,imax              do i = imin,imax
516                lambdaThetaClimRelax(i,j,bi,bj) =                lambdaThetaClimRelax(i,j,bi,bj) =
517       &              lambdaThetaClimRelax(i,j,bi,bj)       &              lambdaThetaClimRelax(i,j,bi,bj)
518       &              + tmpfld2d(i,j,bi,bj)       &              + tmpfld2d(i,j,bi,bj)
519              enddo              enddo
520            enddo            enddo
# Line 480  c--   SSS relaxation coefficient. Line 527  c--   SSS relaxation coefficient.
527        il=ilnblnk( xx_relaxsss_file )        il=ilnblnk( xx_relaxsss_file )
528        write(fnamegeneric(1:80),'(2a,i10.10)')        write(fnamegeneric(1:80),'(2a,i10.10)')
529       &     xx_relaxsss_file(1:il),'.',optimcycle       &     xx_relaxsss_file(1:il),'.',optimcycle
530        call active_read_xy_loc ( fnamegeneric, tmpfld2d, 1,        call active_read_xy ( fnamegeneric, tmpfld2d, 1,
531       &                      doglobalread, ladinit, optimcycle,       &                      doglobalread, ladinit, optimcycle,
532       &                      mythid, xx_relaxsss_dummy )       &                      mythid, xx_relaxsss_dummy )
533        do bj = jtlo,jthi        do bj = jtlo,jthi
534          do bi = itlo,ithi          do bi = itlo,ithi
535            do j = jmin,jmax            do j = jmin,jmax
536              do i = imin,imax              do i = imin,imax
537                lambdaSaltClimRelax(i,j,bi,bj) =                lambdaSaltClimRelax(i,j,bi,bj) =
538       &              lambdaSaltClimRelax(i,j,bi,bj)       &              lambdaSaltClimRelax(i,j,bi,bj)
539       &              + tmpfld2d(i,j,bi,bj)       &              + tmpfld2d(i,j,bi,bj)
540              enddo              enddo
541            enddo            enddo
# Line 496  c--   SSS relaxation coefficient. Line 543  c--   SSS relaxation coefficient.
543        enddo        enddo
544  #endif  #endif
545    
546    #ifdef ALLOW_SEAICE
547          call seaice_ctrl_map_ini( mythid )
548    #endif
549    
550  c--   Update the tile edges.  c--   Update the tile edges.
551    
552  #if (defined (ALLOW_THETA0_CONTROL) || defined (ALLOW_SST0_CONTROL))  #if (defined (ALLOW_THETA0_CONTROL) || defined (ALLOW_SST0_CONTROL))
# Line 509  c--   Update the tile edges. Line 560  c--   Update the tile edges.
560        _EXCH_XYZ_R8(pTracer(1-Olx,1-Oly,1,1,1,1),myThid)        _EXCH_XYZ_R8(pTracer(1-Olx,1-Oly,1,1,1,1),myThid)
561  #endif  #endif
562  #endif  #endif
563  #ifdef ALLOW_DIFFKR_CONTROL  
564    #ifdef ALLOW_AUTODIFF
565    # ifdef ALLOW_DIFFKR_CONTROL
566        _EXCH_XYZ_R8( diffkr, mythid)        _EXCH_XYZ_R8( diffkr, mythid)
567  #endif  # endif
568  #ifdef ALLOW_KAPGM_CONTROL  # ifdef ALLOW_KAPGM_CONTROL
569        _EXCH_XYZ_R8( kapgm, mythid)        _EXCH_XYZ_R8( kapgm, mythid)
570    # endif
571    # ifdef ALLOW_KAPREDI_CONTROL
572          _EXCH_XYZ_R8( kapredi, mythid)
573    # endif
574  #endif  #endif
575    
576  #ifdef ALLOW_EFLUXY0_CONTROL  #ifdef ALLOW_EFLUXY0_CONTROL
577        _EXCH_XYZ_R8( EfluxY, mythid )        _EXCH_XYZ_R8( EfluxY, mythid )
578  #endif  #endif
# Line 525  c--   Update the tile edges. Line 583  c--   Update the tile edges.
583        _EXCH_XY_R8( bottomdragfld, mythid )        _EXCH_XY_R8( bottomdragfld, mythid )
584  #endif  #endif
585    
586  #if (defined (ALLOW_EDTAUX_CONTROL) && defined (ALLOW_EDTAUY_CONTROL))  #ifdef ALLOW_EDDYPSI_CONTROL
587         CALL EXCH_UV_XYZ_RS(Eddytaux,Eddytauy,.TRUE.,myThid)         CALL EXCH_UV_XYZ_RS(eddyPsiX,eddyPsiY,.TRUE.,myThid)
 #elif (defined (ALLOW_EDTAUX_CONTROL) || defined (ALLOW_EDTAUY_CONTROL))  
        STOP 'ctrl_map_forcing: need BOTH ALLOW_EDTAU[X,Y]_CONTROL'  
588  #endif  #endif
589    
590  #ifdef ALLOW_UVEL0_CONTROL  #ifdef ALLOW_UVEL0_CONTROL

Legend:
Removed from v.1.18  
changed lines
  Added in v.1.30

  ViewVC Help
Powered by ViewVC 1.1.22