APSIM component communications
SWIM Plant Communications
<
type
name
=
"WaterUptakes"
>
<
field
name
=
"Uptakes"
array
=
"T"
>
<
field
name
=
"Name"
kind
=
"string"
/>
<
field
name
=
"Amount"
kind
=
"double"
unit
=
"mm"
array
=
"T"
/>
</
field
>
</
type
>
Arbitrator Communications
Notes: Arbitrator could be more than one component, for example, light arbitration might be in a separate component to water and nutrient arbitration.
<
type
name=”CohortCanopy”>
<
field
name
=
"CohortID"
kind
=
"string"
/>
<
field
name
=
"RowAngle"
kind
=
"double"
unit=”radian”/>
<
field
name
=
"RowDistance "
kind
=
"double"
unit=”m”/>
<
field
name
=
"RowOffset "
kind
=
"double"
unit=”m”/>
<
field
name
=
"ColumnDistance "
kind
=
"double"
unit=”m”/>
<
field
name
=
"ColumnOffset "
kind
=
"double"
unit=”m”/>
<
type
name
=
"CanopyLayer"
array=”T”>
<
field
name
=
"Top"
kind
=
"double"
unit=”m”/>
<
field
name
=
"RowExtent"
kind
=
"double"
unit=”m”/>
<
field
name
=
"ColumnExtent"
kind
=
"double"
unit=”m”/>
<
field
name
=
"LiveAI"
kind
=
"double"
unit=”m^2/m^”/>
<
field
name
=
"DeadAI"
kind
=
"double"
unit=”m^2/m^”/>
<
field
name
=
"LiveK"
kind
=
"double"
unit=”-“/>
<
field
name
=
"DeadK"
kind
=
"double"
unit=”-“/>
<
field
name
=
"Albedo"
kind
=
"double"
unit=”-“/>
<
field
name
=
"Transmission"
kind
=
"double"
unit=”-“/>
<
field
name=”Emissivity"
kind
=
"double"
unit=”-“/>
<
field
name
=
"StomatalGMax"
kind
=
"double"
unit=”m/s”/>
<
field
name
=
"StomatalGHalfSat"
kind
=
"double"
unit=”J/m^2/s”/>
</
type
>
</
type
>
<
type
name=”CohortWaterDemand”>
<
field
name
=
"CohortID"
kind
=
"string"
/> e.g. seedling, plant
<
field
name
=
"Demand"
kind
=
"double"
unit=”kg/m^2”/>
<
field
name
=
"PsiXylemMin"
kind
=
"double"
unit=”MPa”/>
<
type
name=”RootSystemLayer” array=”T”>
<
field
name
=
"Bottom"
kind
=
"double"
unit=”m”/>
<
field
name
=
"LL"
kind
=
"double"
unit=”m^3/m^3”/>
<
field
name
=
"KL"
kind
=
"double"
unit=”/day”/>
<
field
name
=
"RootLengthDensity"
kind
=
"double"
unit=”m/m^3”/>
<
field
name
=
"RootRadius"
kind
=
"double"
unit=”mm”/>
<
field
name
=
"RootConductance"
kind
=
"double"
unit=””/>
</
type
>
</
type
>
<
type
name=”CohortNutrientDemand”>
<
field
name
=
"CohortID"
kind
=
"string"
/> e.g. seedling, plant
<
field
name
=
"Demand"
kind
=
"double"
unit=”kg/ha”/>
<
type
name=”RootSystemLayer” array=”T”>
<
field
name
=
"Bottom"
kind
=
"double"
unit=”m”/>
<
field
name
=
"MaxUptakeN"
kind
=
"double"
unit=”kg/ha”/>
<
field
name
=
"MaxUptakeP"
kind
=
"double"
unit=”kg/ha”/>
<
field
name
=
"MaxUptakeS"
kind
=
"double"
unit=”kg/ha”/>
<
field
name
=
"MaxUptakeAshAlk"
kind
=
"double"
unit=”mol/ha”/>
</
type
>
</
type
>
<
type
name=”CanopyArbitration”>
<
field
name
=
"CohortID"
kind
=
"string"
/>
<
type
name
=
"CanopyLayer"
array=”T”>
<
field
name
=
"AbsorbedRadiation"
kind
=
"double"
unit=”MJ/m^2”/>
<
field
name
=
"WaterDemand"
kind
=
"double"
unit=”kg/m^2”/>
<
field
name
=
"Inteception"
kind
=
"double"
unit=”kg/m^2“/>
</
type
>
</
type
>
<
type
name=”CohortWaterSupply”>
<
field
name
=
"CohortID"
kind
=
"string"
/> e.g. seedling, plant
<
type
name=”RootSystemLayer” array=”T”>
<
field
name
=
"Bottom"
kind
=
"double"
unit=”m”/>
<
field
name
=
"Supply"
kind
=
"double"
unit=”kg/m^2”/>
</
type
>
</
type
>
<
type
name=”CohortNutrientSupply”>
<
field
name
=
"CohortID"
kind
=
"string"
/> e.g. seedling, plant
<
type
name=”RootSystemLayer” array=”T”>
<
field
name
=
"Bottom"
kind
=
"double"
unit=”m”/>
<
field
name
=
"SupplyNO3"
kind
=
"double"
unit=”kg/ha” />
<
field
name
=
"SupplyNH4"
kind
=
"double"
unit=”kg/ha” />
<
field
name
=
"SupplyPOx"
kind
=
"double"
unit=”kg/ha” />
<
field
name
=
"SupplySO4"
kind
=
"double"
unit=”kg/ha” />
<
field
name
=
"SupplyAshAlk"
kind
=
"double"
unit=”mol/ha” />
</
type
>
</
type
>
Grazing Communications
<
type
name
=
"CohortAvailableToAnimal"
>
<
field
name
=
"CohortID"
kind
=
"string"
/> e.g. seedling
<
field
name
=
"Organ"
kind=”string” /> e.g. leaf, stem
<
field
name
=
"AgeID"
kind
=
"string"
/> e.g. “secondleaf”, “live”, “dead”
<
field
name
=
"Bottom"
kind
=
"double"
unit
=
"mm"
/>
<
field
name
=
"Top"
kind
=
"double"
unit
=
"mm"
/>
<
field
name
=
"Chem"
kind=”string” /> e.g. digestible, indigestible
<
field
name="Weight” kind=”double” unit=”kg/ha” />
<
field
name="N” kind=”double” unit=”kg/ha” />
<
field
name="P” kind=”double” unit=”kg/ha” />
<
field
name="S” kind=”double” unit=”kg/ha” />
<
field
name="AshAlk” kind=”double” unit=”mol/ha” />
</
type
>
<
type
name
=
"CohortRemovedByAnimal"
>
<
field
name
=
"CohortID"
kind
=
"string"
/> e.g. seedling
<
field
name
=
"Organ"
kind=”string” /> e.g. leaf, stem
<
field
name
=
"AgeID"
kind
=
"string"
/> e.g. “secondleaf”, “live”, “dead”
<
field
name
=
"Bottom"
kind
=
"double"
unit
=
"mm"
/>
<
field
name
=
"Top"
kind
=
"double"
unit
=
"mm"
/>
<
field
name
=
"Chem"
kind=”string” /> e.g. digestible, indigestible
<
field
name="WeightRemoved” kind=”double” unit=”kg/ha” />
</
type
>
Jobs:
Implement in PLANT2 – DH
Change STOCK – AM
PASTURE – AM
Delete Stock Science Converter? DH
Implement in GRASP – PdeV
Move AgPasture into PLANT2 – Frank Li
Excreta Return Communications
<
type
name
=
"AddFaeces"
>
<
field
name
=
"Defaecations"
unit
=
"-"
kind
=
"double"
/>
<
field
name
=
"VolumePerDefaecation"
unit
=
"m^3"
kind
=
"double"
/>
<
field
name
=
"AreaPerDefaecation"
unit
=
"m^2"
kind
=
"double"
/>
<
field
name
=
"Eccentricity"
unit
=
"-"
kind
=
"double"
/>
<
field
name
=
"OMWeight"
unit
=
"kg/ha"
kind
=
"double"
/>
<
field
name
=
"OMN"
unit
=
"kg/ha"
kind
=
"double"
/>
<
field
name
=
"OMP"
unit
=
"kg/ha"
kind
=
"double"
/>
<
field
name
=
"OMS"
unit
=
"kg/ha"
kind
=
"double"
/>
<
field
name
=
"OMAshAlk"
unit
=
"mol/ha"
kind
=
"double"
/>
<
field
name
=
"NO3N"
unit
=
"kg/ha"
kind
=
"double"
/>
<
field
name
=
"NH4N"
unit
=
"kg/ha"
kind
=
"double"
/>
<
field
name
=
"POXP"
unit
=
"kg/ha"
kind
=
"double"
/>
<
field
name
=
"SO4S"
unit
=
"kg/ha"
kind
=
"double"
/>
</
type
>
<
type
name
=
"AddUrine"
>
<
field
name
=
"Urinations"
unit
=
"-"
kind
=
"double"
/>
<
field
name
=
"VolumePerUrination"
unit
=
"m^3"
kind
=
"double"
/>
<
field
name
=
"AreaPerUrination"
unit
=
"m^2"
kind
=
"double"
/>
<
field
name
=
"Eccentricity"
unit
=
"-"
kind
=
"double"
/>
<
field
name
=
"Urea"
unit
=
"kg/ha"
kind
=
"double"
/>
<
field
name
=
"POX"
unit
=
"kg/ha"
kind
=
"double"
/>
<
field
name
=
"SO4"
unit
=
"kg/ha"
kind
=
"double"
/>
<
field
name
=
"AshAlk"
unit
=
"mol/ha"
kind
=
"double"
/>
</
type
>
Jobs by September:
AM – Stock changed to send AddFaeces and AddUrine.
EZ – SurfaceOm to change to accept AddFaeces
BJ – SurfaceOrganicMatter to change to accept AddFaeces
EZ – SoilN to change to accept AddUrine
BJ / VS – SoilNitrogen to change to accept AddUrine and to include urine patch algorithm.
DH – StockHerbageConverter – remove faeces and urine code.