crop Module


Uses

  • module~~crop~~UsesGraph module~crop crop module~utilities utilities module~crop->module~utilities

Used by

  • module~~crop~~UsedByGraph module~crop crop proc~hydrotope_process hydrotope_process proc~hydrotope_process->module~crop proc~initialise initialise proc~initialise->module~crop proc~print_module_parameters print_module_parameters proc~print_module_parameters->module~crop proc~runsubbasin runsubbasin proc~runsubbasin->module~crop proc~terminate terminate proc~terminate->module~crop proc~time_finish_year time_finish_year proc~time_finish_year->module~crop proc~time_initialise_year time_initialise_year proc~time_initialise_year->module~crop proc~time_process_day time_process_day proc~time_process_day->module~crop proc~time_process_month time_process_month proc~time_process_month->module~crop

Variables

Type Visibility Attributes Name Initial
real(kind=dp), public, save :: actual
real(kind=dp), public, save, dimension(:, :, :), allocatable :: aryld
real(kind=dp), public, save, dimension(:, :), allocatable :: arylda
real(kind=dp), public, save, dimension(:), allocatable :: aryldc
integer, public, save, dimension(:, :), allocatable :: aryldrot
real(kind=dp), public, save, dimension(:, :), allocatable :: arylds
real(kind=dp), public, save, dimension(:, :, :), allocatable :: avyld
real(kind=dp), public, save, dimension(:, :), allocatable :: avylda
real(kind=dp), public, save, dimension(:), allocatable :: avyldc
integer, public, save, dimension(:, :), allocatable :: avyldrot
real(kind=dp), public, save, dimension(:, :), allocatable :: avylds
real(kind=dp), public, save, dimension(:), allocatable :: be
character(len=4), public, save, dimension(:), allocatable :: cnam
real(kind=dp), public, save :: cnum2 = 1.
real(kind=dp), public, save, dimension(:), allocatable :: cnyld
real(kind=dp), public, save, dimension(:), allocatable :: cpyld
character(len=path_max_length), public :: crop_input_file = "crop.csv"
integer, public :: crop_input_file_id
character(len=path_max_length), public :: crop_management_input_file = "crop_management.csv"
integer, public :: crop_management_input_file_id
integer, public :: crop_yield_output_id = 0
integer, public, save :: cur_nop = 0
real(kind=dp), public, save, dimension(:, :), allocatable :: cva
real(kind=dp), public, save :: dlp1 = 0
real(kind=dp), public, save :: dlp2 = 0
real(kind=dp), public, save, dimension(:), allocatable :: fen
real(kind=dp), public, save, dimension(:), allocatable :: feno
real(kind=dp), public, save, dimension(:), allocatable :: fep
real(kind=dp), public, save, dimension(:, :, :), allocatable :: fon
real(kind=dp), public, save, dimension(:, :, :), allocatable :: fop
real(kind=dp), public, save, dimension(:), allocatable :: hi
real(kind=dp), public, save, dimension(:, :), allocatable :: hia
real(kind=dp), public, save, dimension(:, :), allocatable :: hiad
real(kind=dp), public, save, dimension(:, :), allocatable :: huharv
integer, public, save, dimension(:), allocatable :: hun
integer, public :: icc = 51
integer, public, save, dimension(:, :), allocatable :: iccup
integer, public, save, dimension(:), allocatable :: icnum
integer, public, save :: icrop = 1
integer, public, save :: idayx = -99
integer, public, save, dimension(:), allocatable :: idfe
integer, public, save :: idlef
integer, public, save, dimension(:), allocatable :: idop
integer, public, save, dimension(:, :), allocatable :: igro
integer, public, save, dimension(:), allocatable :: ihydFert
integer, public, save, dimension(:), allocatable :: ihydRot
integer, public, save, dimension(:), allocatable :: ihydRotCrp
integer, public, save, dimension(:), allocatable :: iopc
integer, public :: ipo = 20
integer, public, save, dimension(:, :), allocatable :: irotup
integer, public :: isba = 22
integer, public, save :: istyr
integer, public :: iwb = 36
integer, public :: iwr = 42
integer, public :: iww = 45
integer, public, save :: iyrrot = 0
integer, public, save, dimension(4) :: k1 = (/9, 98, 915, 92/)
integer, public, save, dimension(4) :: k6 = (/51, 78, 648, 0/)
integer, public, save, dimension(4) :: k8 = (/20, 90, 215, 31/)
integer, public, save, dimension(4) :: k9 = (/320, 73, 631, 49/)
character(len=path_max_length), public, save :: landmgtdat = 'landmgt.csv'
integer, public, save :: mcrdb = 0
integer, public :: mfe = 7
real(kind=dp), public, save, dimension(:, :), allocatable :: mgt_fen
real(kind=dp), public, save, dimension(:, :), allocatable :: mgt_feno
real(kind=dp), public, save, dimension(:, :), allocatable :: mgt_fep
integer, public, save, dimension(:), allocatable :: mgt_id
integer, public, save, dimension(:, :), allocatable :: mgt_idfe
integer, public, save, dimension(:, :), allocatable :: mgt_idop
integer, public, save, dimension(:, :), allocatable :: mgt_iopc
integer, public, save, dimension(:), allocatable :: mgt_lu_id
integer, public, save, dimension(:, :), allocatable :: mgt_ncrp
integer, public, save, dimension(:), allocatable :: mgt_nop
integer, public, save :: mgt_tot = 0
integer, public, save, dimension(:), allocatable :: mgt_yr
integer, public :: mop = 7
integer, public, save, dimension(:, :), allocatable :: nclc
integer, public, save, dimension(:), allocatable :: ncrp
integer, public, save :: ndgro
integer, public, save :: ndpri
integer, public :: nrotyrs = 3
integer, public, save, dimension(:, :), allocatable :: nucr
real(kind=dp), public, save, dimension(:), allocatable :: pt2
real(kind=dp), public, save, dimension(:), allocatable :: rdmx
real(kind=dp), public, save, dimension(:, :), allocatable :: rwt
real(kind=dp), public, save :: sdn = 0.
real(kind=dp), public, save :: sdp = 0.
real(kind=dp), public, save, dimension(:, :), allocatable :: snup
real(kind=dp), public, save, dimension(:, :), allocatable :: spup
real(kind=dp), public, save, dimension(:, :), allocatable :: swh
real(kind=dp), public, save, dimension(:, :), allocatable :: swp
real(kind=dp), public, save, dimension(:, :), allocatable :: yld
real(kind=dp), public, save, dimension(:, :), allocatable :: ylda

