PhotosynthesisMod Module



Variables

Type Visibility Attributes Name Initial
type(photo_params_type), protected :: params_inst

Derived Types

type, public ::  photosyns_type

Components

Type Visibility Attributes Name Initial
real(kind=r8), public, pointer :: rc13_canair_patch(:)
real(kind=r8), public, pointer :: rc13_psnsun_patch(:)
real(kind=r8), public, pointer :: rc13_psnsha_patch(:)
real(kind=r8), public, pointer :: psnsun_patch(:)
real(kind=r8), public, pointer :: psnsha_patch(:)
real(kind=r8), public, pointer :: c13_psnsun_patch(:)
real(kind=r8), public, pointer :: c13_psnsha_patch(:)
real(kind=r8), public, pointer :: c14_psnsun_patch(:)
real(kind=r8), public, pointer :: c14_psnsha_patch(:)
real(kind=r8), public, pointer :: fpsn_patch(:)
real(kind=r8), public, pointer :: lnca_patch(:)
real(kind=r8), public, pointer :: lmrsun_patch(:)
real(kind=r8), public, pointer :: lmrsha_patch(:)
real(kind=r8), public, pointer :: cisun_z_patch(:,:)
real(kind=r8), public, pointer :: cisha_z_patch(:,:)
real(kind=r8), public, pointer :: rssun_patch(:)
real(kind=r8), public, pointer :: rssha_patch(:)
real(kind=r8), public, pointer :: luvcmax25top_patch(:)
real(kind=r8), public, pointer :: lujmax25top_patch(:)
real(kind=r8), public, pointer :: lutpu25top_patch(:)
real(kind=r8), public, pointer :: vcmx25_z_patch(:,:)
real(kind=r8), public, pointer :: jmx25_z_patch(:,:)
real(kind=r8), public, pointer :: pnlc_z_patch(:,:)
real(kind=r8), public, pointer :: enzs_z_patch(:,:)
real(kind=r8), public, pointer :: fpsn24_patch(:)
logical, public :: rootstem_acc

Type-Bound Procedures

procedure, public :: Init
procedure, public :: Restart
procedure, public :: ReadNML
procedure, public :: ReadParams => readParams
procedure, public :: TimeStepInit
procedure, public :: NewPatchInit

Functions

public function plc(x, p, c, level, plc_method)

Arguments

Type IntentOptional Attributes Name
real(kind=r8), intent(in) :: x
integer, intent(in) :: p
integer, intent(in) :: c
integer, intent(in) :: level
integer, intent(in) :: plc_method

Return Value real(kind=r8)


Subroutines

public subroutine Photosynthesis(bounds, fn, filterp, esat_tv, eair, oair, cair, rb, btran, dayl_factor, leafn, atm2lnd_inst, temperature_inst, surfalb_inst, solarabs_inst, canopystate_inst, ozone_inst, photosyns_inst, phase)

Arguments

Type IntentOptional Attributes Name
type(bounds_type), intent(in) :: bounds
integer, intent(in) :: fn
integer, intent(in) :: filterp(fn)
real(kind=r8), intent(in) :: esat_tv(bounds%begp:)
real(kind=r8), intent(in) :: eair(bounds%begp:)
real(kind=r8), intent(in) :: oair(bounds%begp:)
real(kind=r8), intent(in) :: cair(bounds%begp:)
real(kind=r8), intent(in) :: rb(bounds%begp:)
real(kind=r8), intent(in) :: btran(bounds%begp:)
real(kind=r8), intent(in) :: dayl_factor(bounds%begp:)
real(kind=r8), intent(in) :: leafn(bounds%begp:)
type(atm2lnd_type), intent(in) :: atm2lnd_inst
type(temperature_type), intent(in) :: temperature_inst
type(surfalb_type), intent(in) :: surfalb_inst
type(solarabs_type), intent(in) :: solarabs_inst
type(CanopyState_type), intent(in) :: canopystate_inst
class(ozone_base_type), intent(in) :: ozone_inst
type(photosyns_type), intent(inout) :: photosyns_inst
character(len=*), intent(in) :: phase

public subroutine PhotosynthesisTotal(fn, filterp, atm2lnd_inst, canopystate_inst, photosyns_inst)

Arguments

Type IntentOptional Attributes Name
integer, intent(in) :: fn
integer, intent(in) :: filterp(fn)
type(atm2lnd_type), intent(in) :: atm2lnd_inst
type(CanopyState_type), intent(in) :: canopystate_inst
type(photosyns_type), intent(inout) :: photosyns_inst

public subroutine Fractionation(bounds, fn, filterp, downreg, atm2lnd_inst, canopystate_inst, solarabs_inst, surfalb_inst, photosyns_inst, phase)

USES:

Arguments

Type IntentOptional Attributes Name
type(bounds_type), intent(in) :: bounds
integer, intent(in) :: fn
integer, intent(in) :: filterp(fn)
real(kind=r8), intent(in) :: downreg(bounds%begp:)
type(atm2lnd_type), intent(in) :: atm2lnd_inst
type(CanopyState_type), intent(in) :: canopystate_inst
type(solarabs_type), intent(in) :: solarabs_inst
type(surfalb_type), intent(in) :: surfalb_inst
type(photosyns_type), intent(in) :: photosyns_inst
character(len=*), intent(in) :: phase

public subroutine PhotosynthesisHydraulicStress(bounds, fn, filterp, esat_tv, eair, oair, cair, rb, bsun, bsha, btran, dayl_factor, leafn, qsatl, qaf, atm2lnd_inst, temperature_inst, soilstate_inst, waterstate_inst, surfalb_inst, solarabs_inst, canopystate_inst, ozone_inst, photosyns_inst, waterflux_inst, froot_carbon, croot_carbon)

!

Arguments

Type IntentOptional Attributes Name
type(bounds_type), intent(in) :: bounds
integer, intent(in) :: fn
integer, intent(in) :: filterp(fn)
real(kind=r8), intent(in) :: esat_tv(bounds%begp:)
real(kind=r8), intent(in) :: eair(bounds%begp:)
real(kind=r8), intent(in) :: oair(bounds%begp:)
real(kind=r8), intent(in) :: cair(bounds%begp:)
real(kind=r8), intent(in) :: rb(bounds%begp:)
real(kind=r8), intent(out) :: bsun(bounds%begp:)
real(kind=r8), intent(out) :: bsha(bounds%begp:)
real(kind=r8), intent(out) :: btran(bounds%begp:)
real(kind=r8), intent(in) :: dayl_factor(bounds%begp:)
real(kind=r8), intent(in) :: leafn(bounds%begp:)
real(kind=r8), intent(in) :: qsatl(bounds%begp:)
real(kind=r8), intent(in) :: qaf(bounds%begp:)
type(atm2lnd_type), intent(in) :: atm2lnd_inst
type(temperature_type), intent(in) :: temperature_inst
type(soilstate_type), intent(inout) :: soilstate_inst
type(waterstate_type), intent(inout) :: waterstate_inst
type(surfalb_type), intent(in) :: surfalb_inst
type(solarabs_type), intent(in) :: solarabs_inst
type(CanopyState_type), intent(inout) :: canopystate_inst
class(ozone_base_type), intent(in) :: ozone_inst
type(photosyns_type), intent(inout) :: photosyns_inst
type(waterflux_type), intent(inout) :: waterflux_inst
real(kind=r8), intent(in) :: froot_carbon(bounds%begp:)
real(kind=r8), intent(in) :: croot_carbon(bounds%begp:)