Back to home page

MITgcm

 
 

    


File indexing completed on 2025-12-15 06:14:27 UTC

view on githubraw file Latest commit ad59256d on 2025-12-15 00:05:36 UTC
ad59256d7d aver*0001 #include "OBSFIT_OPTIONS.h"
                0002 
                0003 CBOP
                0004 C     !ROUTINE: OBSFIT_INI_IO
                0005 
                0006 C     !INTERFACE:
                0007       SUBROUTINE OBSFIT_INI_IO( myThid )
                0008 
                0009 C     !DESCRIPTION:
                0010 C     ==================================================================
                0011 C     | Create directory for obsfit output if needed
                0012 C     ==================================================================
                0013 
                0014 C     !USES:
                0015       IMPLICIT NONE
                0016 C     == Global variables ===
                0017 #include "SIZE.h"
                0018 #include "EEPARAMS.h"
                0019 #include "EESUPPORT.h"
                0020 #include "PARAMS.h"
                0021 #include "OBSFIT_SIZE.h"
                0022 #include "OBSFIT.h"
                0023 
                0024 C     !INPUT PARAMETERS:
                0025 C     myThid :: my thread ID number
                0026       INTEGER myThid
                0027 
                0028 C     !FUNCTIONS
                0029       INTEGER  ILNBLNK
                0030       EXTERNAL ILNBLNK
                0031 CEOP
                0032 
                0033 #ifdef ALLOW_OBSFIT
                0034 C !LOCAL VARIABLES:
                0035 #ifndef HAVE_SYSTEM
                0036       CHARACTER*(MAX_LEN_MBUF) msgBuf
                0037 #endif
                0038       CHARACTER*(MAX_LEN_FNAM) namBuf
                0039       INTEGER iL, pIL
                0040 
                0041       _BEGIN_MASTER( myThid )
                0042 
                0043       IF ( obsfitDir .NE. ' ' ) THEN
                0044         iL = ILNBLNK( obsfitDir )
                0045 C Append "/", if necessary
                0046         IF ( iL.LT.MAX_LEN_FNAM .AND. obsfitDir(iL:iL).NE.'/' ) THEN
                0047           namBuf(1:iL) = obsfitDir(1:iL)
                0048           WRITE(obsfitDir(1:iL+1),'(2A)') namBuf(1:iL),'/'
                0049         ENDIF
                0050 #ifdef HAVE_SYSTEM
                0051 C Create directory
                0052         iL = ILNBLNK( obsfitDir ) -1
                0053         WRITE( namBuf,'(2A)' ) ' mkdir -p ', obsfitDir(1:iL)
                0054         pIL = 1 + ILNBLNK( namBuf )
                0055         WRITE( standardMessageUnit,'(3A)' )
                0056      &  '==> SYSTEM CALL (from OBSFIT_INI_IO): >',namBuf(1:pIL),'<'
                0057         CALL SYSTEM( namBuf(1:pIL) )
                0058 #else
                0059         WRITE( msgBuf,'(2A)' ) '** WARNING ** OBSFIT_INI_IO: cannot ',
                0060      &   'call mkdir -> please create obsfitDir manually'
                0061         CALL PRINT_MESSAGE( msgBuf,
                0062      &       errorMessageUnit, SQUEEZE_RIGHT, myThid )
                0063 #endif
                0064       ENDIF
                0065 
                0066       _END_MASTER( myThid )
                0067 
                0068 #endif /* ALLOW_OBSFIT */
                0069 
                0070       RETURN
                0071       END
                0072