Back to home page

MITgcm

 
 

    


File indexing completed on 2018-03-02 18:40:49 UTC

view on githubraw file Latest commit add29e06 on 2018-01-31 20:35:05 UTC
6451e229ef Jean*0001 #include "FLT_OPTIONS.h"
                0002 
                0003       SUBROUTINE FLT_READPARMS( myThid  )
                0004 
                0005 C     ==================================================================
                0006 C     SUBROUTINE FLT_READPARMS
                0007 C     ==================================================================
                0008 C     o read float-pkg parameters from file "data.flt"
a11169c200 Jean*0009 C     ==================================================================
                0010 
                0011 C     !USES:
                0012       IMPLICIT NONE
6451e229ef Jean*0013 
                0014 #include "SIZE.h"
                0015 #include "EEPARAMS.h"
                0016 #include "PARAMS.h"
730d8469b1 Oliv*0017 #include "FLT_SIZE.h"
6451e229ef Jean*0018 #include "FLT.h"
                0019 
                0020 C     == routine arguments ==
                0021 C     myThid - thread number for this instance of the routine.
                0022       INTEGER myThid
                0023 
                0024 C     == local variables ==
                0025       CHARACTER*(MAX_LEN_MBUF) msgBuf
                0026       INTEGER iUnit
                0027 
                0028       NAMELIST /FLT_NML/ flt_int_traj, flt_int_prof,
3992cf11bb Jean*0029      &                   flt_selectTrajOutp, flt_selectProfOutp,
77b2b58e49 Davi*0030      &                   flt_noise, flt_deltaT, FLT_Iter0,
40b8247bc0 Jean*0031      &                   flt_file, mapIniPos2Index
6451e229ef Jean*0032 
                0033 C     == end of interface ==
                0034 
ae4c29e0db Jean*0035       IF ( .NOT.useFLT ) THEN
                0036 C-    pkg FLT is not used
                0037         _BEGIN_MASTER(myThid)
                0038 C-    Track pkg activation status:
                0039 C     print a (weak) warning if data.flt is found
                0040          CALL PACKAGES_UNUSED_MSG( 'useFLT', ' ', ' ' )
                0041         _END_MASTER(myThid)
                0042         RETURN
                0043       ENDIF
                0044 
6451e229ef Jean*0045       _BEGIN_MASTER(myThid)
                0046 
                0047 C     Set default values.
c84b484b2a Davi*0048       flt_deltaT   = deltaTClock
77b2b58e49 Davi*0049       FLT_Iter0 = 0
6451e229ef Jean*0050       flt_int_traj =  3600.
                0051       flt_int_prof = 43200.
                0052       flt_noise    = 0.0
                0053       flt_file     = 'float_pos'
40b8247bc0 Jean*0054       mapIniPos2Index = .TRUE.
3992cf11bb Jean*0055       flt_selectTrajOutp = 2
                0056       flt_selectProfOutp = 2
6451e229ef Jean*0057 
                0058       WRITE(msgBuf,'(A)') ' FLT_READPARMS: opening data.flt'
                0059       CALL PRINT_MESSAGE( msgBuf, standardMessageUnit,
                0060      &                    SQUEEZE_RIGHT, myThid )
                0061       CALL OPEN_COPY_DATA_FILE(
                0062      I                          'data.flt', 'FLT_READPARMS',
                0063      O                          iUnit,
                0064      I                          myThid )
                0065 
                0066 C     Read parameters from open data file
                0067       READ(UNIT=iUnit,NML=FLT_NML)
                0068       WRITE(msgBuf,'(A)') ' FLT_READPARMS: finished reading data.flt'
                0069       CALL PRINT_MESSAGE( msgBuf, standardMessageUnit,
                0070      &                    SQUEEZE_RIGHT, myThid )
                0071 C     Close the open data file
7a77863887 Mart*0072 #ifdef SINGLE_DISK_IO
6451e229ef Jean*0073       CLOSE(iUnit)
7a77863887 Mart*0074 #else
                0075       CLOSE(iUnit,STATUS='DELETE')
                0076 #endif /* SINGLE_DISK_IO */
6451e229ef Jean*0077 
ac1cd9b608 Jean*0078 C     Do some checks
                0079 c     IF ( useFLT .AND. useOBCS ) THEN
                0080 c       WRITE(msgBuf,'(A,A)')
                0081 c    &   'S/R FLT_READPARMS: floats currently not implemented',
                0082 c    &   ' with open boundaries'
                0083 c       CALL PRINT_ERROR( msgBuf , myThid)
                0084 c       STOP 'ABNORMAL END: S/R FLT_READPARMS'
                0085 c     ENDIF
6451e229ef Jean*0086 
                0087       _END_MASTER(myThid)
                0088       _BARRIER
                0089 
                0090       RETURN
                0091       END