/[MITgcm]/MITgcm_contrib/darwin2/pkg/darwin/darwin_readparams.F
ViewVC logotype

Diff of /MITgcm_contrib/darwin2/pkg/darwin/darwin_readparams.F

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

revision 1.3 by jahn, Thu Sep 22 19:23:31 2011 UTC revision 1.9 by jahn, Wed Dec 4 21:21:32 2013 UTC
# Line 76  CEOP Line 76  CEOP
76        NAMELIST /DARWIN_SPECTRAL_PARM/        NAMELIST /DARWIN_SPECTRAL_PARM/
77       &           darwin_waves       &           darwin_waves
78  #ifdef WAVEBANDS  #ifdef WAVEBANDS
79         &          ,darwin_wavebands
80  #ifdef DAR_CALC_ACDOM  #ifdef DAR_CALC_ACDOM
81       &          ,darwin_Sdom       &          ,darwin_Sdom, darwin_lambda_aCDOM, darwin_aCDOM_fac
82  #endif  #endif
83  #ifdef DAR_DIAG_ACDOM  #ifdef DAR_DIAG_ACDOM
84       &          ,darwin_diag_acdom_ilam       &          ,darwin_diag_acdom_ilam
# Line 114  CEOP Line 115  CEOP
115       &        dic_pCO2, dic_int1, dic_int2, dic_int3, dic_int4       &        dic_pCO2, dic_int1, dic_int2, dic_int3, dic_int4
116  #endif  #endif
117    
118          _BEGIN_MASTER(myThid)
119    
120  C Set defaults values for parameters in DARWIN_IO.h  C Set defaults values for parameters in DARWIN_IO.h
121        darwin_iceFile=' '        darwin_iceFile=' '
122        darwin_ironFile=' '        darwin_ironFile=' '
# Line 162  c default periodic forcing to same as fo Line 165  c default periodic forcing to same as fo
165        DO ilam=1,tlam        DO ilam=1,tlam
166          darwin_waves(ilam) = 0          darwin_waves(ilam) = 0
167        ENDDO        ENDDO
       IF (tlam.EQ.13) THEN  
         darwin_waves(1) = 400  
         darwin_waves(2) = 425  
         darwin_waves(3) = 450  
         darwin_waves(4) = 475  
         darwin_waves(5) = 500  
         darwin_waves(6) = 525  
         darwin_waves(7) = 550  
         darwin_waves(8) = 575  
         darwin_waves(9) = 600  
         darwin_waves(10) = 625  
         darwin_waves(11) = 650  
         darwin_waves(12) = 675  
         darwin_waves(13) = 700  
       ENDIF  
168  #endif  #endif
169    
170  #ifdef WAVEBANDS  #ifdef WAVEBANDS
171          DO ilam=1,tlam+1
172            darwin_wavebands(ilam) = -1
173          ENDDO
174  #ifdef DAR_CALC_ACDOM  #ifdef DAR_CALC_ACDOM
175        darwin_Sdom = 0.014 _d 0        darwin_Sdom = 0.014 _d 0
176          darwin_lambda_aCDOM = 450 _d 0
177          darwin_aCDOM_fac = 0.2 _d 0
178  #endif  #endif
179  #ifdef DAR_DIAG_ACDOM  #ifdef DAR_DIAG_ACDOM
180  c value >= 100 will be converted to index in wavebands_init_fixed        c value >= 100 will be converted to index in wavebands_init_fixed      
# Line 200  c value >= 100 will be converted to inde Line 193  c value >= 100 will be converted to inde
193          darwin_bbphy(i) = 0 _d 0          darwin_bbphy(i) = 0 _d 0
194        enddo        enddo
195        darwin_radtrans_kmax = Nr        darwin_radtrans_kmax = Nr
196        darwin_radtrans_niter = 1        darwin_radtrans_niter = -2
197        darwin_part_size_P = 1 _d -15   ! mmol P per particle        darwin_part_size_P = 1 _d -15   ! mmol P per particle
198  #endif  #endif
199  #endif /* WAVEBANDS */  #endif /* WAVEBANDS */
200    
201  C Open and read the data.darwin file  C Open and read the data.darwin file
       _BEGIN_MASTER(myThid)  
