Changeset 1581
- Timestamp:
- 2009-08-05T16:53:12+02:00 (15 years ago)
- Location:
- trunk/NEMO
- Files:
-
- 1 deleted
- 33 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/NEMO/C1D_SRC/diawri_c1d.F90
r1546 r1581 134 134 ! WRITE root name in date.file for use by postpro 135 135 CALL dia_nam( clhstnam, nwrite,' ' ) 136 CALL ctl opn( inum, 'date.file', 'UNKNOWN', 'FORMATTED', 'SEQUENTIAL', 1, numout, lwp, 1)136 CALL ctl_opn( inum, 'date.file', 'REPLACE', 'FORMATTED', 'SEQUENTIAL', 1, numout, lwp ) 137 137 WRITE(inum,*) clhstnam 138 138 CLOSE(inum) -
trunk/NEMO/LIM_SRC_2/iceini_2.F90
r1471 r1581 45 45 !! ** purpose : 46 46 !!---------------------------------------------------------------------- 47 CHARACTER(len=80) :: namelist_icename48 !!----------------------------------------------------------------------49 47 ! 50 48 ! Open the namelist file 51 namelist_icename = 'namelist_ice' 52 CALL ctlopn(numnam_ice,namelist_icename,'OLD', 'FORMATTED', 'SEQUENTIAL', & 53 1,numout,.FALSE.,1) 49 CALL ctl_opn( numnam_ice, 'namelist_ice', 'OLD', 'FORMATTED', 'SEQUENTIAL', -1, numout, lwp ) 54 50 CALL ice_run_2 ! read in namelist some run parameters 55 51 -
trunk/NEMO/LIM_SRC_2/limdia_2.F90
r1470 r1581 173 173 !!------------------------------------------------------------------- 174 174 CHARACTER(len=jpchinf) :: titinf 175 CHARACTER(len=50) :: clname176 175 INTEGER :: jv ! dummy loop indice 177 INTEGER :: ntot , ndeb , irecl176 INTEGER :: ntot , ndeb 178 177 INTEGER :: nv ! indice of variable 179 178 REAL(wp) :: zxx0, zxx1 ! temporary scalars … … 239 238 240 239 ! opening "ice_evolu" file 241 clname = 'ice_evolu' 242 irecl = ( jpchinf + 1 ) * nvinfo 243 CALL ctlopn( numevo_ice, clname, 'UNKNOWN', 'FORMATTED', 'SEQUENTIAL', & 244 & irecl, numout, lwp, 1 ) 240 CALL ctl_opn( numevo_ice, 'ice_evolu', 'REPLACE', 'FORMATTED', 'SEQUENTIAL', -1, numout, lwp ) 245 241 246 242 !- ecriture de 2 lignes d''entete : -
trunk/NEMO/LIM_SRC_3/iceini.F90
r1471 r1581 58 58 59 59 ! Open the namelist file 60 CALL ctl opn(numnam_ice,'namelist_ice','OLD', 'FORMATTED', 'SEQUENTIAL', 1,numout,.FALSE.,1)60 CALL ctl_opn( numnam_ice, 'namelist_ice', 'OLD', 'FORMATTED', 'SEQUENTIAL', -1, numout, lwp ) 61 61 62 62 CALL ice_run ! read in namelist some run parameters -
trunk/NEMO/LIM_SRC_3/limdia.F90
r1465 r1581 446 446 INTEGER :: jv , & ! dummy loop indice 447 447 & ntot , & 448 & ndeb , & 449 & irecl 448 & ndeb 450 449 451 450 REAL(wp) :: zxx0, zxx1 ! temporary scalars 452 451 453 452 CHARACTER(len=jpchinf) :: titinf 454 CHARACTER(len=50) :: clname455 453 !!------------------------------------------------------------------- 456 454 … … 576 574 577 575 ! opening "ice_evolu" file 578 clname = 'ice.evolu' 579 irecl = ( jpchinf + 1 ) * nvinfo 580 CALL ctlopn( numevo_ice, clname, 'UNKNOWN', 'FORMATTED', 'SEQUENTIAL', & 581 & irecl, numout, lwp, 1 ) 576 CALL ctl_opn( numevo_ice, 'ice.evolu', 'REPLACE', 'FORMATTED', 'SEQUENTIAL', -1, numout, lwp ) 582 577 583 578 !- ecriture de 2 lignes d''entete : -
trunk/NEMO/OPA_SRC/DIA/diadimg.F90
r1152 r1581 42 42 !! 43 43 !! History : 44 !! 03-12 (J.M. Molines ) : Original. Replace ctl opn, writn2d44 !! 03-12 (J.M. Molines ) : Original. Replace ctl_opn, writn2d 45 45 !!--------------------------------------------------------------------------- 46 46 !! * Arguments … … 104 104 IF ( ln_dimgnnn ) THEN 105 105 WRITE(clname,'(a,a,i3.3)') TRIM(cd_name),'.',narea 106 CALL ctl opn(inum, clname,'UNKNOWN','UNFORMATTED','DIRECT',irecl4,numout,lwp,1)106 CALL ctl_opn( inum, clname, 'REPLACE', 'UNFORMATTED', 'DIRECT', irecl4, numout, lwp ) 107 107 WRITE(inum,REC=1 ) clver, cd_text, irecl4, & 108 108 & jpi,jpj, klev, 1 , 1 , & … … 131 131 !! Standard dimgproc (1 file per variable, all procs. write to this file ) 132 132 !! * Open file 133 CALL ctl opn(inum, cd_name,'UNKNOWN','UNFORMATTED','DIRECT',irecl4,numout,lwp,1)133 CALL ctl_opn( inum, cd_name, 'REPLACE', 'UNFORMATTED', 'DIRECT', irecl4, numout, lwp ) 134 134 135 135 !! * Write header on record #1 -
trunk/NEMO/OPA_SRC/DIA/diafwb.F90
r1528 r1581 357 357 ! -------------------------- 358 358 359 IF ( kt == nitend .AND. cp_cfg == "orca" ) THEN 360 361 CALL ctlopn( inum, 'STRAIT.dat', 'UNKNOWN', 'FORMATTED', 'SEQUENTIAL', & 362 & 1, numout, lwp, 1 ) 359 IF ( kt == nitend .AND. cp_cfg == "orca" .AND. lwp ) THEN 360 361 CALL ctl_opn( inum, 'STRAIT.dat', 'REPLACE', 'FORMATTED', 'SEQUENTIAL', -1, numout, lwp, narea ) 363 362 WRITE(inum,*) 364 363 WRITE(inum,*) 'Net freshwater budget ' -
trunk/NEMO/OPA_SRC/DIA/diawri.F90
r1577 r1581 150 150 REAL(wp), DIMENSION(jpi,jpj) :: & 151 151 zw2d ! temporary workspace 152 CHARACTER (len=80) :: clname153 152 !!---------------------------------------------------------------------- 154 153 ! … … 209 208 210 209 ! WRITE root name in date.file for use by postpro 211 IF( 210 IF(lwp) THEN 212 211 CALL dia_nam( clhstnam, nwrite,' ' ) 213 clname = 'date.file' 214 CALL ctlopn( inum, clname, 'UNKNOWN', 'FORMATTED', 'SEQUENTIAL', 1, numout, lwp, 1 ) 212 CALL ctl_opn( inum, 'date.file', 'REPLACE', 'FORMATTED', 'SEQUENTIAL', -1, numout, lwp, narea ) 215 213 WRITE(inum,*) clhstnam 216 214 CLOSE(inum) -
trunk/NEMO/OPA_SRC/FLO/flodom.F90
r1152 r1581 47 47 !! * Local declarations 48 48 LOGICAL :: llinmesh 49 CHARACTER (len=21) :: clname50 49 INTEGER :: ji, jj, jk ! DO loop index on 3 directions 51 50 INTEGER :: jfl, jfl1 ! number of floats … … 68 67 69 68 ! open the restart file 70 clname='restart_float' 71 CALL ctlopn( inum, clname, 'OLD', 'FORMATTED', 'SEQUENTIAL', & 72 & 1, numout, lwp, 1 ) 73 REWIND inum 69 CALL ctl_opn( inum, 'restart_float', 'OLD', 'FORMATTED', 'SEQUENTIAL', -1, numout, lwp ) 74 70 75 71 ! read of the restart file … … 94 90 IF( jpnfl > jpnrstflo ) THEN 95 91 ! open the init file 96 clname='init_float' 97 CALL ctlopn( inum, clname, 'OLD', 'FORMATTED', 'SEQUENTIAL', & 98 & 1, numout, .TRUE., 1 ) 92 CALL ctl_opn( inum, 'init_float', 'OLD', 'FORMATTED', 'SEQUENTIAL', -1, numout, lwp ) 99 93 DO jfl = jpnrstflo+1, jpnfl 100 94 READ(inum,*) flxx(jfl),flyy(jfl),flzz(jfl), nisobfl(jfl),ngrpfl(jfl),jfl1 … … 226 220 ! an index for the number of the float 227 221 ! open the init file 228 clname='init_float' 229 CALL ctlopn( inum, clname, 'OLD', 'FORMATTED', 'SEQUENTIAL', & 230 & 1, numout, .TRUE., 1 ) 222 CALL ctl_opn( inum, 'init_float', 'OLD', 'FORMATTED', 'SEQUENTIAL', -1, numout, lwp ) 231 223 READ(inum) (flxx(jfl) , jfl=1, jpnfl), & 232 224 (flyy(jfl) , jfl=1, jpnfl), & -
trunk/NEMO/OPA_SRC/FLO/flowri.F90
r1152 r1581 80 80 81 81 ! open the file numflo 82 clname='trajec_float' 83 CALL ctlopn( numflo, clname, 'UNKNOWN', 'UNFORMATTED', 'SEQUENTIAL', & 84 & 1, numout, .FALSE., 1 ) 82 CALL ctl_opn( numflo, 'trajec_float', 'REPLACE', 'UNFORMATTED', 'SEQUENTIAL', -1, numout, .FALSE. ) 85 83 ! REWIND numflo 86 84 … … 269 267 END DO 270 268 271 CALL ctlopn( inum, clname, 'UNKNOWN', 'FORMATTED', 'SEQUENTIAL', & 272 & 1, numout, .FALSE., 0 ) 269 CALL ctl_opn( inum, clname, 'REPLACE', 'FORMATTED', 'SEQUENTIAL', -1, numout, .FALSE. ) 273 270 REWIND inum 274 271 ! -
trunk/NEMO/OPA_SRC/IOM/in_out_manager.F90
r1579 r1581 5 5 !! turbulent closure parameterization 6 6 !!===================================================================== 7 !! History : 1.0 ! 2002-06 (G. Madec) original code7 !! History : 1.0 ! 2002-06 (G. Madec) original code 8 8 !! 2.0 ! 2006-07 (S. Masson) iom, add ctl_stop, ctl_warn 9 !! 3.0 ! 2008-06 (G. Madec) add ctmp4 to ctmp10 9 !! 3.0 ! 2008-06 (G. Madec) add ctmp4 to ctmp10 10 !! 3.2 ! 2009-08 (S. MAsson) add new ctl_opn 10 11 !!---------------------------------------------------------------------- 11 12 … … 18 19 USE par_oce ! ocean parameter 19 20 USE lib_print ! formated print library 21 #if defined key_agrif 22 USE Agrif_Util 23 #endif 20 24 21 25 IMPLICIT NONE … … 161 165 162 166 167 SUBROUTINE ctl_opn ( knum, cdfile, cdstat, cdform, cdacce, klengh, kout, ldwp, karea ) 168 !!---------------------------------------------------------------------- 169 !! *** ROUTINE ctl_opn *** 170 !! 171 !! ** Purpose : Open file and check if required file is available. 172 !! 173 !! ** Method : Fortan open 174 !! 175 !! History : 176 !! ! 1995-12 (G. Madec) Original code 177 !! 8.5 ! 2002-06 (G. Madec) F90: Free form and module 178 !!---------------------------------------------------------------------- 179 180 INTEGER , INTENT( out) :: knum ! logical unit to open 181 CHARACTER(len=*) , INTENT(in ) :: cdfile ! file name to open 182 CHARACTER(len=*) , INTENT(in ) :: cdstat ! disposition specifier 183 CHARACTER(len=*) , INTENT(in ) :: cdform ! formatting specifier 184 CHARACTER(len=*) , INTENT(in ) :: cdacce ! access specifier 185 INTEGER , INTENT(in ) :: klengh ! record length 186 INTEGER , INTENT(in ) :: kout ! number of logical units for write 187 LOGICAL , INTENT(in ) :: ldwp ! boolean term for print 188 INTEGER, OPTIONAL, INTENT(in ) :: karea ! proc number 189 !! 190 CHARACTER(len=80) :: clfile 191 INTEGER :: iost 192 193 ! adapt filename 194 ! ---------------- 195 clfile = TRIM(cdfile) 196 IF( PRESENT( karea ) ) THEN 197 IF( karea > 1 ) WRITE(clfile, "(a,'_',i4.4)") TRIM(clfile), karea-1 198 ENDIF 199 #if defined key_agrif 200 IF( .NOT. Agrif_Root() ) clfile = TRIM(Agrif_CFixed())//'_'//TRIM(clfile) 201 knum=Agrif_Get_Unit() 202 #else 203 knum=getunit() 204 #endif 205 206 iost=0 207 IF( cdacce(1:6) == 'DIRECT' ) THEN 208 OPEN( UNIT=knum, FILE=clfile, FORM=cdform, ACCESS=cdacce, STATUS=cdstat, RECL=klengh, ERR=100, IOSTAT=iost ) 209 ELSE 210 OPEN( UNIT=knum, FILE=clfile, FORM=cdform, ACCESS=cdacce, STATUS=cdstat , ERR=100, IOSTAT=iost ) 211 ENDIF 212 IF( iost == 0 ) THEN 213 IF(ldwp) THEN 214 WRITE(kout,*) ' file : ', clfile,' open ok' 215 WRITE(kout,*) ' unit = ', knum 216 WRITE(kout,*) ' status = ', cdstat 217 WRITE(kout,*) ' form = ', cdform 218 WRITE(kout,*) ' access = ', cdacce 219 WRITE(kout,*) 220 ENDIF 221 ENDIF 222 100 CONTINUE 223 IF( iost /= 0 ) THEN 224 IF(ldwp) THEN 225 WRITE(kout,*) 226 WRITE(kout,*) ' ===>>>> : bad opening file: ', clfile 227 WRITE(kout,*) ' ======= === ' 228 WRITE(kout,*) ' unit = ', knum 229 WRITE(kout,*) ' status = ', cdstat 230 WRITE(kout,*) ' form = ', cdform 231 WRITE(kout,*) ' access = ', cdacce 232 WRITE(kout,*) ' iostat = ', iost 233 WRITE(kout,*) ' we stop. verify the file ' 234 WRITE(kout,*) 235 ENDIF 236 STOP 'ctl_opn bad opening' 237 ENDIF 238 239 END SUBROUTINE ctl_opn 240 241 163 242 FUNCTION getunit() 164 243 !!---------------------------------------------------------------------- -
trunk/NEMO/OPA_SRC/LDF/ldfdyn_c2d.h90
r1152 r1581 176 176 ! ===================== equatorial strip (20N-20S) defined at t-points 177 177 178 CALL ctlopn( inum, 'ahmcoef', 'UNKNOWN', 'FORMATTED', 'SEQUENTIAL', & 179 & 1, numout, lwp, 1 ) 180 REWIND inum 178 CALL ctl_opn( inum, 'ahmcoef', 'OLD', 'FORMATTED', 'SEQUENTIAL', -1, numout, lwp ) 181 179 READ(inum,9101) clexp, iim, ijm 182 180 READ(inum,'(/)') -
trunk/NEMO/OPA_SRC/LDF/ldfdyn_c3d.h90
r1152 r1581 235 235 ! ===================== equatorial strip (20N-20S) defined at t-points 236 236 237 CALL ctlopn( inum, 'ahmcoef', 'UNKNOWN', 'FORMATTED', 'SEQUENTIAL', & 238 & 1, numout, lwp, 1 ) 239 REWIND inum 237 CALL ctl_opn( inum, 'ahmcoef', 'OLD', 'FORMATTED', 'SEQUENTIAL', -1, numout, lwp ) 240 238 READ(inum,9101) clexp, iim, ijm 241 239 READ(inum,'(/)') -
trunk/NEMO/OPA_SRC/OBC/obcrst.F90
r1528 r1581 97 97 ! ------------- 98 98 99 CALL ctlopn( inum, 'restart.obc.output', 'UNKNOWN', 'UNFORMATTED', 'DIRECT', & 100 & nreclo, numout, lwp, 1 ) 99 CALL ctl_opn( inum, 'restart.obc.output', 'REPLACE', 'UNFORMATTED', 'DIRECT', nreclo, numout, lwp ) 101 100 102 101 ! 1.2 Write header … … 324 323 ! 0.1 Open files 325 324 ! --------------- 326 CALL ctlopn( inum, 'restart.obc', 'UNKNOWN', 'UNFORMATTED', 'DIRECT', & 327 & nreclo, numout, lwp, 1 ) 325 CALL ctl_opn( inum, 'restart.obc', 'REPLACE', 'UNFORMATTED', 'DIRECT', nreclo, numout, lwp ) 328 326 329 327 ! 1. Read -
trunk/NEMO/OPA_SRC/SBC/sbcfwb.F90
r1573 r1581 66 66 INTEGER :: inum ! temporary logical unit 67 67 INTEGER :: ikty, iyear ! 68 CHARACTER (len=32) :: clname69 68 REAL(wp) :: z_emp, z_emp_nsrf ! temporary scalars 70 69 REAL(wp) :: zsurf_neg, zsurf_pos, zsurf_tospread … … 115 114 IF( kt == nit000 ) THEN 116 115 ! Read the corrective factor on precipitations (empold) 117 clname = 'EMPave_old.dat' 118 CALL ctlopn( inum, clname, 'OLD', 'FORMATTED', 'SEQUENTIAL', & 119 & 1, numout, .FALSE., 1 ) 120 116 CALL ctl_opn( inum, 'EMPave_old.dat', 'OLD', 'FORMATTED', 'SEQUENTIAL', -1, numout, .FALSE. ) 121 117 READ ( inum, "(24X,I8,2ES24.16)" ) iyear, a_fwb_b, a_fwb 122 118 CLOSE( inum ) … … 149 145 ! save empold value in a file 150 146 IF( kt == nitend .AND. lwp ) THEN 151 clname = 'EMPav.dat' 152 CALL ctlopn( inum, clname, 'UNKNOWN', 'FORMATTED', 'SEQUENTIAL', & 153 & 1, numout, .FALSE., 0 ) 154 WRITE(inum, "(24X,I8,2ES24.16)" ) nyear, a_fwb_b, a_fwb 147 CALL ctl_opn( inum, 'EMPave.dat', 'REPLACE', 'FORMATTED', 'SEQUENTIAL', -1, numout, .FALSE., narea ) 148 WRITE( inum, "(24X,I8,2ES24.16)" ) nyear, a_fwb_b, a_fwb 149 CLOSE( inum ) 155 150 ENDIF 156 151 ! -
trunk/NEMO/OPA_SRC/SOL/solver.F90
r1556 r1581 65 65 INTEGER, INTENT(in) :: kt 66 66 67 !! * Local declarations68 CHARACTER(len=80) :: clname69 70 67 NAMELIST/namsol/ nsolv, nsol_arp, nmin, nmax, nmod, eps, resmax, sor, rnu 71 68 !!---------------------------------------------------------------------- 72 69 73 IF(lwp) WRITE(numout,*)74 IF(lwp) WRITE(numout,*) 'solver_init : solver to compute the surface pressure gradient'75 IF(lwp) WRITE(numout,*) '~~~~~~~~~~~'76 77 ! open elliptic solver statistics file78 clname = 'solver.stat'79 CALL ctlopn( numsol, clname, 'UNKNOWN', 'FORMATTED', 'SEQUENTIAL', &80 1, numout, lwp, 1 )70 IF(lwp) THEN 71 WRITE(numout,*) 72 WRITE(numout,*) 'solver_init : solver to compute the surface pressure gradient' 73 WRITE(numout,*) '~~~~~~~~~~~' 74 75 ! open elliptic solver statistics file 76 CALL ctl_opn( numsol, 'solver.stat', 'REPLACE', 'FORMATTED', 'SEQUENTIAL', -1, numout, lwp, narea ) 77 ENDIF 81 78 82 79 -
trunk/NEMO/OPA_SRC/TRD/trdmld.F90
r1334 r1581 720 720 !!---------------------------------------------------------------------- 721 721 !! * Local declarations 722 INTEGER :: ilseq,jl722 INTEGER :: jl 723 723 724 724 REAL(wp) :: zjulian, zsto, zout 725 725 726 CHARACTER (LEN=21) :: &727 clold ='OLD' , & ! open specifier (direct access files)728 clunf ='UNFORMATTED', & ! open specifier (direct access files)729 clseq ='SEQUENTIAL' ! open specifier (direct access files)730 726 CHARACTER (LEN=40) :: clop 731 727 CHARACTER (LEN=12) :: clmxl, cltu, clsu … … 796 792 END IF 797 793 798 i lseq = 1 ; icount = 1 ; ionce = 1 ! open specifier794 icount = 1 ; ionce = 1 ! open specifier 799 795 800 796 ! I.3 Read control surface from file ctlsurf_idx … … 802 798 803 799 IF( nctls == 1 ) THEN 804 clname = 'ctlsurf_idx' 805 CALL ctlopn( numbol, clname, clold, clunf, clseq, ilseq, numout, lwp, 1 ) 806 REWIND( numbol ) 807 READ ( numbol ) nbol 800 CALL ctl_opn( numbol, 'ctlsurf_idx', 'OLD', 'UNFORMATTED', 'SEQUENTIAL', -1, numout, lwp ) 801 READ ( numbol ) nbol 802 CLOSE( numbol ) 808 803 END IF 809 804 -
trunk/NEMO/OPA_SRC/mppini.F90
r1556 r1581 129 129 !!---------------------------------------------------------------------- 130 130 !! * Local variables 131 CHARACTER (len=32) :: clname132 131 INTEGER :: ji, jj, jn ! dummy loop indices 133 132 INTEGER :: & … … 335 334 ! Save processor layout in layout.dat file 336 335 IF (lwp) THEN 337 clname = 'layout.dat' 338 CALL ctlopn( inum, clname, 'UNKNOWN', 'FORMATTED', 'SEQUENTIAL', & 339 & 1, numout, .FALSE., 1 ) 336 CALL ctl_opn( inum, 'layout.dat', 'REPLACE', 'FORMATTED', 'SEQUENTIAL', -1, numout, .FALSE., narea ) 340 337 WRITE(inum,'(a)') ' jpnij jpi jpj jpk jpiglo jpjglo' 341 338 WRITE(inum,'(6i8)') jpnij,jpi,jpj,jpk,jpiglo,jpjglo -
trunk/NEMO/OPA_SRC/mppini_2.h90
r1556 r1581 40 40 !!---------------------------------------------------------------------- 41 41 !! * Modules used 42 USE in_out_manager ! I/O Manager 42 43 USE iom 43 44 44 45 !! Local variables 45 CHARACTER (len=32) :: clname46 46 INTEGER :: ji, jj, jn, jproc, jarea ! dummy loop indices 47 47 INTEGER :: inum ! temporary logical unit … … 463 463 ! Save processor layout in ascii file 464 464 IF (lwp) THEN 465 clname = 'layout.dat' 466 CALL ctlopn( inum, clname, 'UNKNOWN', 'FORMATTED', 'SEQUENTIAL', & 467 & 1, numout, .FALSE., 1 ) 465 CALL ctl_opn( inum, 'layout.dat', 'REPLACE', 'FORMATTED', 'SEQUENTIAL', -1, numout, .FALSE., narea ) 468 466 WRITE(inum,'(6i8)') jpnij,jpi,jpj,jpk,jpiglo,jpjglo 469 467 WRITE(inum,'(a)') 'NAREA nlci nlcj nldi nldj nlei nlej nimpp njmpp' -
trunk/NEMO/OPA_SRC/opa.F90
r1579 r1581 179 179 INTEGER :: localComm 180 180 #endif 181 CHARACTER(len=20) :: namelistname 182 CHARACTER(len=28) :: file_out 183 CHARACTER(len=80),dimension(10) :: cltxt 181 CHARACTER(len=80),dimension(10) :: cltxt = '' 184 182 INTEGER :: ji ! local loop indicees 185 183 NAMELIST/namctl/ ln_ctl, nprint, nictls, nictle, & … … 187 185 !!---------------------------------------------------------------------- 188 186 189 ! Initializations190 ! ===============191 cltxt(:) = ''192 file_out = 'ocean.output'193 namelistname = 'namelist'194 195 187 ! Namelist namctl : Control prints & Benchmark 196 CALL ctlopn( numnam, namelistname, 'OLD', 'FORMATTED', 'SEQUENTIAL', -1, 6, .FALSE., 1 ) 197 REWIND( numnam ) ! is this really needed? we just open the file... 188 CALL ctl_opn( numnam, 'namelist', 'OLD', 'FORMATTED', 'SEQUENTIAL', -1, 6, .FALSE. ) 198 189 READ ( numnam, namctl ) 199 190 … … 227 218 IF( lwp ) THEN 228 219 ! open listing and namelist units 229 IF( narea > 1 ) WRITE(file_out, "(a,'_',i4.4)") TRIM(file_out), narea-1 230 CALL ctlopn( numout, file_out, 'UNKNOWN', 'FORMATTED', 'SEQUENTIAL', -1, -1, .FALSE., 1 ) 220 CALL ctl_opn( numout, 'ocean.output', 'REPLACE', 'FORMATTED', 'SEQUENTIAL', -1, 6, .FALSE., narea ) 231 221 232 222 WRITE(numout,*) -
trunk/NEMO/OPA_SRC/prtctl.F90
r1152 r1581 349 349 DO jn = sind, eind 350 350 WRITE(clfile_out,FMT=clb_name) jn-1 351 CALL ctlopn( numid(jn -narea + 1), clfile_out, 'UNKNOWN', 'FORMATTED', 'SEQUENTIAL', & 352 & 1, numout, .FALSE., 1 ) 351 CALL ctl_opn( numid(jn -narea + 1), clfile_out, 'REPLACE', 'FORMATTED', 'SEQUENTIAL', 1, numout, .FALSE. ) 353 352 j_id = numid(jn -narea + 1) 354 353 WRITE(j_id,*) -
trunk/NEMO/OPA_SRC/stpctl.F90
r1566 r1581 56 56 INTEGER, DIMENSION(3) :: ilocu ! 57 57 INTEGER, DIMENSION(2) :: ilocs ! 58 CHARACTER(len=80) :: clname59 58 !!---------------------------------------------------------------------- 60 59 … … 64 63 WRITE(numout,*) '~~~~~~~' 65 64 ! open time.step file 66 clname = 'time.step' 67 CALL ctlopn( numstp, clname, 'UNKNOWN', 'FORMATTED', 'SEQUENTIAL', 1, numout, lwp, 1 ) 65 CALL ctl_opn( numstp, 'time.step', 'REPLACE', 'FORMATTED', 'SEQUENTIAL', -1, numout, lwp, narea ) 68 66 ENDIF 69 67 … … 158 156 ENDIF 159 157 ! 160 ELSE 161 IF( kt == nit000 ) THEN! open ssh statistics file (put in solver.stat file)162 CALL ctl opn( numsol, 'solver.stat', 'UNKNOWN', 'FORMATTED', 'SEQUENTIAL', 1, numout, lwp, 1)158 ELSE !* ssh statistics (and others...) 159 IF( kt == nit000 .AND. lwp ) THEN ! open ssh statistics file (put in solver.stat file) 160 CALL ctl_opn( numsol, 'solver.stat', 'REPLACE', 'FORMATTED', 'SEQUENTIAL', -1, numout, lwp, narea ) 163 161 ENDIF 164 162 ! -
trunk/NEMO/OPA_SRC/trc_oce.F90
r1445 r1581 167 167 INTEGER :: numlight 168 168 REAL(wp) :: zchl 169 CHARACTER(LEN=20) :: clname 170 !!---------------------------------------------------------------------- 171 ! 172 clname = 'kRGB61.txt' 173 CALL ctlopn( numlight, clname, 'OLD', 'FORMATTED', 'SEQUENTIAL', 1, numout, .TRUE., 1 ) 169 !!---------------------------------------------------------------------- 170 ! 171 CALL ctl_opn( numlight, 'kRGB61.txt', 'OLD', 'FORMATTED', 'SEQUENTIAL', -1, numout, lwp ) 174 172 DO jchl = 1, 61 175 173 READ(numlight,*) zchl, ( prgb(jband,jchl), jband=1,3 ) -
trunk/NEMO/TOP_SRC/C14b/trcini_c14b.F90
r1542 r1581 17 17 USE trc ! TOP variables 18 18 USE trcsms_c14b ! C14 sms trends 19 USE in_out_manager ! I/O manager 19 20 20 21 IMPLICIT NONE … … 30 31 nrec , & ! number of year in CO2 Concentrations file 31 32 nmaxrec 32 33 CHARACTER (len=34) :: &34 clname_co2 = 'splco2.dat' , & ! CO2 atmospheric concentrations file35 clname_c14 = 'atmc14.dat' ! C-14 atmospheric concentrations file36 33 37 34 INTEGER :: inum1, inum2 ! unit number … … 92 89 IF(lwp) WRITE(numout,*) 'Read CO2 atmospheric concentrations file ' 93 90 94 CALL ctl opn( inum1, clname_co2, 'OLD', 'FORMATTED', 'SEQUENTIAL',1, numout, .FALSE., 1)91 CALL ctl_opn( inum1, 'splco2.dat', 'OLD', 'FORMATTED', 'SEQUENTIAL', -1, numout, .FALSE. ) 95 92 REWIND(inum1) 96 93 … … 109 106 IF (lwp) WRITE(numout,*) 'Read C-14 atmospheric concentrations file ' 110 107 111 CALL ctl opn( inum2, clname_c14, 'OLD', 'FORMATTED', 'SEQUENTIAL', 1, numout, .FALSE., 1)108 CALL ctl_opn( inum2, 'atmc14.dat', 'OLD', 'FORMATTED', 'SEQUENTIAL', -1, numout, .FALSE. ) 112 109 REWIND(inum2) 113 110 -
trunk/NEMO/TOP_SRC/C14b/trclsm_c14b.F90
r1252 r1581 16 16 USE trc ! TOP variables 17 17 USE trcsms_c14b ! C14b specific variable 18 USE in_out_manager ! I/O manager 18 19 19 20 IMPLICIT NONE … … 41 42 !! ** input : Namelist namelist_c14b 42 43 !!---------------------------------------------------------------------- 43 CHARACTER (len=32) :: clname = 'namelist_c14b'44 44 INTEGER :: numnatb 45 45 … … 67 67 68 68 ! ! Open namelist file 69 CALL ctl opn( numnatb, clname, 'OLD', 'FORMATTED', 'SEQUENTIAL', 1, numout, .FALSE., 1)69 CALL ctl_opn( numnatb, 'namelist_c14b', 'OLD', 'FORMATTED', 'SEQUENTIAL', -1, numout, .FALSE. ) 70 70 71 71 READ( numnatb , namc14date ) ! read namelist -
trunk/NEMO/TOP_SRC/CFC/trcini_cfc.F90
r1542 r1581 16 16 USE trc ! TOP variables 17 17 USE trcsms_cfc ! CFC sms trends 18 USE in_out_manager ! I/O manager 18 19 19 20 IMPLICIT NONE … … 21 22 22 23 PUBLIC trc_ini_cfc ! called by trcini.F90 module 23 24 CHARACTER (len=34) :: clname = 'cfc1112.atm' ! ???25 24 26 25 INTEGER :: inum ! unit number … … 89 88 IF(lwp) WRITE(numout,*) 'read of formatted file cfc1112atm' 90 89 91 CALL ctlopn( inum, clname, 'OLD', 'FORMATTED', 'SEQUENTIAL', & 92 & 1, numout, .FALSE., 1 ) 90 CALL ctl_opn( inum, 'cfc1112.atm', 'OLD', 'FORMATTED', 'SEQUENTIAL', -1, numout, .FALSE. ) 93 91 REWIND(inum) 94 92 -
trunk/NEMO/TOP_SRC/CFC/trclsm_cfc.F90
r1255 r1581 16 16 USE trc ! TOP variables 17 17 USE trcsms_cfc ! CFC specific variable 18 USE in_out_manager ! I/O manager 18 19 19 20 IMPLICIT NONE … … 41 42 !! ** input : Namelist namcfc 42 43 !!---------------------------------------------------------------------- 43 CHARACTER (len=32) :: clname = 'namelist_cfc'44 44 INTEGER :: numnatc 45 45 #if defined key_trc_diaadd … … 65 65 66 66 ! ! Open namelist file 67 CALL ctl opn( numnatc, clname, 'OLD', 'FORMATTED', 'SEQUENTIAL', 1, numout, .FALSE., 1)67 CALL ctl_opn( numnatc, 'namelist_cfc', 'OLD', 'FORMATTED', 'SEQUENTIAL', -1, numout, .FALSE. ) 68 68 69 69 READ( numnatc , namcfcdate ) ! read namelist -
trunk/NEMO/TOP_SRC/LOBSTER/trclsm_lobster.F90
r1457 r1581 16 16 USE trc ! TOP variables 17 17 USE sms_lobster ! sms trends 18 USE in_out_manager ! I/O manager 18 19 19 20 IMPLICIT NONE … … 39 40 !! namelist: natbio, natopt, and natdbi ("key_trc_diabio") 40 41 !!---------------------------------------------------------------------- 41 CHARACTER (len=32) :: clname42 42 INTEGER :: numnatl 43 43 !! … … 92 92 ! ! Open the namelist file 93 93 ! ! ---------------------- 94 clname ='namelist_lobster' 95 CALL ctlopn( numnatl, clname, 'OLD', 'FORMATTED', 'SEQUENTIAL', 1, numout, .FALSE., 1 ) 94 CALL ctl_opn( numnatl, 'namelist_lobster', 'OLD', 'FORMATTED', 'SEQUENTIAL', 1, numout, .FALSE. ) 96 95 97 96 ! namlobphy : parameters for phytoplankton -
trunk/NEMO/TOP_SRC/PISCES/trclsm_pisces.F90
r1457 r1581 19 19 USE trc ! TOP variables 20 20 USE sms_pisces ! sms trends 21 USE in_out_manager ! I/O manager 21 22 22 23 … … 45 46 !! natkriest ("key_kriest") 46 47 !!---------------------------------------------------------------------- 47 CHARACTER (len=32) :: clname48 48 !! 49 49 #if defined key_trc_diaadd && ! defined key_iomput … … 78 78 ! ! Open the namelist file 79 79 ! ! ---------------------- 80 clname ='namelist_pisces' 81 CALL ctlopn( numnat, clname, 'OLD', 'FORMATTED', 'SEQUENTIAL', 1, numout, .FALSE., 1 ) 80 CALL ctl_opn( numnat, 'namelist_pisces', 'OLD', 'FORMATTED', 'SEQUENTIAL', -1, numout, .FALSE. ) 82 81 83 82 REWIND( numnat ) -
trunk/NEMO/TOP_SRC/SED/sedini.F90
r1290 r1581 17 17 USE sedarr 18 18 USE iom 19 USE in_out_manager ! I/O manager 19 20 20 21 … … 76 77 !!---------------------------------------------------------------------- 77 78 INTEGER :: ji, jj, ikt 78 CHARACTER (len=40) :: csedout79 79 #if defined key_sed_off 80 80 INTEGER :: numblt … … 88 88 !--------------------------------------- 89 89 90 csedout = 'sediment.output' 91 CALL ctlopn( numsed, csedout, 'OLD', 'FORMATTED', 'SEQUENTIAL', & 92 & 1, numout, .FALSE., 1 ) 90 CALL ctl_opn( numsed, 'sediment.output', 'REPLACE', 'FORMATTED', 'SEQUENTIAL', -1, numout, .FALSE. ) 93 91 94 92 WRITE(numsed,*) … … 429 427 430 428 INTEGER :: jn, jn1 431 CHARACTER(len=40) :: csednam432 429 !------------------------------------------------------- 433 430 … … 443 440 ! Reading namelist.sed variables 444 441 !--------------------------------- 445 csednam = 'namelist.sediment' 446 CALL ctlopn( numnamsed, csednam, 'OLD', 'FORMATTED', 'SEQUENTIAL', & 447 & 1, numout, .FALSE., 1 ) 442 CALL ctl_opn( numnamsed, 'namelist.sediment', 'OLD', 'FORMATTED', 'SEQUENTIAL', -1, numout, .FALSE. ) 448 443 449 444 dtsed = rdt -
trunk/NEMO/TOP_SRC/TRP/trdmld_trc.F90
r1542 r1581 1215 1215 INTEGER :: ilseq, jl, jn 1216 1216 REAL(wp) :: zjulian, zsto, zout 1217 CHARACTER (LEN=21) :: clold ='OLD' ! open specifier (direct access files)1218 CHARACTER (LEN=21) :: clunf ='UNFORMATTED' ! open specifier (direct access files)1219 CHARACTER (LEN=21) :: clseq ='SEQUENTIAL' ! open specifier (direct access files)1220 1217 CHARACTER (LEN=40) :: clop, cleiv 1221 1218 CHARACTER (LEN=15) :: csuff … … 1223 1220 CHARACTER (LEN=16) :: cltrcu 1224 1221 CHARACTER (LEN= 5) :: clvar 1225 CHARACTER (LEN=80) :: clname1226 1222 1227 1223 NAMELIST/namtoptrd/ ntrd_trc, nctls_trc, ucf_trc, & … … 1359 1355 ENDIF 1360 1356 1361 i lseq = 1 ; icount = 1 ; ionce = 1 ! open specifier1357 icount = 1 ; ionce = 1 ! open specifier 1362 1358 1363 1359 #if defined key_lobster … … 1368 1364 ! ---------------------------------------------- 1369 1365 IF( nctls_trc == 1 ) THEN 1370 clname = 'ctlsurf_idx' 1371 CALL ctlopn( numbol, clname, clold, clunf, clseq, ilseq, numout, lwp, 1 ) 1372 REWIND( numbol ) 1373 READ ( numbol ) nbol_trc 1366 CALL ctl_opn( numbol, 'ctlsurf_idx', 'OLD', 'UNFORMATTED', 'SEQUENTIAL', -1, numout, lwp ) 1367 READ ( numbol ) nbol_trc 1368 CLOSE( numbol ) 1374 1369 ENDIF 1375 1370 -
trunk/NEMO/TOP_SRC/prtctl_trc.F90
r1152 r1581 247 247 DO js = sind, eind 248 248 WRITE(clfile_out,FMT=clb_name) js-1 249 CALL ctlopn( numid_trc(js -narea + 1), clfile_out, 'UNKNOWN', 'FORMATTED', 'SEQUENTIAL', & 250 & 1, numout, .FALSE., 1 ) 249 CALL ctl_opn( numid_trc(js -narea + 1), clfile_out, 'REPLACE', 'FORMATTED', 'SEQUENTIAL', -1, numout, .FALSE. ) 251 250 j_id = numid_trc(js -narea + 1) 252 251 WRITE(j_id,*) -
trunk/NEMO/TOP_SRC/trclec.F90
r1542 r1581 56 56 !!--------------------------------------------------------------------- 57 57 INTEGER :: jn 58 CHARACTER (len=32) :: clname59 58 60 59 ! Definition of a tracer as a structure … … 83 82 IF(lwp) WRITE(numout,*) '~~~~~~~' 84 83 85 clname = 'namelist_top' 86 CALL ctlopn( numnat, clname, 'OLD', 'FORMATTED', 'SEQUENTIAL', 1, numout, .FALSE., 1 ) 84 CALL ctl_opn( numnat, 'namelist_top', 'OLD', 'FORMATTED', 'SEQUENTIAL', 1, numout, .FALSE. ) 87 85 88 86 ! Namelist nattrc (files)
Note: See TracChangeset
for help on using the changeset viewer.