Get amount of items used for feeding livestock.
Arguments
- example
If
TRUE, return a small example output without downloading remote data. Default isFALSE.- grain
Spatial grain of the feed allocation.
"national"(default, one allocation per country) or"local"(the per-cell 0.5-degree engine, which is heavy and run viabuild_feed_intake_local(); calling it here redirects there).- demand_tier
Demand-estimation tier.
"ipcc"(default, the rigorous IPCC Tier-2 energy demand for the ruminant species it covers, Bouwman FCR for pigs and poultry, Krausmann per-head for draft / other species) or"fcr"(the Bouwman / Krausmann feed-conversion magnitude for every species). Both grains allocate withredistribute_feed().- feed_mode
Whether to distribute surplus feed availability.
"historical"(default) suppresses the surplus-distribution pass: the CBS feed element is treated as realised consumption, so leftover availability is not dumped onto variable-demand livestock (which would inflate non-grass intake)."scenario"distributes the surplus.- years
Integer vector of years to build, or
NULL(default) for every year in the production data (1850-2023 via the LUH2 extension). Restricting the range cuts run time proportionally; allocation is independent per year, so a subset returns exactly the same rows for those years.- feed_eligibility
Which feeds each livestock category may receive.
"feed_table"(default) followsfeed_taxonomy: an item with a grazer feed type but no granivore feed type (straw and green fodder) is fibrous roughage that pigs and poultry do not eat, so it is never allocated to them, at any allocation level. Granivore demand that the feeds they may eat cannot cover stays unmet rather than being filled with roughage."none"lets any category receive any item (the behaviour before whep#1218), for sensitivity analysis.- feed_loss
Share of the Commodity Balance Sheet
feedelement lost between distribution and intake. FAOSTAT books storage and transport losses in a separate element, so thefeedelement is already net of them."wirsenius"(default) applies the per-class losses of Wirsenius (2000, sections 3.1.2 and 3.1.5): none on Food Balance Sheet products and processing by-products, 10% on crop residues (Straw,Other crop residues), 20% on harvested grass, legume and cereal fodder (hay-making and ensiling, harvest to intake) and 5% on fodder vegetables and roots; temporary grassland, booked as grazed grass, carries none."flat"applies 10% to every item, the unsourced factor used before whep#1420."none"takes thefeedelement as intake. Grass from the grassland sink and scavenging are not Commodity Balance Sheet items and carry no loss under any method.
Value
A tibble with the feed intake data. It contains the following columns:
year: The year in which the recorded event occurred.area_code: The code of the country where the data is from. For code details see e.g.add_area_name().live_anim_code: Commodity balance sheet code for the type of livestock that is fed. For code details see e.g.add_item_cbs_name().item_cbs_code: The code of the item that is used for feeding the animal. For code details see e.g.add_item_cbs_name().feed_type: The type of item that is being fed. It can be one of:animals: Livestock product, e.g.Bovine Meat,Butter, Ghee, etc.crops: Crop product, e.g.Vegetables, Other,Oats, etc.residues: Crop residue, e.g.Straw,Fodder legumes, etc.grass: Grass, e.g.Grassland,Temporary grassland, etc.scavenging: Other residues. SingleScavengingitem.
supply: The computed amount in tonnes of this item that should be fed to this animal, when sharing the total itemfeeduse from the Commodity Balance Sheet among all livestock.intake: The actual amount in tonnes that the animal needs, which can be less than the theoretical used amount fromsupply.intake_dry_matter: The amount specified byintakebut only considering dry matter, so it should be less thanintake.loss: The amount that is not used for feed. This issupply - intake.loss_share: The percent that is lost. This isloss / supply.
This is not the input estimate_n_excretion() reads: that function takes
the per-livestock-category rows of redistribute_feed() (territory,
livestock_category, feed_quality, intake_dm_t), and refuses this
table.
Examples
get_feed_intake(example = TRUE)
#> # A tibble: 11 × 14
#> year area_code polity_area_code reporting_polity_code reporting_polity_name
#> <int> <int> <int> <chr> <chr>
#> 1 1967 96 96 HKG-1842-2025 Hong Kong
#> 2 1978 33 33 CAN-1949-2025 Canada
#> 3 1978 226 226 UGA-1962-2025 Uganda
#> 4 1978 234 234 URY-1828-2025 Uruguay
#> 5 1985 72 72 FRS-1977-2025 Djibouti (formerly Fr…
#> 6 1996 10 10 AUS-1901-2025 Australia
#> 7 1996 244 244 WSM-1900-2025 Samoa
#> 8 2003 191 191 VCT-1833-2025 Saint Vincent and the…
#> 9 2010 170 170 PER-1942-2025 Peru
#> 10 2010 235 235 UZB-1991-2025 Uzbekistan
#> 11 2021 59 59 EGY-1979-2025 Egypt
#> # ℹ 9 more variables: reporting_polity_has_geometry <lgl>,
#> # live_anim_code <int>, item_cbs_code <int>, feed_type <chr>, supply <dbl>,
#> # intake <dbl>, intake_dry_matter <dbl>, loss <dbl>, loss_share <dbl>
