| 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" |
| 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 |
|
#ifndef DISABLE_CTRL_THETA_LIMIT |
| 122 |
if(theta(i,j,k,bi,bj).lt.-2.0) |
if(theta(i,j,k,bi,bj).lt.-2.0) |
| 123 |
& theta(i,j,k,bi,bj)= -2.0 |
& theta(i,j,k,bi,bj)= -2.0 |
| 124 |
|
#endif |
| 125 |
enddo |
enddo |
| 126 |
enddo |
enddo |
| 127 |
enddo |
enddo |
| 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 ) |
| 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 ) |
| 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. |
| 563 |
_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) |
| 564 |
#endif |
#endif |
| 565 |
#endif |
#endif |
| 566 |
#ifdef ALLOW_DIFFKR_CONTROL |
|
| 567 |
|
#ifdef ALLOW_AUTODIFF |
| 568 |
|
# ifdef ALLOW_DIFFKR_CONTROL |
| 569 |
_EXCH_XYZ_R8( diffkr, mythid) |
_EXCH_XYZ_R8( diffkr, mythid) |
| 570 |
#endif |
# endif |
| 571 |
#ifdef ALLOW_KAPGM_CONTROL |
# ifdef ALLOW_KAPGM_CONTROL |
| 572 |
_EXCH_XYZ_R8( kapgm, mythid) |
_EXCH_XYZ_R8( kapgm, mythid) |
| 573 |
|
# endif |
| 574 |
|
# ifdef ALLOW_KAPREDI_CONTROL |
| 575 |
|
_EXCH_XYZ_R8( kapredi, mythid) |
| 576 |
|
# endif |
| 577 |
#endif |
#endif |
| 578 |
|
|
| 579 |
#ifdef ALLOW_EFLUXY0_CONTROL |
#ifdef ALLOW_EFLUXY0_CONTROL |
| 580 |
_EXCH_XYZ_R8( EfluxY, mythid ) |
_EXCH_XYZ_R8( EfluxY, mythid ) |
| 581 |
#endif |
#endif |