/[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.1 by jahn, Wed Apr 13 18:56:24 2011 UTC revision 1.4 by jahn, Thu Aug 9 21:18:53 2012 UTC
# Line 64  CEOP Line 64  CEOP
64  #endif  #endif
65       &           darwin_relaxscale,       &           darwin_relaxscale,
66       &           darwin_ForcingPeriod, darwin_ForcingCycle,       &           darwin_ForcingPeriod, darwin_ForcingCycle,
67         &           darwin_PARunits, darwin_W_to_uEins,
68         &           darwin_ironUnits,
69         &           darwin_dustFrac,
70  #ifdef ALLOW_PAR_DAY  #ifdef ALLOW_PAR_DAY
71       &           darwin_PARavPeriod,       &           darwin_PARavPeriod,
72  #endif  #endif
# Line 73  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
82  #endif  #endif
# Line 131  C Set defaults values for parameters in Line 135  C Set defaults values for parameters in
135        darwin_acdomFile=' '        darwin_acdomFile=' '
136        darwin_oasim_edFile=' '        darwin_oasim_edFile=' '
137        darwin_oasim_esFile=' '        darwin_oasim_esFile=' '
138          darwin_PARunits='Ein/m2/d        '
139          darwin_W_to_uEins=1. _d 0/0.2174 _d 0
140          darwin_ironUnits='mol Fe/m2/s     '
141          darwin_dustFrac=0.035 _d 0
142        darwin_relaxscale=0. _d 0        darwin_relaxscale=0. _d 0
143        darwin_seed=0        darwin_seed=0
144  c default periodic forcing to same as for GCHEM  c default periodic forcing to same as for GCHEM
# Line 155  c default periodic forcing to same as fo Line 163  c default periodic forcing to same as fo
163        DO ilam=1,tlam        DO ilam=1,tlam
164          darwin_waves(ilam) = 0          darwin_waves(ilam) = 0
165        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  
166  #endif  #endif
167    
168  #ifdef WAVEBANDS  #ifdef WAVEBANDS
169          DO ilam=1,tlam+1
170            darwin_wavebands(ilam) = 0
171          ENDDO
172  #ifdef DAR_CALC_ACDOM  #ifdef DAR_CALC_ACDOM
173        darwin_Sdom = 0.014 _d 0        darwin_Sdom = 0.014 _d 0
174  #endif  #endif
# Line 211  C Open and read the data.darwin file Line 207  C Open and read the data.darwin file
207  #ifdef ALLOW_PAR_DAY  #ifdef ALLOW_PAR_DAY
208        darwin_PARnav = NINT(darwin_PARavPeriod*nsubtime/dTtracerLev(1))        darwin_PARnav = NINT(darwin_PARavPeriod*nsubtime/dTtracerLev(1))
209  #endif  #endif
210    C factor for conversion to uEin/m2/s
211          IF ( darwin_PARunits(1:16) .EQ. 'uEin/m2/s       ' ) THEN
212            darwin_PARFileConv = 1. _d 0
213          ELSEIF ( darwin_PARunits(1:16) .EQ. 'Ein/m2/d        ' ) THEN
214            darwin_PARFileConv = 1. _d 6/86400. _d 0
215          ELSEIF ( darwin_PARunits(1:16) .EQ. 'W/m2            ' ) THEN
216            darwin_PARFileConv = darwin_W_to_uEins
217          ELSE
218            WRITE(msgBuf,'(2A)') 'S/R DARWIN_READPARMS:',
219         &    'darwin_PARunits must be one of Ein/m2/d, uEin/m2/s, W/m2'
220            CALL PRINT_ERROR( msgBuf , 1)
221            STOP 'unknown darwin_PARunits'
222          ENDIF
223    
224    C factor for conversion to mmol Fe/m2/s (bioavailable fraction is done later)
225          IF ( darwin_ironUnits(1:16) .EQ. 'mol Fe/m2/s     ' ) THEN
226            darwin_ironFileConv = 1000. _d 0
227          ELSEIF ( darwin_ironUnits(1:16) .EQ. 'kg dust/m2/s    ' ) THEN
228            darwin_ironFileConv = 1000.*darwin_dustFrac*1000./55.845 _d 0
229          ELSE
230            WRITE(msgBuf,'(2A)') 'S/R DARWIN_READPARMS:',
231         &    'darwin_ironUnits must be one of mol Fe/m2/s, kg dust/m2/s'
232            CALL PRINT_ERROR( msgBuf , 1)
233            STOP 'unknown darwin_Feunits'
234          ENDIF
235    
236  #ifdef DAR_DIAG_CHL  #ifdef DAR_DIAG_CHL
237  C default values  C default values
# Line 287  C Close the open data file Line 308  C Close the open data file
308        CLOSE(iUnit)        CLOSE(iUnit)
309    
310  #if defined(WAVEBANDS) || defined(OASIM)  #if defined(WAVEBANDS) || defined(OASIM)
311          IF ( darwin_waves(1).EQ.0.0 .AND. tlam.EQ.13 ) THEN
312            darwin_waves(1) = 400
313            darwin_waves(2) = 425
314            darwin_waves(3) = 450
315            darwin_waves(4) = 475
316            darwin_waves(5) = 500
317            darwin_waves(6) = 525
318            darwin_waves(7) = 550
319            darwin_waves(8) = 575
320            darwin_waves(9) = 600
321            darwin_waves(10) = 625
322            darwin_waves(11) = 650
323            darwin_waves(12) = 675
324            darwin_waves(13) = 700
325            IF ( darwin_wavebands(1).NE.0.0 ) THEN
326             WRITE(msgBuf,'(2A)') 'DARWIN_READPARMS: ',
327         &   'darwin_wavebands given without darwin_waves.'
328             CALL PRINT_ERROR( msgBuf, myThid )
329             WRITE(msgBuf,'(2A)') 'DARWIN_READPARMS: ',
330         &   'using standard waveband centers 400, 425, ...'
331             CALL PRINT_ERROR( msgBuf, myThid )
332             WRITE(msgBuf,'(2A)') 'DARWIN_READPARMS: ',
333         &   'provide darwin_waves if this is not desired.'
334             CALL PRINT_ERROR( msgBuf, myThid )
335            ENDIF
336          ENDIF
337  c   Quanta conversion  c   Quanta conversion
338        planck = 6.6256 _d -34   !Plancks constant J sec        planck = 6.6256 _d -34   !Plancks constant J sec
339        c = 2.998 _d 8                 !speed of light m/sec        c = 2.998 _d 8                 !speed of light m/sec
# Line 296  c   Quanta conversion Line 343  c   Quanta conversion
343        do ilam = 1,tlam        do ilam = 1,tlam
344         rlamm = darwin_waves(ilam)*1 _d -9  !lambda in m         rlamm = darwin_waves(ilam)*1 _d -9  !lambda in m
345         WtouEins(ilam) = 1 _d 6*rlamm*hcoavo      !Watts to uEin/s conversion         WtouEins(ilam) = 1 _d 6*rlamm*hcoavo      !Watts to uEin/s conversion
346           IF ( rlamm .EQ. 0.0 ) THEN
347            WRITE(msgBuf,'(2A)') 'DARWIN_READPARMS: ',
348         &  'please provide wavelengths in darwin_waves.'
349            CALL PRINT_ERROR( msgBuf, myThid )
350            STOP 'ABNORMAL END: S/R DARWIN_READPARMS'
351           ENDIF
352        enddo        enddo
353  #endif  #endif
354    

Legend:
Removed from v.1.1  
changed lines
  Added in v.1.4

  ViewVC Help
Powered by ViewVC 1.1.22