Back to home page

darwin3

 
 

    


File indexing completed on 2024-12-17 18:34:02 UTC

view on githubraw file Latest commit d9e107d1 on 2019-08-12 17:47:14 UTC
d9e107d180 Oliv*0001 #include "EXF_OPTIONS.h"
8fbfd1f382 Oliv*0002 #include "DARWIN_OPTIONS.h"
                0003 
                0004 CBOP
                0005 C !ROUTINE: DARWIN_READPARMS
                0006 
                0007 C !INTERFACE: ==========================================================
                0008       SUBROUTINE DARWIN_READPARMS( myThid )
                0009 
                0010 C !DESCRIPTION:
                0011 C     Initialize DARWIN parameters, read in data.darwin
                0012 
                0013 C !USES: ===============================================================
                0014       IMPLICIT NONE
                0015 #include "EEPARAMS.h"
                0016 #include "SIZE.h"
                0017 #include "PARAMS.h"
d9e107d180 Oliv*0018 #include "EXF_INTERP_SIZE.h"
bd66743083 Oliv*0019 #ifdef ALLOW_RADTRANS
                0020 #include "RADTRANS_SIZE.h"
                0021 #include "RADTRANS_PARAMS.h"
                0022 #endif
8fbfd1f382 Oliv*0023 #include "DARWIN_SIZE.h"
bd66743083 Oliv*0024 #include "DARWIN_PARAMS.h"
                0025 #include "DARWIN_EXF_PARAMS.h"
8fbfd1f382 Oliv*0026 
                0027 C !INPUT PARAMETERS: ===================================================
                0028 C  myThid               :: thread number
                0029       INTEGER myThid
                0030 
                0031 C !OUTPUT PARAMETERS: ==================================================
                0032 C  none
                0033 CEOP
                0034 
                0035 #ifdef ALLOW_DARWIN
                0036 
                0037 C !LOCAL VARIABLES: ====================================================
                0038 C  iUnit   :: unit number for reading
                0039 C  oUnit   :: unit number for writing
                0040 C  msgBuf  :: message buffer
                0041       integer iUnit, oUnit
                0042       CHARACTER*(MAX_LEN_MBUF) msgBuf
                0043 
                0044       _BEGIN_MASTER(myThid)
                0045 
                0046 C Open and read the data.darwin file
                0047 
                0048       WRITE(msgBuf,'(A)') ' DARWIN_READPARMS: opening data.darwin'
                0049       CALL PRINT_MESSAGE(msgBuf, standardMessageUnit,
                0050      &                   SQUEEZE_RIGHT , 1)
                0051 
                0052       CALL OPEN_COPY_DATA_FILE(
                0053      I                   'data.darwin', 'DARWIN_READPARMS',
                0054      O                   iUnit,
                0055      I                   myThid )
                0056 
                0057       IF ( myProcId.EQ.0 .AND. myThid.EQ.1 ) THEN
                0058         CALL MDSFINDUNIT( oUnit, mythid )
                0059         open(oUnit,file='darwin_params.txt',status='unknown')
                0060       ELSE
                0061         oUnit = -1
                0062       ENDIF
                0063 
                0064       CALL DARWIN_EXF_READPARMS(iUnit, oUnit, myThid)
                0065       CALL DARWIN_READ_PARAMS(iUnit, oUnit, myThid)
                0066       CALL DARWIN_READ_TRAITPARAMS(iUnit, oUnit, myThid)
                0067 
                0068       IF ( oUnit .GE. 0 ) THEN
                0069         CLOSE(oUnit)
                0070       ENDIF
                0071 
                0072 #ifdef SINGLE_DISK_IO
                0073       CLOSE(iUnit)
                0074 #else
                0075       CLOSE(iUnit,STATUS='DELETE')
                0076 #endif /* SINGLE_DISK_IO */
                0077 
bd66743083 Oliv*0078 C ======================================================================
                0079 C     compute dependent parameters
                0080       darwin_loadFieldsEarly = darwin_chlInitBalanced .AND.
                0081      &                         nIter0 .EQ. darwin_chlIter0
                0082 #ifdef ALLOW_RADTRANS
                0083       RT_loadFieldsEarly=RT_loadFieldsEarly .OR. darwin_loadFieldsEarly
                0084 #endif
                0085 
8fbfd1f382 Oliv*0086       WRITE(msgBuf,'(A)') ' ==================================='
                0087       CALL PRINT_MESSAGE( msgBuf, standardMessageUnit,
                0088      &                    SQUEEZE_RIGHT, myThid )
                0089 
                0090       _END_MASTER(myThid)
                0091 
                0092 C Everyone else must wait for the parameters to be loaded
                0093       _BARRIER
                0094 
                0095 #endif /* ALLOW_DARWIN */
                0096 
                0097       RETURN
                0098       END
                0099