/[MITgcm]/MITgcm/pkg/diagnostics/diagnostics_ini_io.F
ViewVC logotype

Contents of /MITgcm/pkg/diagnostics/diagnostics_ini_io.F

Parent Directory Parent Directory | Revision Log Revision Log | View Revision Graph Revision Graph


Revision 1.1 - (show annotations) (download)
Wed Jan 11 00:22:35 2017 UTC (7 years, 3 months ago) by gforget
Branch: MAIN
- new routine to create diagMdsDir where diagnostics will be written when using mds

1 C $Header: /u/gcmpack/MITgcm/pkg/diagnostics/diagstats_ini_io.F,v 1.4 2008/02/05 15:31:19 jmc Exp $
2 C $Name: $
3
4 #include "DIAG_OPTIONS.h"
5
6 CBOP
7 C !ROUTINE: DIAGNOSTICS_INI_IO
8 C !INTERFACE:
9 SUBROUTINE DIAGNOSTICS_INI_IO( myThid )
10
11 C !DESCRIPTION: \bv
12 C *==================================================================
13 C | S/R DIAGNOSTICS_INI_IO
14 C | o create directory for mds output if needed
15 C *==================================================================
16 C \ev
17
18 C !USES:
19 IMPLICIT NONE
20
21 C == Global variables ===
22 #include "SIZE.h"
23 #include "EEPARAMS.h"
24 #include "PARAMS.h"
25 #include "DIAGNOSTICS_SIZE.h"
26 #include "DIAGNOSTICS.h"
27
28 C !INPUT/OUTPUT PARAMETERS:
29 C == Routine arguments ==
30 C myThid - Thread number for this instance of the routine.
31 INTEGER myThid
32 CEOP
33
34 C !LOCAL VARIABLES:
35 C == Local variables ==
36 INTEGER iL, pIL
37 CHARACTER*(MAX_LEN_MBUF) msgBuf
38 CHARACTER*(MAX_LEN_FNAM) namBuf
39 INTEGER ILNBLNK
40 EXTERNAL ILNBLNK
41
42 _BEGIN_MASTER( myThid )
43
44 IF ( diag_mdsio.AND.(diagMdsDir.NE.' ').AND.
45 & diagMdsDirCreate.AND.(mdsioLocalDir.EQ.' ') ) THEN
46 #ifdef HAVE_SYSTEM
47 iL = ILNBLNK( diagMdsDir )
48 C append "/", if necessary
49 IF ( iL.LT.MAX_LEN_FNAM .AND. diagMdsDir(iL:iL).NE.'/' ) THEN
50 namBuf(1:iL) = diagMdsDir(1:iL)
51 WRITE(diagMdsDir(1:iL+1),'(2A)') namBuf(1:iL),'/'
52 ENDIF
53 C create directory
54 iL = ILNBLNK( diagMdsDir ) -1
55 WRITE(namBuf,'(2A)') ' mkdir -p ', diagMdsDir(1:iL)
56 pIL = 1 + ILNBLNK( namBuf )
57 WRITE(msgBuf,'(3A)')
58 & '==> SYSTEM CALL (from DIAGNOSTICS_INI_IO): >',namBuf(1:pIL),'<'
59 CALL PRINT_MESSAGE( msgBuf, standardMessageUnit,
60 & SQUEEZE_RIGHT, myThid )
61 CALL SYSTEM( namBuf(1:pIL) )
62 #else
63 WRITE(msgBuf,'(2A)') 'S/R DIAGNOSTICS_INI_IO: cannot call ',
64 & 'mkdir -> please create diagMdsDir manually'
65 CALL PRINT_ERROR( msgBuf, myThid )
66 WRITE(msgBuf,'(A,A)') 'S/R DIAGNOSTICS_INI_IO: and ',
67 & 'set diagMdsDirCreate=.FALSE. in data.diagnostics'
68 CALL PRINT_ERROR( msgBuf, myThid )
69 CALL ALL_PROC_DIE( 0 )
70 STOP 'ABNORMAL END: S/R DIAGNOSTICS_INI_IO'
71 #endif
72 ENDIF
73
74 _END_MASTER( myThid )
75
76 RETURN
77 END

  ViewVC Help
Powered by ViewVC 1.1.22