16 |
c SUBROUTINE ctrl_init |
c SUBROUTINE ctrl_init |
17 |
c ================================================================== |
c ================================================================== |
18 |
c |
c |
19 |
c o Set parts of the vector of control variables and initialize the |
c o The vector of control variables is defined here. |
|
c rest to zero. |
|
|
c |
|
|
c The vector of control variables is initialized here. The |
|
|
c temperature and salinity contributions are read from file. |
|
|
c Subsequently, the latter are dimensionalized and the tile |
|
|
c edges are updated. |
|
|
c |
|
|
c started: Christian Eckert eckert@mit.edu 30-Jun-1999 |
|
|
c |
|
|
c changed: Christian Eckert eckert@mit.edu 23-Feb-2000 |
|
|
c - Restructured the code in order to create a package |
|
|
c for the MITgcmUV. |
|
|
c |
|
|
c Patrick Heimbach heimbach@mit.edu 30-May-2000 |
|
|
c - diffsec was falsely declared. |
|
|
c |
|
|
c Patrick Heimbach heimbach@mit.edu 06-Jun-2000 |
|
|
c - Transferred some filename declarations |
|
|
c from ctrl_pack/ctrl_unpack to here |
|
|
c - Transferred mask-per-tile to here |
|
|
c - computation of control vector length here |
|
|
c |
|
|
c Patrick Heimbach heimbach@mit.edu 16-Jun-2000 |
|
|
c - Added call to ctrl_pack |
|
|
c - Alternatively: transfer writing of scale files to |
|
|
c ctrl_unpack |
|
|
c |
|
|
c Dimitris Menemenlis menemenlis@mit.edu 7-Mar-2003 |
|
|
c - To be consistent with usage in ctrl_getrec.F, |
|
|
c startrec and endrec need to be referenced to |
|
|
c model time = 0, not to startTime. |
|
|
c Also "- modelstep" -> "+ modelstep/2": |
|
|
c old: startrec = int((modelstart - diffsecs)/ |
|
|
c old: & xx_???period) + 1 |
|
|
c old: endrec = int((modelend - diffsecs - modelstep)/ |
|
|
c old: & xx_???period) + 2 |
|
|
c new: startrec = int((modelstart + startTime - diffsecs)/ |
|
|
c new: & xx_???period) + 1 |
|
|
c new: endrec = int((modelend + startTime - diffsecs + modelstep/2)/ |
|
|
c new: & xx_???period) + 2 |
|
|
c |
|
|
c heimbach@mit.edu totally restructured 28-Oct-2003 |
|
20 |
c |
c |
21 |
c ================================================================== |
c ================================================================== |
22 |
c SUBROUTINE ctrl_init |
c SUBROUTINE ctrl_init |
120 |
cph 43 seaice SIHSNOW |
cph 43 seaice SIHSNOW |
121 |
cph 44 gmredi kapredi |
cph 44 gmredi kapredi |
122 |
cph 45 shelfice shifwflx |
cph 45 shelfice shifwflx |
123 |
|
cph 47-52 mean atmos. state |
124 |
cph) |
cph) |
125 |
|
|
126 |
c---------------------------------------------------------------------- |
c---------------------------------------------------------------------- |
711 |
#endif /* ALLOW_SHIFWFLX_CONTROL */ |
#endif /* ALLOW_SHIFWFLX_CONTROL */ |
712 |
|
|
713 |
c---------------------------------------------------------------------- |
c---------------------------------------------------------------------- |
714 |
|
c-- |
715 |
|
#ifdef ALLOW_ATM_MEAN_CONTROL |
716 |
|
# ifdef ALLOW_ATEMP_CONTROL |
717 |
|
call ctrl_init_ctrlvar ( |
718 |
|
& xx_atemp_mean_file, 47, 147, 1, 1, 1, |
719 |
|
& snx, sny, 1, 'c', 'xy', mythid ) |
720 |
|
# endif |
721 |
|
# ifdef ALLOW_AQH_CONTROL |
722 |
|
call ctrl_init_ctrlvar ( |
723 |
|
& xx_aqh_mean_file, 48, 148, 1, 1, 1, |
724 |
|
& snx, sny, 1, 'c', 'xy', mythid ) |
725 |
|
# endif |
726 |
|
# ifdef ALLOW_UWIND_CONTROL |
727 |
|
call ctrl_init_ctrlvar ( |
728 |
|
& xx_uwind_mean_file, 49, 149, 1, 1, 1, |
729 |
|
& snx, sny, 1, 'c', 'xy', mythid ) |
730 |
|
# endif |
731 |
|
# ifdef ALLOW_VWIND_CONTROL |
732 |
|
call ctrl_init_ctrlvar ( |
733 |
|
& xx_vwind_mean_file, 50, 150, 1, 1, 1, |
734 |
|
& snx, sny, 1, 'c', 'xy', mythid ) |
735 |
|
# endif |
736 |
|
# ifdef ALLOW_PRECIP_CONTROL |
737 |
|
call ctrl_init_ctrlvar ( |
738 |
|
& xx_precip_mean_file,51, 151, 1, 1, 1, |
739 |
|
& snx, sny, 1, 'c', 'xy', mythid ) |
740 |
|
# endif |
741 |
|
# ifdef ALLOW_SWDOWN_CONTROL |
742 |
|
call ctrl_init_ctrlvar ( |
743 |
|
& xx_swdown_mean_file,52, 152, 1, 1, 1, |
744 |
|
& snx, sny, 1, 'c', 'xy', mythid ) |
745 |
|
# endif |
746 |
|
#endif /* ALLOW_ATM_MEAN_CONTROL */ |
747 |
|
|
748 |
|
c---------------------------------------------------------------------- |
749 |
c---------------------------------------------------------------------- |
c---------------------------------------------------------------------- |
750 |
|
|
751 |
call ctrl_init_wet( mythid ) |
call ctrl_init_wet( mythid ) |