47 character(len=100),
intent(in) :: anfdatname
49 real(dp),
intent(out) :: dxi, deta, z_sl
51 integer(i4b) :: i, j, kc, kt, kr
53 character(len=256) :: anfdatname_with_path
54 character(len=256) :: ch_attr_title, ch_attr_institution, ch_attr_source, &
55 ch_attr_history, ch_attr_references
57 integer(i2b),
dimension(0:IMAX,0:JMAX) :: maske_conv, n_cts_conv, kc_cts_conv
58 real(sp) :: time_conv, dummy_conv, z_sl_conv, &
59 v_tot_conv, a_grounded_conv, a_floating_conv, &
61 xi_conv(0:imax), eta_conv(0:jmax), &
62 sigma_level_c_conv(0:kcmax), sigma_level_t_conv(0:ktmax), &
63 sigma_level_r_conv(0:krmax)
64 real(sp),
dimension(0:IMAX,0:JMAX) :: lambda_conv, phi_conv, &
66 temp_s_conv, as_perp_conv, &
67 zs_conv, zm_conv, zb_conv, zl_conv, &
68 h_cold_conv, h_temp_conv, h_conv, &
69 q_bm_conv, q_tld_conv, &
72 dzs_dtau_conv, dzm_dtau_conv, dzb_dtau_conv, dzl_dtau_conv, &
73 dh_c_dtau_conv, dh_t_dtau_conv, dh_dtau_conv, &
74 vx_b_g_conv, vy_b_g_conv, vz_b_conv, vh_b_conv, &
75 vx_s_g_conv, vy_s_g_conv, vz_s_conv, vh_s_conv, &
76 temp_b_conv, temph_b_conv, &
77 p_b_w_conv, h_w_conv, q_gl_g_conv
78 real(sp),
dimension(0:IMAX,0:JMAX,0:KCMAX) :: vx_c_conv, vy_c_conv, vz_c_conv, &
79 temp_c_conv, age_c_conv, &
80 enth_c_conv, omega_c_conv, &
82 real(sp),
dimension(0:IMAX,0:JMAX,0:KTMAX) :: vx_t_conv, vy_t_conv, vz_t_conv, &
83 omega_t_conv, age_t_conv, &
86 real(sp),
dimension(0:IMAX,0:JMAX,0:KRMAX) :: temp_r_conv
90 anfdatname_with_path = trim(anfdatpath)//
'/'//trim(anfdatname)
92 open(11, iostat=ios, &
93 file=trim(anfdatname_with_path), &
94 status=
'old', form=
'unformatted')
95 if (ios /= 0) stop
' topography3: Error when opening the initial-value file!'
97 read(11) ch_attr_title
98 read(11) ch_attr_institution
99 read(11) ch_attr_source
100 read(11) ch_attr_history
101 read(11) ch_attr_references
107 read(11) sigma_level_c_conv
108 read(11) sigma_level_t_conv
109 read(11) sigma_level_r_conv
115 read(11) as_perp_conv
134 read(11) omega_t_conv
138 read(11) omega_c_conv
143 read(11) am_perp_conv
148 read(11) dzs_dtau_conv
149 read(11) dzm_dtau_conv
150 read(11) dzb_dtau_conv
151 read(11) dzl_dtau_conv
152 read(11) dh_c_dtau_conv
153 read(11) dh_t_dtau_conv
154 read(11) dh_dtau_conv
164 read(11) temph_b_conv
172 write(6, fmt=
'(/1x,a)')
'topography3: End-of-file condition while reading *.erg.'
173 write(6, fmt=
'(1x,a)')
' Some variables will be undefined.'
177 close(11,status=
'keep')
181 z_sl =
real(z_sl_conv,dp)
183 h_r =
real(h_r_conv,dp)
186 xi(i) =
real(xi_conv(i),dp)
190 eta(j) =
real(eta_conv(j),dp)
196 maske(j,i) = maske_conv(i,j)
197 n_cts(j,i) = n_cts_conv(i,j)
198 kc_cts(j,i) = kc_cts_conv(i,j)
199 zs(j,i) =
real(zs_conv(i,j),dp)
200 zm(j,i) =
real(zm_conv(i,j),dp)
201 zb(j,i) =
real(zb_conv(i,j),dp)
202 zl(j,i) =
real(zl_conv(i,j),dp)
204 h_c(j,i) =
real(H_cold_conv(i,j),dp)
205 h_t(j,i) =
real(H_temp_conv(i,j),dp)
206 #elif (CALCMOD==0 || CALCMOD==2 || CALCMOD==3 || CALCMOD==-1)
207 h_c(j,i) =
real(H_conv(i,j),dp)
210 q_bm(j,i) =
real(Q_bm_conv(i,j),dp)/year_sec
211 q_tld(j,i) =
real(Q_tld_conv(i,j),dp)/year_sec
212 am_perp(j,i) =
real(am_perp_conv(i,j),dp)/year_sec
213 qx(j,i) =
real(qx_conv(i,j),dp)/year_sec
214 qy(j,i) =
real(qy_conv(i,j),dp)/year_sec
215 dzs_dtau(j,i) =
real(dzs_dtau_conv(i,j),dp)/year_sec
216 dzm_dtau(j,i) =
real(dzm_dtau_conv(i,j),dp)/year_sec
217 dzb_dtau(j,i) =
real(dzb_dtau_conv(i,j),dp)/year_sec
218 dzl_dtau(j,i) =
real(dzl_dtau_conv(i,j),dp)/year_sec
219 dh_c_dtau(j,i) =
real(dH_c_dtau_conv(i,j),dp)/year_sec
220 dh_t_dtau(j,i) =
real(dH_t_dtau_conv(i,j),dp)/year_sec
221 vx_b_g(j,i) =
real(vx_b_g_conv(i,j),dp)/year_sec
222 vy_b_g(j,i) =
real(vy_b_g_conv(i,j),dp)/year_sec
223 vz_b(j,i) =
real(vz_b_conv(i,j),dp)/year_sec
224 vx_s_g(j,i) =
real(vx_s_g_conv(i,j),dp)/year_sec
225 vy_s_g(j,i) =
real(vy_s_g_conv(i,j),dp)/year_sec
226 vz_s(j,i) =
real(vz_s_conv(i,j),dp)/year_sec
227 temp_b(j,i) =
real(temp_b_conv(i,j),dp)
228 temph_b(j,i) =
real(temph_b_conv(i,j),dp)
229 p_b_w(j,i) =
real(p_b_w_conv(i,j),dp)
230 h_w(j,i) =
real(H_w_conv(i,j),dp)
231 q_gl_g(j,i) =
real(q_gl_g_conv(i,j),dp)/year_sec
234 temp_r(kr,j,i) =
real(temp_r_conv(i,j,kr),dp)
238 vx_t(kt,j,i) =
real(vx_t_conv(i,j,kt),dp)/year_sec
239 vy_t(kt,j,i) =
real(vy_t_conv(i,j,kt),dp)/year_sec
240 vz_t(kt,j,i) =
real(vz_t_conv(i,j,kt),dp)/year_sec
241 omega_t(kt,j,i) =
real(omega_t_conv(i,j,kt),dp)
242 age_t(kt,j,i) =
real(age_t_conv(i,j,kt),dp)*year_sec
243 enth_t(kt,j,i) =
real(enth_t_conv(i,j,kt),dp)
244 enh_t(kt,j,i) =
real(enh_t_conv(i,j,kt),dp)
248 vx_c(kc,j,i) =
real(vx_c_conv(i,j,kc),dp)/year_sec
249 vy_c(kc,j,i) =
real(vy_c_conv(i,j,kc),dp)/year_sec
250 vz_c(kc,j,i) =
real(vz_c_conv(i,j,kc),dp)/year_sec
251 temp_c(kc,j,i) =
real(temp_c_conv(i,j,kc),dp)
252 age_c(kc,j,i) =
real(age_c_conv(i,j,kc),dp)*year_sec
253 enth_c(kc,j,i) =
real(enth_c_conv(i,j,kc),dp)
254 omega_c(kc,j,i) =
real(omega_c_conv(i,j,kc),dp)
255 enh_c(kc,j,i) =
real(enh_c_conv(i,j,kc),dp)
267 #if (GRID==0 || GRID==1)
274 stop
' topography3: GRID==2 not allowed for this application!'
280 call
geo_coord(phi(j,i), lambda(j,i), xi(i), eta(j))
298 area(j,i) = sq_g11_g(j,i)*sq_g22_g(j,i)*dxi*deta
subroutine topograd_2(dxi, deta, n_switch)
Calculation of topography gradients on the staggered grid and on the grid points (the latter by fourt...
Declarations of kind types for SICOPOLIS.
subroutine topography3(dxi, deta, z_sl, anfdatname)
Definition of the initial surface and bedrock topography (including gradients) and of the horizontal ...
subroutine topograd_1(dxi, deta, n_switch)
Calculation of topography gradients on the staggered grid and on the grid points (the latter by secon...
Declarations of global variables for SICOPOLIS (for the ANT domain).
subroutine geo_coord(phi_val, lambda_val, x_val, y_val)
Computation of longitude lambda and latitude phi for position (x,y) in the numerical domain...
subroutine metric()
Definition of the components g11 and g22 of the metric tensor of the applied coordinates.
Declarations of global variables for SICOPOLIS.