Skip to content
Snippets Groups Projects
Commit a572d1f0 authored by Georgiy Faikin's avatar Georgiy Faikin
Browse files

Add new file and new mechanic for initial value of carbon pools, special case...

Add new file and new mechanic for initial value of carbon pools, special case for environment_data_type = station.
parent c1da0927
Branches
Tags
No related merge requests found
...@@ -46,7 +46,7 @@ gfortran $keys_compile -c source/config.f90 -o bin/config.o -Jbin ...@@ -46,7 +46,7 @@ gfortran $keys_compile -c source/config.f90 -o bin/config.o -Jbin
gfortran $keys_compile -c source/netcdf_kit.f90 -o bin/netcdf_kit.o -Jbin gfortran $keys_compile -c source/netcdf_kit.f90 -o bin/netcdf_kit.o -Jbin
gfortran $keys_compile -c source/datetime.f90 -o bin/datetime.o -Jbin gfortran $keys_compile -c source/datetime.f90 -o bin/datetime.o -Jbin
gfortran $keys_compile -c source/grid.f90 -o bin/grid.o -Jbin gfortran $keys_compile -c source/grid.f90 -o bin/grid.o -Jbin
#gfortran $keys_compile -c source/carbon_pools.f90 -o bin/carbon_pools.o -Jbin gfortran $keys_compile -c source/carbon_pools.f90 -o bin/carbon_pools.o -Jbin
gfortran $keys_compile -c source/environment/environment_core.f90 -o bin/environment_core.o -Jbin gfortran $keys_compile -c source/environment/environment_core.f90 -o bin/environment_core.o -Jbin
gfortran $keys_compile -c source/environment/environment_data_generator.f90 -o bin/environment_data_generator.o -Jbin gfortran $keys_compile -c source/environment/environment_data_generator.f90 -o bin/environment_data_generator.o -Jbin
gfortran $keys_compile -c source/environment/environment_data_station.f90 -o bin/environment_data_station.o -Jbin gfortran $keys_compile -c source/environment/environment_data_station.f90 -o bin/environment_data_station.o -Jbin
......
!" Настройки данных для carbon_pools
!"
!" (технически представляет собой fortran-namelist)
&carbon_pools_config_namelist
! Имя пула и его содержание
! -----------------------------------------------------------------
! Initial value
! RothC
CDPM_in = 0.
CRPM_in = 0.
CBIO_in = 0.
CHUM_in = 0.
CIOM_in = 0.
! INMCM
Csoil_in = 0.
Csoilb_in = 0.
! SOCS
C_s1_in = 0.
C_s2_in = 0.
! -----------------------------------------------------------------
/
...@@ -7,6 +7,7 @@ module carbon_model_inmcm ...@@ -7,6 +7,7 @@ module carbon_model_inmcm
use carbon_model_to_core, only : set_tiles, set_pool, set_flux, set_mult use carbon_model_to_core, only : set_tiles, set_pool, set_flux, set_mult
use carbon_model_inmcm_aux use carbon_model_inmcm_aux
use carbon_pools, only : Csoil_iv, Csoilb_iv
implicit none implicit none
...@@ -23,8 +24,7 @@ contains ...@@ -23,8 +24,7 @@ contains
subroutine carbon_model_assembly() subroutine carbon_model_assembly()
use environment_model_inmcm, only : nv2, vegg_nv2 use environment_model_inmcm, only : nv2, vegg_nv2
!use environment_core, only : Tsoil use const, only : umol2kg
use const, only : yrs, umol2kg
use grid, only : ms use grid, only : ms
integer :: n_Catm, n_Cveg, n_Csoil, n_Csoilb !< id пулов integer :: n_Catm, n_Cveg, n_Csoil, n_Csoilb !< id пулов
...@@ -34,23 +34,9 @@ contains ...@@ -34,23 +34,9 @@ contains
call set_pool(pid = n_Catm, name = 'catm' ) call set_pool(pid = n_Catm, name = 'catm' )
call set_pool(pid = n_Cveg, name = 'cveg' , alias = Cveg ) call set_pool(pid = n_Cveg, name = 'cveg' , alias = Cveg )
call set_pool(pid = n_Csoil, name = 'csoil' ,initial_value = 8.730624, alias = Csoil ) call set_pool(pid = n_Csoil, name = 'csoil' ,initial_value = Csoil_iv, alias = Csoil )
call set_pool(pid = n_Csoilb, name = 'csoilb' ,initial_value = 0.178176, alias = Csoilb ) call set_pool(pid = n_Csoilb, name = 'csoilb' ,initial_value = Csoilb_iv, alias = Csoilb )
! station: opt: С1: С2:
! ROST 1 8.730624 0.178176
! VLDR 1 1.61406 0.03294
! TRGK 1 3.10072 0.06328
! 2 2.7901482 0.0569418
! 3 2.93608 0.05992
! DAO3 1 2.78124 0.05676
! 2 2.806524 0.057276
! 3 2.983512 0.060888
! 4 2.941372 0.060028
! DAO4 1 3.037706 0.061994
! 2 3.173926 0.064774
! 3 3.160304 0.064496
! 4 2.983218 0.060882
call set_flux(fid = n_F, pid_out = n_Csoil, pid_in = n_Catm, name = 'fmicr', alias = Fmicr) call set_flux(fid = n_F, pid_out = n_Csoil, pid_in = n_Catm, name = 'fmicr', alias = Fmicr)
call set_mult(n_F, 'lin', x_ijn = Csoil) call set_mult(n_F, 'lin', x_ijn = Csoil)
......
...@@ -2,6 +2,7 @@ module carbon_model_rothc ...@@ -2,6 +2,7 @@ module carbon_model_rothc
use carbon_model_to_core, only : set_tiles, set_pool, set_flux, set_mult use carbon_model_to_core, only : set_tiles, set_pool, set_flux, set_mult
use carbon_model_rothc_aux use carbon_model_rothc_aux
use carbon_pools, only : CDPM_iv, CRPM_iv, CBIO_iv, CHUM_iv, CIOM_iv
implicit none implicit none
...@@ -20,11 +21,11 @@ module carbon_model_rothc ...@@ -20,11 +21,11 @@ module carbon_model_rothc
call set_pool(pid = n_Catm, name = 'catm') call set_pool(pid = n_Catm, name = 'catm')
call set_pool(pid = n_Cveg, name = 'cveg') call set_pool(pid = n_Cveg, name = 'cveg')
call set_pool(pid = n_CDPM, name = 'CDPM', initial_value = 0.01944, alias = CDPM) call set_pool(pid = n_CDPM, name = 'CDPM', initial_value = CDPM_iv, alias = CDPM)
call set_pool(pid = n_CRPM, name = 'CRPM', initial_value = 1.73544, alias = CRPM) call set_pool(pid = n_CRPM, name = 'CRPM', initial_value = CRPM_iv, alias = CRPM)
call set_pool(pid = n_CBIO, name = 'CBIO', initial_value = 0.06188, alias = CBIO) call set_pool(pid = n_CBIO, name = 'CBIO', initial_value = CBIO_iv, alias = CBIO)
call set_pool(pid = n_CHUM, name = 'CHUM', initial_value = 1.0416, alias = CHUM) call set_pool(pid = n_CHUM, name = 'CHUM', initial_value = CHUM_iv, alias = CHUM)
call set_pool(pid = n_CIOM, name = 'CIOM', initial_value = 0.245, alias = CIOM) call set_pool(pid = n_CIOM, name = 'CIOM', initial_value = CIOM_iv, alias = CIOM)
! station: opt: CDPM: CRPM: CBIO: CHUM: CIOM: ! station: opt: CDPM: CRPM: CBIO: CHUM: CIOM:
! DAO4 1 0.01944 1.73544 0.06188 1.0416 0.245 ! DAO4 1 0.01944 1.73544 0.06188 1.0416 0.245
......
...@@ -7,6 +7,7 @@ module carbon_model_socs ...@@ -7,6 +7,7 @@ module carbon_model_socs
use carbon_model_to_core, only : set_tiles, set_pool, set_flux, set_mult use carbon_model_to_core, only : set_tiles, set_pool, set_flux, set_mult
use carbon_model_socs_aux use carbon_model_socs_aux
use carbon_pools, only : C_s1_iv, C_s2_iv
implicit none implicit none
...@@ -25,23 +26,8 @@ module carbon_model_socs ...@@ -25,23 +26,8 @@ module carbon_model_socs
call set_pool(pid = n_Catm, name = 'catm') call set_pool(pid = n_Catm, name = 'catm')
call set_pool(pid = n_Cveg, name = 'cveg') call set_pool(pid = n_Cveg, name = 'cveg')
call set_pool(pid = n_Csoil1, name = 'csoil1',initial_value = 0.060028, alias = C1) call set_pool(pid = n_Csoil1, name = 'csoil1',initial_value = C_s1_iv, alias = C1)
call set_pool(pid = n_Csoil2, name = 'csoil2',initial_value = 2.941372, alias = C2) call set_pool(pid = n_Csoil2, name = 'csoil2',initial_value = C_s2_iv, alias = C2)
! station: opt: С1: С2:
! DAO4 1 0.061994 3.037706
! 2 0.064774 3.173926
! 3 0.064496 3.160304
! 4 0.060882 2.983218
! DAO3 1 0.05676 2.78124
! 2 0.057276 2.806524
! 3 0.060888 2.983512
! 4 0.060028 2.941372
! TRGK 1 0.0619416 3.0351384
! 2 0.0569418 2.7901482
! 3 0.0619416 3.0351384
! VLDR 1 0.0338432 1.6583168
! ROST 1 0.178176 8.730624
call set_flux(fid = n_F, pid_out = n_Cveg, pid_in = n_Csoil1, name = 'litterfall') call set_flux(fid = n_F, pid_out = n_Cveg, pid_in = n_Csoil1, name = 'litterfall')
......
module carbon_pools
! интерфейс
! ---------------------------------------------------------------------------------
implicit none
public
private :: pools_init
! переменные
! ---------------------------------------------------------------------------------
! Начальные значения пулов:
real :: CDPM_iv
real :: CRPM_iv
real :: CBIO_iv
real :: CHUM_iv
real :: CIOM_iv
real :: Csoil_iv
real :: Csoilb_iv
real :: C_s1_iv
real :: C_s2_iv
contains
! внешние процедуры
! ---------------------------------------------------------------------------------
subroutine carbon_pools_init()
! ---------------------------------------
call pools_init()
end subroutine
! внутренние процедуры
! ---------------------------------------------------------------------------------
subroutine pools_init()
! ---------------------------------------
!< @brief начальные значения пулов
use config, only : environment_data_type, &
station_name, &
station_opt, &
& CDPM_in, &
& CRPM_in, &
& CBIO_in, &
& CHUM_in, &
& CIOM_in, &
& Csoil_in, &
& Csoilb_in, &
& C_s1_in, &
& C_s2_in, &
& CDPM_st_in, &
& CRPM_st_in, &
& CBIO_st_in, &
& CHUM_st_in, &
& CIOM_st_in, &
& Csoil_st_in, &
& Csoilb_st_in, &
& C_s1_st_in, &
& C_s2_st_in
! ---------------------------------------
CDPM_iv = CDPM_in
CRPM_iv = CRPM_in
CBIO_iv = CBIO_in
CHUM_iv = CHUM_in
CIOM_iv = CIOM_in
C_s1_iv = C_s1_in
C_s2_iv = C_s2_in
Csoil_iv = Csoil_in
Csoilb_iv = Csoilb_in
if (environment_data_type == 'station') then
select case(station_name)
case('DAO4')
select case(station_opt)
case('1')
CDPM_iv = CDPM_st_in(1,1)
CRPM_iv = CRPM_st_in(1,1)
CBIO_iv = CBIO_st_in(1,1)
CHUM_iv = CHUM_st_in(1,1)
CIOM_iv = CIOM_st_in(1,1)
C_s1_iv = C_s1_st_in(1,1)
C_s2_iv = C_s2_st_in(1,1)
Csoil_iv = Csoil_st_in (1,1)
Csoilb_iv = Csoilb_st_in(1,1)
case('2')
CDPM_iv = CDPM_st_in(1,2)
CRPM_iv = CRPM_st_in(1,2)
CBIO_iv = CBIO_st_in(1,2)
CHUM_iv = CHUM_st_in(1,2)
CIOM_iv = CIOM_st_in(1,2)
C_s1_iv = C_s1_st_in(1,2)
C_s2_iv = C_s2_st_in(1,2)
Csoil_iv = Csoil_st_in (1,2)
Csoilb_iv = Csoilb_st_in (1,2)
case('3')
CDPM_iv = CDPM_st_in(1,3)
CRPM_iv = CRPM_st_in(1,3)
CBIO_iv = CBIO_st_in(1,3)
CHUM_iv = CHUM_st_in(1,3)
CIOM_iv = CIOM_st_in(1,3)
C_s1_iv = C_s1_st_in(1,3)
C_s2_iv = C_s2_st_in(1,3)
Csoil_iv = Csoil_st_in (1,3)
Csoilb_iv = Csoilb_st_in (1,3)
case('4')
CDPM_iv = CDPM_st_in(1,4)
CRPM_iv = CRPM_st_in(1,4)
CBIO_iv = CBIO_st_in(1,4)
CHUM_iv = CHUM_st_in(1,4)
CIOM_iv = CIOM_st_in(1,4)
C_s1_iv = C_s1_st_in(1,4)
C_s2_iv = C_s2_st_in(1,4)
Csoil_iv = Csoil_st_in (1,4)
Csoilb_iv = Csoilb_st_in (1,4)
end select
case('DAO3')
select case(station_opt)
case('1')
CDPM_iv = CDPM_st_in(2,1)
CRPM_iv = CRPM_st_in(2,1)
CBIO_iv = CBIO_st_in(2,1)
CHUM_iv = CHUM_st_in(2,1)
CIOM_iv = CIOM_st_in(2,1)
C_s1_iv = C_s1_st_in(2,1)
C_s2_iv = C_s2_st_in(2,1)
Csoil_iv = Csoil_st_in (2,1)
Csoilb_iv = Csoilb_st_in (2,1)
case('2')
CDPM_iv = CDPM_st_in(2,2)
CRPM_iv = CRPM_st_in(2,2)
CBIO_iv = CBIO_st_in(2,2)
CHUM_iv = CHUM_st_in(2,2)
CIOM_iv = CIOM_st_in(2,2)
C_s1_iv = C_s1_st_in(2,2)
C_s2_iv = C_s2_st_in(2,2)
Csoil_iv = Csoil_st_in (2,2)
Csoilb_iv = Csoilb_st_in (2,2)
case('3')
CDPM_iv = CDPM_st_in(2,3)
CRPM_iv = CRPM_st_in(2,3)
CBIO_iv = CBIO_st_in(2,3)
CHUM_iv = CHUM_st_in(2,3)
CIOM_iv = CIOM_st_in(2,3)
C_s1_iv = C_s1_st_in(2,3)
C_s2_iv = C_s2_st_in(2,3)
Csoil_iv = Csoil_st_in (2,3)
Csoilb_iv = Csoilb_st_in (2,3)
case('4')
CDPM_iv = CDPM_st_in(2,4)
CRPM_iv = CRPM_st_in(2,4)
CBIO_iv = CBIO_st_in(2,4)
CHUM_iv = CHUM_st_in(2,4)
CIOM_iv = CIOM_st_in(2,4)
C_s1_iv = C_s1_st_in(2,4)
C_s2_iv = C_s2_st_in(2,4)
Csoil_iv = Csoil_st_in (2,4)
Csoilb_iv = Csoilb_st_in (2,4)
end select
case('TRGK')
select case(station_opt)
case('1')
CDPM_iv = CDPM_st_in(3,1)
CRPM_iv = CRPM_st_in(3,1)
CBIO_iv = CBIO_st_in(3,1)
CHUM_iv = CHUM_st_in(3,1)
CIOM_iv = CIOM_st_in(3,1)
C_s1_iv = C_s1_st_in(3,1)
C_s2_iv = C_s2_st_in(3,1)
Csoil_iv = Csoil_st_in (3,1)
Csoilb_iv = Csoilb_st_in (3,1)
case('2')
CDPM_iv = CDPM_st_in(3,2)
CRPM_iv = CRPM_st_in(3,2)
CBIO_iv = CBIO_st_in(3,2)
CHUM_iv = CHUM_st_in(3,2)
CIOM_iv = CIOM_st_in(3,2)
C_s1_iv = C_s1_st_in(3,2)
C_s2_iv = C_s2_st_in(3,2)
Csoil_iv = Csoil_st_in (3,2)
Csoilb_iv = Csoilb_st_in (3,2)
case('3')
CDPM_iv = CDPM_st_in(3,3)
CRPM_iv = CRPM_st_in(3,3)
CBIO_iv = CBIO_st_in(3,3)
CHUM_iv = CHUM_st_in(3,3)
CIOM_iv = CIOM_st_in(3,3)
C_s1_iv = C_s1_st_in(3,3)
C_s2_iv = C_s2_st_in(3,3)
Csoil_iv = Csoil_st_in (3,3)
Csoilb_iv = Csoilb_st_in (3,3)
case('4')
CDPM_iv = CDPM_st_in(3,4)
CRPM_iv = CRPM_st_in(3,4)
CBIO_iv = CBIO_st_in(3,4)
CHUM_iv = CHUM_st_in(3,4)
CIOM_iv = CIOM_st_in(3,4)
C_s1_iv = C_s1_st_in(3,4)
C_s2_iv = C_s2_st_in(3,4)
Csoil_iv = Csoil_st_in (3,4)
Csoilb_iv = Csoilb_st_in (3,4)
end select
case('VLDMR')
select case(station_opt)
case('1')
CDPM_iv = CDPM_st_in(4,1)
CRPM_iv = CRPM_st_in(4,1)
CBIO_iv = CBIO_st_in(4,1)
CHUM_iv = CHUM_st_in(4,1)
CIOM_iv = CIOM_st_in(4,1)
C_s1_iv = C_s1_st_in(4,1)
C_s2_iv = C_s2_st_in(4,1)
Csoil_iv = Csoil_st_in (4,1)
Csoilb_iv = Csoilb_st_in (4,1)
case('2')
CDPM_iv = CDPM_st_in(4,2)
CRPM_iv = CRPM_st_in(4,2)
CBIO_iv = CBIO_st_in(4,2)
CHUM_iv = CHUM_st_in(4,2)
CIOM_iv = CIOM_st_in(4,2)
C_s1_iv = C_s1_st_in(4,2)
C_s2_iv = C_s2_st_in(4,2)
Csoil_iv = Csoil_st_in (4,2)
Csoilb_iv = Csoilb_st_in (4,2)
case('3')
CDPM_iv = CDPM_st_in(4,3)
CRPM_iv = CRPM_st_in(4,3)
CBIO_iv = CBIO_st_in(4,3)
CHUM_iv = CHUM_st_in(4,3)
CIOM_iv = CIOM_st_in(4,3)
C_s1_iv = C_s1_st_in(4,3)
C_s2_iv = C_s2_st_in(4,3)
Csoil_iv = Csoil_st_in (4,3)
Csoilb_iv = Csoilb_st_in (4,3)
case('4')
CDPM_iv = CDPM_st_in(4,4)
CRPM_iv = CRPM_st_in(4,4)
CBIO_iv = CBIO_st_in(4,4)
CHUM_iv = CHUM_st_in(4,4)
CIOM_iv = CIOM_st_in(4,4)
C_s1_iv = C_s1_st_in(4,4)
C_s2_iv = C_s2_st_in(4,4)
Csoil_iv = Csoil_st_in (4,4)
Csoilb_iv = Csoilb_st_in (4,4)
end select
case('Rostov')
select case(station_opt)
case('1')
CDPM_iv = CDPM_st_in(5,1)
CRPM_iv = CRPM_st_in(5,1)
CBIO_iv = CBIO_st_in(5,1)
CHUM_iv = CHUM_st_in(5,1)
CIOM_iv = CIOM_st_in(5,1)
C_s1_iv = C_s1_st_in(5,1)
C_s2_iv = C_s2_st_in(5,1)
Csoil_iv = Csoil_st_in (5,1)
Csoilb_iv = Csoilb_st_in (5,1)
case('2')
CDPM_iv = CDPM_st_in(5,2)
CRPM_iv = CRPM_st_in(5,2)
CBIO_iv = CBIO_st_in(5,2)
CHUM_iv = CHUM_st_in(5,2)
CIOM_iv = CIOM_st_in(5,2)
C_s1_iv = C_s1_st_in(5,2)
C_s2_iv = C_s2_st_in(5,2)
Csoil_iv = Csoil_st_in (5,2)
Csoilb_iv = Csoilb_st_in (5,2)
case('3')
CDPM_iv = CDPM_st_in(5,3)
CRPM_iv = CRPM_st_in(5,3)
CBIO_iv = CBIO_st_in(5,3)
CHUM_iv = CHUM_st_in(5,3)
CIOM_iv = CIOM_st_in(5,3)
C_s1_iv = C_s1_st_in(5,3)
C_s2_iv = C_s2_st_in(5,3)
Csoil_iv = Csoil_st_in (5,3)
Csoilb_iv = Csoilb_st_in (5,3)
case('4')
CDPM_iv = CDPM_st_in(5,4)
CRPM_iv = CRPM_st_in(5,4)
CBIO_iv = CBIO_st_in(5,4)
CHUM_iv = CHUM_st_in(5,4)
CIOM_iv = CIOM_st_in(5,4)
C_s1_iv = C_s1_st_in(5,4)
C_s2_iv = C_s2_st_in(5,4)
Csoil_iv = Csoil_st_in (5,4)
Csoilb_iv = Csoilb_st_in (5,4)
end select
end select
end if
end subroutine
end module
...@@ -57,26 +57,36 @@ module config ...@@ -57,26 +57,36 @@ module config
character(len_default) :: datetime_init_5 character(len_default) :: datetime_init_5
character(len_default) :: datetime_last_5 character(len_default) :: datetime_last_5
real :: CDPM_st_in(4) real :: CDPM_in
real :: CRPM_st_in(4) real :: CRPM_in
real :: CBIO_st_in(4) real :: CBIO_in
real :: CHUM_st_in(4) real :: CHUM_in
real :: CIOM_st_in(4) real :: CIOM_in
real :: C_i1_st_in(4) real :: Csoil_in
real :: C_i2_st_in(4) real :: Csoilb_in
real :: C_s1_st_in(4) real :: C_s1_in
real :: C_s2_st_in(4) real :: C_s2_in
real :: CDPM_st_in(5,4)
real :: CRPM_st_in(5,4)
real :: CBIO_st_in(5,4)
real :: CHUM_st_in(5,4)
real :: CIOM_st_in(5,4)
real :: Csoil_st_in(5,4)
real :: Csoilb_st_in(5,4)
real :: C_s1_st_in(5,4)
real :: C_s2_st_in(5,4)
namelist /carbon_pools_config_namelist/ & namelist /carbon_pools_config_namelist/ &
& CDPM_st_in, & & CDPM_in, &
& CRPM_st_in, & & CRPM_in, &
& CBIO_st_in, & & CBIO_in, &
& CHUM_st_in, & & CHUM_in, &
& CIOM_st_in, & & CIOM_in, &
& C_i1_st_in, & & Csoil_in, &
& C_i2_st_in, & & Csoilb_in, &
& C_s1_st_in, & & C_s1_in, &
& C_s2_st_in & C_s2_in
namelist /config_namelist/ & namelist /config_namelist/ &
...@@ -125,12 +135,11 @@ module config ...@@ -125,12 +135,11 @@ module config
& CBIO_st_in, & & CBIO_st_in, &
& CHUM_st_in, & & CHUM_st_in, &
& CIOM_st_in, & & CIOM_st_in, &
& C_i1_st_in, & & Csoil_st_in, &
& C_i2_st_in, & & Csoilb_st_in, &
& C_s1_st_in, & & C_s1_st_in, &
& C_s2_st_in & C_s2_st_in
type namespace_type type namespace_type
character(len_default) :: lon character(len_default) :: lon
character(len_default) :: lat character(len_default) :: lat
...@@ -169,9 +178,9 @@ module config ...@@ -169,9 +178,9 @@ module config
read(10, nml = station_config_namelist) read(10, nml = station_config_namelist)
close(10) close(10)
!open(10, file = 'carbon_pools.nml', status = 'old', action = 'read') open(10, file = 'carbon_pools_config.nml', status = 'old', action = 'read')
!read(10, nml = carbon_pools_config_namelist) read(10, nml = carbon_pools_config_namelist)
!close(10) close(10)
select case (lsm_dataformat) select case (lsm_dataformat)
case('inmcm') case('inmcm')
......
...@@ -7,6 +7,7 @@ program main ...@@ -7,6 +7,7 @@ program main
use grid, only : grid_init, & use grid, only : grid_init, &
& i0, i1, j0, j1, ntime, ii, jj, tt, nn, mask, date_c, dt, & & i0, i1, j0, j1, ntime, ii, jj, tt, nn, mask, date_c, dt, &
& dlon, dlat, dlon_nc, dlat_nc, dt_nc, date_fst, date_lst, ncell_tot, ncell_mask & dlon, dlat, dlon_nc, dlat_nc, dt_nc, date_fst, date_lst, ncell_tot, ncell_mask
use carbon_pools, only: carbon_pools_init
use environment, only : environment_init, & use environment, only : environment_init, &
& environment_calc_at_timestep, & & environment_calc_at_timestep, &
& environment_calc_at_cell, & & environment_calc_at_cell, &
...@@ -32,6 +33,8 @@ program main ...@@ -32,6 +33,8 @@ program main
call grid_init() call grid_init()
call carbon_pools_init()
print* print*
print('(1x,a,1x,10x,1x,a)'), 'модель углеродного цикла ', trim(carbon_model_type) print('(1x,a,1x,10x,1x,a)'), 'модель углеродного цикла ', trim(carbon_model_type)
print('(1x,a,1x,10x,1x,a)'), 'данные об окружающей среде ', trim(environment_data_type) print('(1x,a,1x,10x,1x,a)'), 'данные об окружающей среде ', trim(environment_data_type)
......
...@@ -15,95 +15,95 @@ ...@@ -15,95 +15,95 @@
datetime_last_1 = '2012-01-01 00:00:00' datetime_last_1 = '2012-01-01 00:00:00'
!> Initial value !> Initial value
! Rothc ! RothC
! opt 1 2 3 4 ! opt 1 2 3 4
CDPM_st_in(:) = 0.01944, 0.02037, 0.02037, 0.0192 CDPM_st_in(1,:) = 0.01944, 0.02037, 0.02037, 0.0192
CRPM_st_in(:) = 1.73544, 1.75515, 1.75515, 1.73087 CRPM_st_in(1,:) = 1.73544, 1.75515, 1.75515, 1.73087
CBIO_st_in(:) = 0.06188, 0.06464, 0.06464, 0.0612 CBIO_st_in(1,:) = 0.06188, 0.06464, 0.06464, 0.0612
CHUM_st_in(:) = 1.0416, 1.14567, 1.14567, 1.01558 CHUM_st_in(1,:) = 1.0416 , 1.14567, 1.14567, 1.01558
CIOM_st_in(:) = 0.245, 0.257, 0.257, 0.24 CIOM_st_in(1,:) = 0.245 , 0.257 , 0.257 , 0.24
! INMCM ! INMCM
C_i1_st_in(:) = 0.061994, 0.064774, 0.064496, 0.060882 Csoil_st_in(1,:) = 0.061994, 0.064774, 0.064496, 0.060882
C_i2_st_in(:) = 3.037706, 3.173926, 3.160304, 2.983218 Csoilb_st_in(1,:) = 3.037706, 3.173926, 3.160304, 2.983218
! Socs ! SOCS
C_s1_st_in(:) = 3.037706, 3.173926, 3.160304, 2.983218 C_s1_st_in(1,:) = 3.037706, 3.173926, 3.160304, 2.983218
C_s2_st_in(:) = 0.061994, 0.064774, 0.064496, 0.060882 C_s2_st_in(1,:) = 0.061994, 0.064774, 0.064496, 0.060882
!> station_name = 'DAO3': !> station_name = 'DAO3':
datetime_init_2 = '1937-01-01 00:00:00' datetime_init_2 = '1937-01-01 00:00:00'
datetime_last_2 = '2012-01-01 00:00:00' datetime_last_2 = '2012-01-01 00:00:00'
!> Initial value !> Initial value
! Rothc ! RothC
! opt 1 2 3 4 ! opt 1 2 3 4
CDPM_st_in(:) = 0.01792, 0.01792, 0.01804, 0.01792 CDPM_st_in(2,:) = 0.01792, 0.01792, 0.01804, 0.01792
CRPM_st_in(:) = 1.10183, 1.10183, 1.10426, 1.10183 CRPM_st_in(2,:) = 1.10183, 1.10183, 1.10426, 1.10183
CBIO_st_in(:) = 0.05705, 0.05705, 0.05741, 0.05705 CBIO_st_in(2,:) = 0.05705, 0.05705, 0.05741, 0.05705
CHUM_st_in(:) = 1.45947, 1.45947, 1.47248, 1.45947 CHUM_st_in(2,:) = 1.45947, 1.45947, 1.47248, 1.45947
CIOM_st_in(:) = 0.221, 0.224, 0.225, 0.223 CIOM_st_in(2,:) = 0.221 , 0.224 , 0.225 , 0.223
! INMCM ! INMCM
C_i1_st_in(:) = 0.05676, 0.057276, 0.060888, 0.060028 Csoil_st_in(2,:) = 0.05676, 0.057276, 0.060888, 0.060028
C_i2_st_in(:) = 2.78124, 2.806524, 2.983512, 2.941372 Csoilb_st_in(2,:) = 2.78124, 2.806524, 2.983512, 2.941372
! Socs ! SOCS
C_s1_st_in(:) = 2.78124, 2.806524, 2.983512, 2.941372 C_s1_st_in(2,:) = 2.78124, 2.806524, 2.983512, 2.941372
C_s2_st_in(:) = 0.05676, 0.057276, 0.060888, 0.060028 C_s2_st_in(2,:) = 0.05676, 0.057276, 0.060888, 0.060028
!> station_name = 'TRGK': !> station_name = 'TRGK':
datetime_init_3 = '1956-01-01 00:00:00' datetime_init_3 = '1956-01-01 00:00:00'
datetime_last_3 = '2018-01-01 00:00:00' datetime_last_3 = '2018-01-01 00:00:00'
!> Initial value !> Initial value
! Rothc ! RothC
! opt 1 2 3 ! opt 1 2 3
CDPM_st_in(:) = 0.02132, 0.0196, 0.02132 CDPM_st_in(3,:) = 0.02132, 0.0196, 0.02132
CRPM_st_in(:) = 1.12986, 1.08615, 1.12986 CRPM_st_in(3,:) = 1.12986, 1.08615, 1.12986
CBIO_st_in(:) = 0.05946, 0.05455, 0.05946 CBIO_st_in(3,:) = 0.05946, 0.05455, 0.05946
CHUM_st_in(:) = 1.64844, 1.46279, 1.64844 CHUM_st_in(3,:) = 1.64844, 1.46279, 1.64844
CIOM_st_in(:) = 0.238, 0.224, 0.238 CIOM_st_in(3,:) = 0.238 , 0.224, 0.238
! INMCM ! INMCM
C_i1_st_in(:) = 0.0619416, 0.0569418, 0.0619416 Csoil_st_in(3,:) = 0.0619416, 0.0569418, 0.0619416
C_i2_st_in(:) = 3.0351384, 2.7901482, 3.0351384 Csoilb_st_in(3,:) = 3.0351384, 2.7901482, 3.0351384
! Socs ! SOCS
C_s1_st_in(:) = 3.10072, 2.7901482, 2.93608 C_s1_st_in(3,:) = 3.10072, 2.7901482, 2.93608
C_s2_st_in(:) = 0.06328, 0.0569418, 0.05992 C_s2_st_in(3,:) = 0.06328, 0.0569418, 0.05992
!> station_name = 'VLDR': !> station_name = 'VLDR':
datetime_init_4 = '1968-01-01 00:00:00' datetime_init_4 = '1968-01-01 00:00:00'
datetime_last_4 = '2018-01-01 00:00:00' datetime_last_4 = '2018-01-01 00:00:00'
!> Initial value !> Initial value
! Rothc ! RothC
! opt 1 2 3 ! opt 1 2 3
CDPM_st_in(:) = 0.00777, 0.00777, 0.00777 CDPM_st_in(4,:) = 0.00777, 0.00777, 0.00777
CRPM_st_in(:) = 1.38303, 1.38303, 1.38303 CRPM_st_in(4,:) = 1.38303, 1.38303, 1.38303
CBIO_st_in(:) = 0.03275, 0.03275, 0.03275 CBIO_st_in(4,:) = 0.03275, 0.03275, 0.03275
CHUM_st_in(:) = 0.14961, 1.14961, 1.14961 CHUM_st_in(4,:) = 0.14961, 1.14961, 1.14961
CIOM_st_in(:) = 0.119, 0.119, 0.119 CIOM_st_in(4,:) = 0.119 , 0.119, 0.119
! INMCM ! INMCM
C_i1_st_in(:) = 0.0338432, 0.0338432, 0.0338432 Csoil_st_in(4,:) = 0.0338432, 0.0338432, 0.0338432
C_i2_st_in(:) = 1.6583168, 1.6583168, 1.6583168 Csoilb_st_in(4,:) = 1.6583168, 1.6583168, 1.6583168
! Socs ! SOCS
C_s1_st_in(:) = 1.61406, 1.61406, 1.61406 C_s1_st_in(4,:) = 1.61406, 1.61406, 1.61406
C_s2_st_in(:) = 0.03294, 0.03294, 0.03294 C_s2_st_in(4,:) = 0.03294, 0.03294, 0.03294
!> station_name = 'Rostov': !> station_name = 'Rostov':
datetime_init_5 = '1975-01-01 00:00:00' datetime_init_5 = '1975-01-01 00:00:00'
datetime_last_5 = '2018-01-01 00:00:00' datetime_last_5 = '2018-01-01 00:00:00'
!> Initial value !> Initial value
! Rothc ! RothC
! opt 1 2 3 ! opt 1 2 3
CDPM_st_in(:) = 0.04936, 0.04936, 0.04936 CDPM_st_in(5,:) = 0.04936, 0.04936, 0.04936
CRPM_st_in(:) = 0.799, 0.799, 0.799 CRPM_st_in(5,:) = 0.799 , 0.799 , 0.799
CBIO_st_in(:) = 0.11873, 0.11873, 0.11873 CBIO_st_in(5,:) = 0.11873, 0.11873, 0.11873
CHUM_st_in(:) = 7.07025, 7.07025, 7.07025 CHUM_st_in(5,:) = 7.07025, 7.07025, 7.07025
CIOM_st_in(:) = 0.814, 0.814, 0.814 CIOM_st_in(5,:) = 0.814 , 0.814 , 0.814
! Socs ! SOCS
C_i1_st_in(:) = 0.178176, 0.178176, 0.178176 Csoil_st_in(5,:) = 0.178176, 0.178176, 0.178176
C_i2_st_in(:) = 8.730624, 8.730624, 8.730624 Csoilb_st_in(5,:) = 8.730624, 8.730624, 8.730624
! INMCM ! INMCM
C_s1_st_in(:) = 8.730624, 8.730624, 8.730624 C_s1_st_in(5,:) = 8.730624, 8.730624, 8.730624
C_s2_st_in(:) = 0.178176, 0.178176, 0.178176 C_s2_st_in(5,:) = 0.178176, 0.178176, 0.178176
! ----------------------------------------------------------------- ! -----------------------------------------------------------------
/ /
...@@ -33,7 +33,7 @@ ...@@ -33,7 +33,7 @@
! дополнительно для environment_data_type = 'station': ! дополнительно для environment_data_type = 'station':
!> Имя станции: !> Имя станции:
station_name = 'DAO4' station_name = 'DAO3'
! 'DAO4' - Долгопрудная опытная станция ДАОС 4 ! 'DAO4' - Долгопрудная опытная станция ДАОС 4
! 'DAO3' - Долгопрудная опытная станция ДАОС 3 ! 'DAO3' - Долгопрудная опытная станция ДАОС 3
! 'TRGK' - Федеральный научный центр любяных культур "Торжок" ! 'TRGK' - Федеральный научный центр любяных культур "Торжок"
...@@ -41,7 +41,7 @@ ...@@ -41,7 +41,7 @@
! 'Rostov' - Донской Федеральный аграрный научный центр (ФАНЦ) "Ростов" ! 'Rostov' - Донской Федеральный аграрный научный центр (ФАНЦ) "Ростов"
! !
!> Тип подачи удобрения: !> Тип подачи удобрения:
station_opt = '1' station_opt = '2'
! '1' - контрольный случай, без дополнительных удобрений ! '1' - контрольный случай, без дополнительных удобрений
! '2' - 2 способ подачи удобрений ! '2' - 2 способ подачи удобрений
! '3' - 3 способ подачи удобрений ! '3' - 3 способ подачи удобрений
...@@ -114,7 +114,7 @@ ...@@ -114,7 +114,7 @@
! 'ntime' - указанное число шагов ! 'ntime' - указанное число шагов
ntime = 1000 ntime = 1000
! 'datetime_last' - до достижения указанной даты ! 'datetime_last' - до достижения указанной даты
datetime_last = '2012-01-01 00:00:00' datetime_last = '1976-01-01 00:00:00'
!Номер станции наблюдения за климатом !Номер станции наблюдения за климатом
!DAO4 DAO3 TRGK VLDR ROST !DAO4 DAO3 TRGK VLDR ROST
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment