quefts {Rquefts} | R Documentation |
QUEFTS model
Description
Create a QUEFTS model, set parameters, and run it to compute nutrient requirements and nutrient limited yield.
A number of default crop parameter sets are available from quefts_crop
, and an example soil from quefts_soil
. You need to provide attainable or target crop production (in this context that is the maximum production in the absence of nutrient limitation), expressed as dry-matter biomass for leaves, stems and the storage organ (e.g. grain, root or tuber). See quefts_biom
. Some crops are grown for the stems/leaves, in which case there is no relevant storage organ (e.g. sugarcane, jute). production yield estimates can be obtained with a crop growth model.
Usage
quefts(soil, crop, fert, biom)
quefts_fert()
quefts_biom()
crop(x) <- value
soil(x) <- value
fert(x) <- value
biom(x) <- value
run(x, ...)
Arguments
soil |
list with named soil parameters. See Details. An example is returned by |
crop |
list with named crop parameters. See Details. An example is returned by |
fert |
list with named fertilizer parameters (N, P and K). An example is returned by |
biom |
list with named biomass and growing season length parameters. An example is returned by |
x |
QueftsModel object |
value |
list with soil, crop, fertilizer, or biomass parameters as above |
... |
additional arguments. None implemented |
Details
For input parameters see quefts_crop
, quefts_soil
, quefts_fert
and quefts_biom
Crop yield (biom) | . | |
leaf_att, stem_att, store_att | Attainable (in the absence of nutrient limitation), or target crop biomass (dry-matter, kg/ha) for leaves, stems and storage organs. | |
SeasonLength | Length of the growing season (days) | |
. | ||
. | ||
Output Variables | Explanation | |
N_actual_supply, P_actual_supply, K_actual_supply | nutrient uptake from soil (not fertilizer) (kg/ha) | |
leaf_lim, stem_lim, store_lim | nutrient limited biomass of leaves, stems, and storage organ (kg/ha) | |
N_gap, P_gap, K_gap | fertilizer required to reach the specified biomass (kg/ha) | |
Value
vector with output variables as described in the Details
References
Janssen B.H., F.C.T. Guiking, D. van der Eijk, E.M.A. Smaling, J. Wolf and H. van Reuler, 1990. A system for the quantitative evaluation of the fertility of tropical soils (QUEFTS). Geoderma 46: 299-318
Sattari, S.Z., M.K. van Ittersum, A.F. Bouwman, A.L. Smit, and B.H. Janssen, 2014. Crop yield response to soil fertility and N, P, K inputs in different environments: Testing and improving the QUEFTS model. Field Crops Research 157: 35-46
Examples
# create a QUEFTS model
# 1. get parameters
soiltype <- quefts_soil()
barley <- quefts_crop("Barley")
fertilizer <- list(N=0, P=0, K=0)
att_yield <- list(leaf_att=2200, stem_att=2700, store_att=4800, SeasonLength=110)
# 2. create a model
q <- quefts(soiltype, barley, fertilizer, att_yield)
# 3. run the model
run(q)
# change some parameters
q$SeasonLength <- 162
q$leaf_att <- 2651
q$stem_att <- 5053
q$store_att <- 8208
q$N <- 100
q$P <- 50
q$K <- 50
run(q)
## note that Rquefts uses C++ reference classes.
## This means that if you copy a quefts model, you do not create a
## new instance of the model, but you point to the same one!
q <- quefts()
q["N"]
k <- q
k["N"] <- 150
k["N"]
# the value of q has also changed!
q["N"]
## different ways of subsetting / replacement
q <- quefts()
q$N
q$N <- 30
q["N"]
q["N"] <- 90
q["model", "N"]
q["model", "N"] <- 60
q$N
q$soil$N_recovery
q["soil$N_recovery"]
q["soil$N_recovery"] <- .6
q["soil", "N_recovery"]
q["soil", "N_recovery"] <- .4
q$soil$N_recovery