202        WRITE(msgBuf,'(A)') ' DARWIN_READPARMS: opening data.darwin'        WRITE(msgBuf,'(A)') ' DARWIN_READPARMS: opening data.darwin'
203        CALL PRINT_MESSAGE(msgBuf, standardMessageUnit,        CALL PRINT_MESSAGE(msgBuf, standardMessageUnit,
204       &                   SQUEEZE_RIGHT , 1)       &                   SQUEEZE_RIGHT , 1)
# Line 319  C Close the open data file Line 311  C Close the open data file
311        CLOSE(iUnit)        CLOSE(iUnit)
312    
313  #if defined(WAVEBANDS) || defined(OASIM)  #if defined(WAVEBANDS) || defined(OASIM)
314          IF ( darwin_waves(1).EQ.0.0 .AND. tlam.EQ.13 ) THEN
315            darwin_waves(1) = 400
316            darwin_waves(2) = 425
317            darwin_waves(3) = 450
318            darwin_waves(4) = 475
319            darwin_waves(5) = 500
320            darwin_waves(6) = 525
321            darwin_waves(7) = 550
322            darwin_waves(8) = 575
323            darwin_waves(9) = 600
324            darwin_waves(10) = 625
325            darwin_waves(11) = 650
326            darwin_waves(12) = 675
327            darwin_waves(13) = 700
328            IF ( darwin_wavebands(1).NE.0.0 ) THEN
329             WRITE(msgBuf,'(2A)') 'DARWIN_READPARMS: ',
330         &   'darwin_wavebands given without darwin_waves.'
331             CALL PRINT_ERROR( msgBuf, myThid )
332             WRITE(msgBuf,'(2A)') 'DARWIN_READPARMS: ',
333         &   'using standard waveband centers 400, 425, ...'
334             CALL PRINT_ERROR( msgBuf, myThid )
335             WRITE(msgBuf,'(2A)') 'DARWIN_READPARMS: ',
336         &   'provide darwin_waves if this is not desired.'
337             CALL PRINT_ERROR( msgBuf, myThid )
338            ENDIF
339          ENDIF
340  c   Quanta conversion  c   Quanta conversion
341        planck = 6.6256 _d -34   !Plancks constant J sec        planck = 6.6256 _d -34   !Plancks constant J sec
342        c = 2.998 _d 8                 !speed of light m/sec        c = 2.998 _d 8                 !speed of light m/sec
# Line 328  c   Quanta conversion Line 346  c   Quanta conversion
346        do ilam = 1,tlam        do ilam = 1,tlam
347         rlamm = darwin_waves(ilam)*1 _d -9  !lambda in m         rlamm = darwin_waves(ilam)*1 _d -9  !lambda in m
348         WtouEins(ilam) = 1 _d 6*rlamm*hcoavo      !Watts to uEin/s conversion         WtouEins(ilam) = 1 _d 6*rlamm*hcoavo      !Watts to uEin/s conversion
349           IF ( rlamm .EQ. 0.0 ) THEN
350            WRITE(msgBuf,'(2A)') 'DARWIN_READPARMS: ',
351         &  'please provide wavelengths in darwin_waves.'
352            CALL PRINT_ERROR( msgBuf, myThid )
353            STOP 'ABNORMAL END: S/R DARWIN_READPARMS'
354           ENDIF
355        enddo        enddo
356  #endif  #endif
357    
# Line 347  C--   Print a summary of parameter value Line 371  C--   Print a summary of parameter value
371        CALL PRINT_MESSAGE( msgBuf, iUnit, SQUEEZE_RIGHT, myThid )        CALL PRINT_MESSAGE( msgBuf, iUnit, SQUEEZE_RIGHT, myThid )
372    
373  #if defined(WAVEBANDS) || defined(OASIM)  #if defined(WAVEBANDS) || defined(OASIM)
374        CALL WRITE_1D_I( darwin_waves, tlam, 0,        CALL WRITE_1D_RL( darwin_waves, tlam, 0,
375       &   'darwin_waves =',       &   'darwin_waves =',
376       &'   /* "central" wavelengths of wavebands */')       &'   /* "central" wavelengths of wavebands */')
377  #endif  #endif
# Line 395  C--   Print a summary of parameter value Line 419  C--   Print a summary of parameter value
419       &'   /* deepest level in which to compute irradiances */')       &'   /* deepest level in which to compute irradiances */')
420        CALL WRITE_0D_I( darwin_radtrans_niter, INDEX_NONE,        CALL WRITE_0D_I( darwin_radtrans_niter, INDEX_NONE,
421       &   'darwin_radtrans_niter =',       &   'darwin_radtrans_niter =',
422       &'   /* number of "radtrans improvement" iterations */')       &'   /* iterations/method for solveing 3-stream equations */')
423  #endif /* DAR_RADTRANS */  #endif /* DAR_RADTRANS */
424  #endif /* WAVEBANDS */  #endif /* WAVEBANDS */
425    

Legend:
Removed from v.1.3  
changed lines
  Added in v.1.9

  ViewVC Help
Powered by ViewVC 1.1.22