Subroutines

public subroutine crop_allocate(mb, mcrdb, meap, ms, nbyr)

Arguments

Type IntentOptional Attributes Name
integer, intent(in) :: mb
integer, intent(in) :: mcrdb
integer, intent(in) :: meap
integer, intent(in) :: ms
integer, intent(in) :: nbyr

public subroutine crop_deallocate()

Arguments

None

public subroutine crop_growth(avt, bSnowModule, flu, frar, ida, j, je, n, nn, nveg, pit, ra, tmit, tmn, tx, ylc, yls)

Arguments

Type IntentOptional Attributes Name
real(kind=dp), intent(in), dimension(:) :: avt
logical, intent(in) :: bSnowModule
real(kind=dp), intent(in), dimension(:) :: flu
real(kind=dp), intent(in), dimension(:, :) :: frar
integer, intent(in) :: ida
integer :: j
integer :: je
integer :: n
integer, intent(in) :: nn
integer, intent(in), dimension(:, :) :: nveg
real(kind=dp), intent(in) :: pit
real(kind=dp), intent(in), dimension(:) :: ra
real(kind=dp), intent(in) :: tmit
real(kind=dp), intent(in), dimension(:) :: tmn
real(kind=dp), intent(in), dimension(:) :: tx
real(kind=dp), intent(in), dimension(:) :: ylc
real(kind=dp), intent(in), dimension(:) :: yls

public subroutine crop_initialise(iyr, mb, meap, ms, nbyr)

Arguments

Type IntentOptional Attributes Name
integer, intent(in) :: iyr
integer, intent(in) :: mb
integer, intent(in) :: meap
integer, intent(in) :: ms
integer, intent(in) :: nbyr

public subroutine crop_initialise_hydrotope(nsub, nhru, iy, mstruc)

Author : stefan.liersch@pik-potsdam.de Date : 2009-11-25 modified: 2009-12-08

Read more…

Arguments

Type IntentOptional Attributes Name
integer, intent(in) :: nsub
integer, intent(in) :: nhru
integer, intent(in) :: iy
integer, intent(in), dimension(:, :, :) :: mstruc

public subroutine crop_operation(j, je, k, alai, dm, frar, g, ida, iy, olai, rd, rsd, ws)

Arguments

