source: branches/2016/dev_v3.20_2016_gravity_drainage/SOURCES/source_3.20/ice_phy_param.f @ 9

Last change on this file since 9 was 9, checked in by vancop, 8 years ago

New Gravity Drainage Scheme v1

File size: 10.7 KB
Line 
1      SUBROUTINE ice_phy_param
2
3        !!------------------------------------------------------------------
4        !!                ***  ROUTINE ice_phy_param ***
5        !! ** Purpose :
6        !!           Defines physical constants & params of the model
7        !! ** Method  :
8        !!           Definitions !!!
9        !!
10        !! ** Arguments :
11        !!           n99
12        !!
13        !! ** Inputs / Ouputs : (global commons)
14        !!
15        !! ** External :
16        !!
17        !! ** References : Vancoppenolle et al., JGR 2007
18        !!
19        !! ** History :
20        !!       (1) CLIO, Goosse and Fichefet, JGR, 1999.
21        !!       (2) LIM-1D, Vancoppenolle et al., JGR, 2007.
22        !!       (3) BIO-LIM, Martin Vancoppenolle, 2008
23        !!
24        !!------------------------------------------------------------------
25        !! * Arguments
26
27      INCLUDE 'type.com'
28      INCLUDE 'const.com'
29      INCLUDE 'para.com'
30      INCLUDE 'ice.com'
31
32      ! name of the experiment
33      CHARACTER(len=8) exp_id
34
35      ! Formats for reading the initial salinity profile
36      CHARACTER(len=1) zc1
37      CHARACTER(len=2) zc2
38      CHARACTER(len=7) zformat1
39      CHARACTER(len=7) zformat2
40      CHARACTER(len=8) zformat3
41
42!
43!-----------------------------------------------------------------------
44!  1 ) Lecture des parametres du run
45!-----------------------------------------------------------------------
46!
47      WRITE(numout,*) ' * ice_phy_param : '
48      WRITE(numout,*) ' ~~~~~~~~~~~~~~~~~~'
49
50      OPEN(unit=10,file='run.param',status='old')
51
52      READ(10,*)
53      READ(10,*)
54      READ(10,*)
55      READ(10,*)
56      READ(10,*)
57      READ(10,*)
58      READ(10,*) exp_id     ! name of the experiment
59      READ(10,*)
60      READ(10,*) ddtb       ! time step
61      READ(10,*)
62      READ(10,*) nstart     ! number of the first iteration
63      READ(10,*)
64      READ(10,*) nend       ! number of the last iteration
65      READ(10,*)
66      READ(10,*) nyear      ! initial year
67      READ(10,*)
68      READ(10,*) nfr_out    ! output frequency
69      READ(10,*)
70      READ(10,*) rlat       ! latitude
71      READ(10,*) 
72      READ(10,*) c_bio_model ! biological model
73      READ(10,*) 
74      WRITE(numout,*) ' Type of biological model ( c_bio_model ) : ', 
75     &                  c_bio_model
76      WRITE(numout,*)
77
78      nitrun    = nend - nstart + 1
79
80      CLOSE(10)
81!
82!-----------------------------------------------------------------------
83!  2 ) Mathematical constants
84!-----------------------------------------------------------------------
85!
86      c_zero  = 0.d0              ! zero
87      one     = 1.d0              ! one
88      pi     = 4.0 * atan(one)    ! pi
89      radian = pi / 180.0         ! conversion degrees to radians
90
91!------------------------------------------------------------------------------
92!  3 ) Physical constants
93!------------------------------------------------------------------------------
94
95      !-----------------------
96      ! Fundamental constants
97      !-----------------------
98      gpes   = 9.80d0             ! gravity
99      stefan = 5.6697d-08         ! stefan-boltzmann constant
100      vkarmn = 0.40d0             ! von karmann constant
101      cevap  = 2.5d+06            ! heat transfer coefficient for latent heat... check!!!
102      zemise = 0.97d0             ! R, sea water emissivity (remove also)
103
104      !---------------
105      ! Ocean physics
106      !---------------
107      tpw     = 273.16d0          ! water triple point
108      rho0    = 1025.0            ! ocean mean density
109      cpw     = 3.99d+03          ! seawater specific heat
110      oce_sal = 34.0              ! 34. is the control
111
112      visc_br = 1.9e-3            ! dynamic viscosity of water at 0C (kg/(m.s)) - Sharqawy et al, 2010, eq. 22
113      thdiff_br = 1.2e-7          ! thermal diffusivity of brine (m2/s) - Notz and Worster, 2008
114      beta_ocs  = 0.81            ! haline expansion coefficient (kg/m3)/(g/kg) (TEOS10)
115
116      !-----------------
117      ! Sea ice physics
118      !-----------------
119 
120      !-- thermal properties
121      tfsn   = 273.16d0           ! snow melting point
122      tfsg   = 273.16d0           ! sea ice melting point
123      xkn    = 0.31d0             ! 0.31d0 ISPOL Olivier Lecomte communication ! ref value 0.31d0 ! snow thermal conductivity
124      xkg    = 2.034d0            ! pure ice thermal conductivity
125      rhog   = 917.0              ! sea ice density
126      rhon   = 330.d0             ! O. Lecomte says 355 could be used
127      cpg    = 2.062d+03          ! sea ice specific heat (J/kg/K)
128      lfus   = 3.335d+05          ! pure ice latent heat (J/kg)
129      lvap   = 2.501e+06          ! latent heat of vaporization of water (0°C J/kg)
130      lsub   = lfus  + lvap       ! sublimation latent heat
131      tmut   = 0.054d0            ! rate between seawater freezing point and salinity (linear model)
132      betak1 = 0.09d0             ! first Pringle th. cond. constant
133      betak2 = 0.011d0            ! second Pringle th. cond. constant
134!     emig   = 0.99d0             ! surface emissivity (read later)
135
136      !---------------------------
137      ! Model physical parameters
138      !---------------------------
139      OPEN(unit=25,file='icephys.param', status='old')
140
141      READ(25,*)
142      READ(25,*)
143      READ(25,*)
144      READ(25,*)
145      READ(25,*)                 
146      READ(25,*)
147      READ(25,*)
148      READ(25,*)
149      READ(25,*) 
150      READ(25,*)                 
151      READ(25,*)
152      READ(25,*)
153      READ(25,*)
154      READ(25,*)               
155      READ(25,*) n_i              ! number of layers in the ice
156      READ(25,*)
157      READ(25,*) n_s              ! number of layers in the snow
158      READ(25,*)
159      READ(25,*) parsub           ! switch for sublimation or not
160      READ(25,*)
161      READ(25,*) ln_evap          ! switch for snow evaporation or not
162      READ(25,*)                  !
163      READ(25,*) tabq_ano         ! Prescribed air temperature anomalies
164      READ(25,*)
165      READ(25,*)
166      READ(25,*)
167      READ(25,*)
168      READ(25,*)
169      READ(25,*)
170      READ(25,*) ln_grd           ! gravity drainage or not
171      READ(25,*)
172      READ(25,*) ln_flu           ! flushing or not
173      READ(25,*)
174      READ(25,*) ln_flo           ! flooding or not
175      READ(25,*)
176      READ(25,*) flu_beta         ! fraction of meltwater percolating
177      READ(25,*)
178      READ(25,*) e_thr_flu        ! permeability threshold for flushing
179      READ(25,*)
180      READ(25,*) frtr_si_phy      ! fractionation coeff in snow ice
181      READ(25,*)
182      READ(25,*) d_br_mol         ! molecular diffusivity of brine
183      READ(25,*)
184      READ(25,*) d_br_tur         ! turbulent diffusivity of brine
185      READ(25,*)
186      READ(25,*) ra_c             ! critical rayleigh number over which convection starts
187      READ(25,*)
188      READ(25,*) ra_smooth        ! coefficient to smooth the hyperbolic tangential for ra_c
189      READ(25,*)
190      READ(25,'(a2)') c_gravdr    ! type of gravity drainage
191      READ(25,*)
192      READ(25,'(a3)') c_sbr       ! type of brine salinity for salt advection
193      READ(25,*)
194      READ(25,'(a3)') c_perm      ! type of permeability
195      READ(25,*)
196      READ(25,'(a3)') c_permeff   ! type of effective permeability
197      READ(25,*)
198      READ(25,*) delta_cw         ! Cox and weeks gravity drainage parameter
199      READ(25,*)
200      READ(25,*)
201      READ(25,*)
202      READ(25,*)
203      READ(25,*)
204      READ(25,*)
205      READ(25,*) emig
206      READ(25,*)
207      READ(25,*) fpar_fsw
208      READ(25,*)
209      READ(25,*) qpar_fsw
210      READ(25,*)
211      READ(25,*) c_rad_scheme
212      READ(25,*)
213      READ(25,*) c_rad_discr 
214      READ(25,*)
215      READ(25,*) rad_inot_s_dry   ! surface transmission parameter, dry snow
216      READ(25,*)
217      READ(25,*) rad_inot_s_wet   ! surface transmission parameter, wet snow
218      READ(25,*)
219      READ(25,*) rad_inot_i_dry   ! surface transmission parameter, dry ice
220      READ(25,*)
221      READ(25,*) rad_inot_i_wet   ! surface transmission parameter, wet ice
222      READ(25,*)
223      READ(25,*) h_not_s          ! SSL thickness, snow
224      READ(25,*)
225      READ(25,*) h_not_i          ! SSL thickness, ice
226      READ(25,*)
227      READ(25,*) rad_kappa_s_su_d ! surface extinction coefficient, dry snow
228      READ(25,*)
229      READ(25,*) rad_kappa_s_su_m ! surface extinction coefficient, melting snow
230      READ(25,*)
231      READ(25,*) rad_kappa_i_su_d ! surface extinction coefficient, cold ice
232      READ(25,*)
233      READ(25,*) rad_kappa_i_su_m ! surface extinction coefficient, melting ice
234      READ(25,*)
235      READ(25,*) rad_kappa_s_de_d ! depth extinction coefficient, dry snow
236      READ(25,*)
237      READ(25,*) rad_kappa_s_de_m ! depth extinction coefficient, wet snow
238      READ(25,*)
239      READ(25,*) rad_kappa_i_de_d ! attenuation coefficient, cold ice
240      READ(25,*)
241      READ(25,*) rad_kappa_i_de_m ! attenuation coefficient, melting ice
242      READ(25,*)
243
244      WRITE(numout,*) ' n_i        :', n_i
245      WRITE(numout,*) ' n_s        :', n_s
246      WRITE(numout,*) ' parsub     :', parsub
247      WRITE(numout,*) ' ln_evap    :', ln_evap
248      WRITE(numout,*) ' tabq_ano   :', tabq_ano
249      WRITE(numout,*) ' ln_grd     :', ln_grd
250      WRITE(numout,*) ' ln_flu     :', ln_flu
251      WRITE(numout,*) ' ln_flo     :', ln_flo
252      WRITE(numout,*) ' flu_beta   :', flu_beta
253      WRITE(numout,*) ' frtr_si_phy:', frtr_si_phy
254      WRITE(numout,*) ' d_br_mol   :', d_br_mol
255      WRITE(numout,*) ' d_br_tur   :', d_br_tur
256      WRITE(numout,*) ' ra_c       :', ra_c
257      WRITE(numout,*) ' ra_smooth  :', ra_smooth
258      WRITE(numout,*) ' c_gravdr   :', c_gravdr
259      WRITE(numout,*) ' c_sbr      :', c_sbr
260      WRITE(numout,*) ' delta_cw   :', delta_cw
261      WRITE(numout,*) ' emig        :', emig
262      WRITE(numout,*) ' fpar_fsw    :', fpar_fsw
263      WRITE(numout,*) ' qpar_fsw    :', qpar_fsw
264      WRITE(numout,*) ' c_rad_scheme:', c_rad_scheme
265      WRITE(numout,*) ' c_rad_discr: ', c_rad_discr
266      WRITE(numout,*) ' rad_inot_s_dry : ', rad_inot_s_dry
267      WRITE(numout,*) ' rad_inot_s_wet : ', rad_inot_s_wet
268      WRITE(numout,*) ' rad_inot_i_dry : ', rad_inot_i_dry
269      WRITE(numout,*) ' rad_inot_i_wet : ', rad_inot_i_wet
270      WRITE(numout,*) ' h_not_s    : ', h_not_s
271      WRITE(numout,*) ' h_not_i    : ', h_not_i
272      WRITE(numout,*) ' rad_kappa_s_su_d : ', rad_kappa_s_su_d
273      WRITE(numout,*) ' rad_kappa_s_su_m : ', rad_kappa_s_su_m
274      WRITE(numout,*) ' rad_kappa_i_su_d : ', rad_kappa_i_su_d
275      WRITE(numout,*) ' rad_kappa_i_su_m : ', rad_kappa_i_su_m
276      WRITE(numout,*) ' rad_kappa_s_de_d : ', rad_kappa_s_de_d
277      WRITE(numout,*) ' rad_kappa_s_de_m : ', rad_kappa_s_de_m
278      WRITE(numout,*) ' rad_kappa_i_de_d : ', rad_kappa_i_de_d
279      WRITE(numout,*) ' rad_kappa_i_de_m : ', rad_kappa_i_de_m
280      WRITE(numout,*)
281
282      CLOSE(25)
283
284!------------------------------------------------------------------------------
285      RETURN
286      END
Note: See TracBrowser for help on using the repository browser.