Type IntentOptional Attributes Name
integer :: j
integer :: je
integer :: k
real(kind=dp), intent(inout), dimension(:, :) :: alai
real(kind=dp), intent(inout), dimension(:, :) :: dm
real(kind=dp), intent(in), dimension(:, :) :: frar
real(kind=dp), intent(inout), dimension(:, :) :: g
integer, intent(in) :: ida
integer, intent(in) :: iy
real(kind=dp), intent(out), dimension(:, :) :: olai
real(kind=dp), intent(inout), dimension(:, :) :: rd
real(kind=dp), intent(inout), dimension(:, :, :) :: rsd
real(kind=dp), intent(inout), dimension(:, :) :: ws

public subroutine crop_process(j, je, k, n, wet, additionalGwUptake, avt, bWAM_Module, dart, daycounter, es, fc, flu, frar, humi, ida, iy, iyr, mstruc, nbyr, nn, nveg, pit, ra, sbar, sep, ste, tmn, tx, uap, ylc, yls, z, bSnowModule, tmit)

Arguments

Type IntentOptional Attributes Name
integer :: j
integer :: je
integer :: k
integer :: n
integer :: wet
real(kind=dp), intent(inout), dimension(:) :: additionalGwUptake
real(kind=dp), intent(in), dimension(:) :: avt
logical, intent(in) :: bWAM_Module
real(kind=dp), intent(in), dimension(:) :: dart
integer, intent(in) :: daycounter
real(kind=dp), intent(in) :: es
real(kind=dp), intent(in), dimension(:, :) :: fc
real(kind=dp), intent(in), dimension(:) :: flu
real(kind=dp), intent(in), dimension(:, :) :: frar
real(kind=dp), intent(in), dimension(:) :: humi
integer, intent(in) :: ida
integer, intent(in) :: iy
integer, intent(in) :: iyr
integer, intent(in), dimension(:, :, :) :: mstruc
integer, intent(in) :: nbyr
integer, intent(in) :: nn
integer, intent(in), dimension(:, :) :: nveg
real(kind=dp), intent(in) :: pit
real(kind=dp), intent(in), dimension(:) :: ra
real(kind=dp), intent(in), dimension(:) :: sbar
real(kind=dp), intent(inout) :: sep
real(kind=dp), intent(inout), dimension(:, :, :) :: ste
real(kind=dp), intent(in), dimension(:) :: tmn
real(kind=dp), intent(in), dimension(:) :: tx
real(kind=dp), intent(out) :: uap
real(kind=dp), intent(in), dimension(:) :: ylc
real(kind=dp), intent(in), dimension(:) :: yls
real(kind=dp), intent(in), dimension(:, :) :: z
logical, intent(in) :: bSnowModule
real(kind=dp), intent(in) :: tmit

public subroutine crop_read_input(bn1, bn2, bn3, bnu1, bnu2, bp1, bp2, bp3, bpu1, bpu2, cvm)

Arguments

Type IntentOptional Attributes Name
real(kind=dp), intent(inout), dimension(:) :: bn1
real(kind=dp), intent(inout), dimension(:) :: bn2
real(kind=dp), intent(inout), dimension(:) :: bn3
real(kind=dp), intent(inout), dimension(:) :: bnu1
real(kind=dp), intent(inout), dimension(:) :: bnu2
real(kind=dp), intent(inout), dimension(:) :: bp1
real(kind=dp), intent(inout), dimension(:) :: bp2
real(kind=dp), intent(inout), dimension(:) :: bp3
real(kind=dp), intent(inout), dimension(:) :: bpu1
real(kind=dp), intent(inout), dimension(:) :: bpu2
real(kind=dp), intent(inout), dimension(:) :: cvm

public subroutine crop_read_management_input()

Author : stefan.liersch@pik-potsdam.de Date : 2009-11-25 modified: 2009-12-08

Read more…

Arguments

None

public subroutine crop_yield_output(j, jek, k, ieap, ms, ndgro, tsav, wsav, ylda, is_cropland)

Arguments

Type IntentOptional Attributes Name
integer :: j
integer :: jek
integer :: k
integer, intent(inout) :: ieap
integer, intent(in) :: ms
integer, intent(in) :: ndgro
real(kind=dp), intent(inout), dimension(:, :) :: tsav
real(kind=dp), intent(inout), dimension(:, :) :: wsav
real(kind=dp), intent(in), dimension(:, :) :: ylda
logical, intent(in) :: is_cropland