Skip to content

Commit

Permalink
Clear readme.md for replicability
Browse files Browse the repository at this point in the history
  • Loading branch information
martincollignon authored Dec 22, 2024
1 parent 74a5374 commit 341bd17
Showing 1 changed file with 123 additions and 143 deletions.
266 changes: 123 additions & 143 deletions backend/src/sources/static/fertilizer/readme.md
Original file line number Diff line number Diff line change
@@ -1,143 +1,123 @@
Source for interpreting the files can be found here: https://lbst.dk/Media/638530092592682254/Vejledning_om_goedskning_og_harmoniregler_2022_2023.pdf

Important fields:

901: total consumption of fertiliser, sum of:
601: consumption of animal fertiliser
193: consumption of other organic fertiliser
706: consumption of artificial fertiliser

902: fertiliser quota - consumption. Negative value: over-fertilisation

101: total area
106: harmonised area


Google Gemini interpretation:

Original Header Danish Description
F_101_1 Samlet landbrugsareal (ha)
F_106_1 Harmoniareal (ha)
F_177_1 Forarbejdet husdyrgødning afsat til ikke-tilmeldt virksomhed (kg N)
F_177_2 Forarbejdet husdyrgødning afsat til ikke-tilmeldt virksomhed (kg P)
F_185_2 Afgasset biomasse (Produceret)
F_185_3 Afgasset biomasse (Udbragt)
F_185_4 Afgasset biomasse (Bidrag)
F_186_2 Forarbejdet husdyrgødning (Produceret)
F_186_3 Forarbejdet husdyrgødning (Udbragt)
F_186_4 Forarbejdet husdyrgødning (Bidrag)
F_187_2 Komposteret husdyrgødning fra fælles anlæg (Produceret)
F_187_3 Komposteret husdyrgødning fra fælles anlæg (Udbragt)
F_187_4 Komposteret husdyrgødning fra fælles anlæg (Bidrag)
F_188_2 Kartoffelfrugtsaft (Produceret)
F_188_3 Kartoffelfrugtsaft (Udbragt)
F_188_4 Kartoffelfrugtsaft (Bidrag)
F_189_2 Grønsaft (Produceret)
F_189_3 Grønsaft (Udbragt)
F_189_4 Grønsaft (Bidrag)
F_190_2 Have- og parkaffald (Produceret)
F_190_3 Have- og parkaffald (Udbragt)
F_190_4 Have- og parkaffald (Bidrag)
F_192 I alt (kg N) (Anden organisk gødning)
F_193 I alt (kg N) (Anden organisk gødning) - *Possible Duplicate - Check your form*
F_194_1 Andre typer af organisk gødning (Produceret)
F_194_2 Andre typer af organisk gødning (Udbragt)
F_194_3 Andre typer af organisk gødning (Bidrag)
F_195_2 Kød- og benmel, børstemel, blodmel og fiskemel/fiskeaffald (Produceret)
F_195_3 Kød- og benmel, børstemel, blodmel og fiskemel/fiskeaffald (Udbragt)
F_195_4 Kød- og benmel, børstemel, blodmel og fiskemel/fiskeaffald (Bidrag)
F_221_1/F_221_2 Pelsdyr/fjerkræ (Kg P/ha & kg P)
F_222_1/F_222_2 Slagtesvin (Kg P/ha & kg P)
F_223_1/F_223_2 Søer og smågrise (Kg P/ha & kg P)
F_224_1/F_224_2 Kvæg, får, geder og andre dyretyper (Kg P/ha & kg P)
F_225_1/F_225_2 Kg fosfor egen husdyrproduktion (Kg P/ha & kg P)
F_227_1/F_227_2 Afsat til fælles biogasanlæg (Kg P/ha & kg P)
F_228_1/F_228_2 Total Fosforloft (Vægtet gennemsnit) og kg P i egen husdyrproduktion (Kg P/ha & kg P)
F_232 Kg fosfor i egen husdyrgødning og modtaget organisk gødning
F_233 Fosforloft i egen husdyrgødning og modtaget organisk gødning (inden korrektioner)
F_234 Fosforloft for virksomheden (husdyrgødning, anden organisk gødning og bioaske)
F_235_1 Korrektion for lave fosfortal (Nej/Ja)
F_235_2 Korrektion for lave fosfortal (kg P)
F_235_3 Korrektion for lave fosfortal (0 for nej)
F_236 Fosforloft (husdyrgødning, anden organisk gødning og bioaske, korrigeret for lave fosfortal)
F_237 Samlet forbrug af fosfor (husdyrgødning, anden organisk gødning og bioaske)
F_238 Fosforarealkrav (husdyrgødning, anden organisk gødning og bioaske)
F_239 Fosforloft, kunstgødning (korrigeret for lave fosfortal)
F_240 Samlet forbrug af fosfor i kunstgødning
F_241 Fosforarealkrav, kunstgødning
F_242 Virksomhedens samlede fosforarealkrav
F_243 Harmoniareal (angivet)
F_244 Harmoniareal minus fosforarealkrav
F_245 Andel af harmoniareal i områder med skærpet fosforloft
F_246_1/F_246_2 Fosforloft i organisk gødning (vægtet gennemsnit i kg P/ha) (inden evt. korrektion) & (kg P)
F_247_1/F247_2 Fosforloft sidste år (Kg P/ha & kg P/ha)
F_248_1 Gældende fosforloft (inden korrektioner)
F_303_1/F_303_3 Normproduktion (kg N & kg P)
F_304_1/F_304_2/F_304_3/F_304_4 Modtaget husdyrgødning (kg N & kg P)
F_305_1/F_305_2/F_305_3/F_305_4 Afsat husdyrgødning (kg N & kg P)
F_306_1/F_306_2 Lagerstatus pr. 31. juli 2023 (Husdyrgødning) (kg N & kg P)
F_307_1/F_307_2 Forbrug fra 1. august 2023 til 30. august 2023 (Husdyrgødning) (kg N & kg P)
F_308_1/F_308_2 Slutlager (Husdyrgødning) (kg N & kg P)
F_309_1/F_309_2 Samlet forbrug af husdyrgødning i planperioden (kg N & kg P)
F_310_1/F_310_2/F_310_3/F_310_4 Startlager (Husdyrgødning) (kg N & kg P)
F_318_1/F_318_2 Husdyrgødning afsat via græssende dyr til MVJ ON areal (kg N & kg P)
F_319_2/F_319_4 Husdyrgødning afsat til udlandet (kg N & kg P)
F_320_1/F_320_2 Husdyrgødning afsat via græssende dyr (på arealer med miljøtilsagn) (kg N & kg P)
F_321_1/F_321_2 Husdyrgødning afsat via afbrænding (kg N & kg P)
F_401 Har forhøjet kvælstofnorm (salg til grovvareselskab)
F_402 Har forhøjet kvælstofnorm (salg til andre bedrifter/egen virksomhed)
F_406 Indgår i produktionsmæssig sammenhæng?
F_407_2 Jeg har ansøgt om at anvende det særlige harmonikrav...
F_5000/F_5400 Overdraget forbrug i planperioden: (Udbragt på modtaget areal & Udbragt på areal overdraget) - *Consider if these should be separated*
F_504_1/F_504_2 Bedriftens N-kvote før nedenstående korrektioner (kg N)
F_505_1/F_505_2 Korrektion for N-prognose (kg N)
F_506 Fradrag for eftervirkning af efterafgrøder i 2022
F_507 Valgt fradrag (alternativ til frivillige målrettede efterafgrøder)
F_508 Fradrag pga. manglende frivillige målrettede efterafgrøder
F_509 Valgt fradrag (alternativ til pligtige/husdyrefterafgrøder)
F_510/F_5100 Valgt fradrag (alternativ til obligatoriske efterafgrøder i målrettet kvælstofregulering) - *Check if F_5100 is a typo*
F_511 Fradrag pga. etablering af efterafgrøder
F_512 Bedriftens korrigerede N-kvote i alt
F_5200 Lagerstatus for husdyrgødning pr. 31. juli 2023 (kg N & kg P)
F_5300 Forbrug af husdyrgødning fra 1. august 2023 til 30. august 2023 (kg N & kg P)


F_601_2/F_601_3/F_601_4 Svinegylle (Udbragt/Udnyttelse/Bidrag)
F_602_0/F_602_2/F_602_3/F_602_4 Kvæggylle (Produceret/Udbragt/Udnyttelse/Bidrag) - *Check F_602_0, likely F_602_1*
F_604_2/F_604_3/F_604_4 Blandet husdyrgødning (Produceret/Udbragt/Bidrag)
F_605_2/F_605_3/F_605_4 Fast gødning (Produceret/Udbragt/Bidrag)
F_606_2/F_606_3/F_606_4 Ajle (Produceret/Udbragt/Bidrag)
F_609/F_610 I alt (kg N) (Husdyrgødning)
F_611_2/F_611_3/F_611_4 Anden husdyrgødning og fiberfraktion efter forarbejdning (Produceret/Udbragt/Bidrag)
F_613_2/F_613_3/F_613_4 Gylle fra kødædende pelsdyr (Produceret/Udbragt/Bidrag)
F_614_2/F_614_3/F_614_4 Fjerkrægylle (Produceret/Udbragt/Bidrag)
F_615_2/F_615_3/F_615_4 Dybstrøelse (kvæg og svin) (Produceret/Udbragt/Bidrag)
F_616_2/F_616_3/F_616_4 Dybstrøelse og anden fjerkrædyrgødning (Produceret/Udbragt/Bidrag)
F_617_0/F_617_2/F_617_3/F_617_4 Væskefraktion efter forarbejdning (Produceret/Udbragt/Udnyttelse/Bidrag) - *Check F_617_0, likely F_617_1*
F_702_1/F_702_2 Indkøbt kunstgødning fra udlandet (kg N & kg P)
F_703_1/F_703_2/F_703_3/F_703_4 Indkøbt kunstgødning (kg N & kg P)
F_704_1/F_704_2 Forbrug fra 1. august 2023 til 30. august 2023 (Kunstgødning) (kg N & kg P)
F_705_1/F_705_2 Lagerstatus pr. 31. juli 2023 (Kunstgødning) (kg N & kg P)
F_706_1/F_706_2 Samlet forbrug af kunstgødning (kg N & kg P)
F_707_1/F_707_2 Slutlager (Kunstgødning) (kg N & kg P)
F_708_1/F_708_2/F_708_3/F_708_4 Startlager (Kunstgødning) (kg N & kg P)
F_709 Fradrag for udbragt mængde fosfor på arealer uden for harmoniarealer
F_716 Udbragt kg N (husdyrgødning og anden organisk gødning, fratrukket gødning afsat af græssende dyr)
F_717 Udbragt kg N pr. ha harmoniareal (husdyrgødning og anden organisk gødning)
F_718 Antal Græsningsenheder (GE)
F_719 Husdyrgødning overført via græssende dyr?
F_720 Husdyrgødning afsat via græssende dyr til MVJ ON areal?
F_804_1/F_804_2 Samlet forbrug af anden organisk gødning (kg N & kg P)
F_805_1/F_805_2 Startlager - Anden organisk gødning (kg N & kg P)
F_814_1/F_814_2/F_814_3/F_814_4 Indkøbt eller modtaget anden organisk gødning (kg N & kg P)
F_815_1/F_815_2 Lagerstatus pr. 31. juli 2023 (Anden organisk gødning) (kg N & kg P)
F_816_1/F_816_2 Forbrug fra 1. august 2023 til 30. august 2023 (Anden organisk gødning) (kg N & kg P)
F_817_1/F_817_2 Slutlager (Anden organisk gødning) (kg N & kg P)
F_818_1/F_818_2 Anden organisk gødning overført som husdyrgødning (kg N & kg P)
F_819_4 Fradrag for fosfor i bioaske (pga. halmafsætning)
F_820_4 Fradrag for udbragt mængde fosfor i bioaske (på arealer udenfor harmoniarealer)
F_901 Virksomhedens samlede forbrug af kvælstof
F_902 Kvælstofkvote minus forbrug af kvælstof
F_910 Antal kg kvælstof
F_911 Antal kg fosfor
F_917 Fosforloft (kg P/ha)
# Agricultural Nitrogen Field-Level Analysis

## Purpose
Distributes farm-level nitrogen quotas and consumption patterns to individual fields while maintaining compliance with agricultural regulations. Translates farm-level fertilizer data to field-level estimates based on each farm's quota adjustments and consumption patterns.

## Input Data Structure

### Farm-Level File
Farm-wide nitrogen data with columns:
- CVR: Unique farm identifier
- F_504_1: Base nitrogen quota
- F_505_1: Additional nitrogen quota
- F_512: Corrected quota (when regulatory adjustments apply)
- F_901: Total nitrogen consumption
- F_610: Animal fertilizer usage
- F_706_1: Mineral fertilizer usage
- F_193: Other organic fertilizer usage

Note: Negative values in fertilizer columns represent transfers or sales to other farms.

### Field-Level File
Individual field data:
- CVR: Farm identifier
- Marknummer: Field ID number
- Areal: Total field area
- Harmoni Areal: Area eligible for fertilizer application
- N Kvote Mark: Field's base nitrogen quota

## Analysis Steps

### 1. Data Preparation

#### Farm-Level Data (df1)
- Convert all quota and fertilizer columns to numeric values
- Calculate original quota (F_504_1 + F_505_1)
- Identify final quota (use F_512 if available, otherwise use original)
- Calculate quota adjustment factor = final quota / original quota
- Calculate fertilizer type shares from total consumption
- Handle negative values:
* Negative fertilizer values reflect transfers/sales
* These affect farm's total available nitrogen

#### Field-Level Data (df2)
- Remove header rows
- Convert numeric columns: CVR, Areal, Harmoni Areal, N Kvote Mark
- Verify field areas and quotas

### 2. Farm-Level Calculations

#### Quota Processing
1. Original quota = F_504_1 + F_505_1
2. Final quota = F_512 (if available) or original quota
3. Adjustment factor = final quota / original quota
* Default to 1 if original quota is zero

#### Consumption Analysis
1. Farm performance = total consumption / final quota
2. Fertilizer distribution:
* Animal share = F_610 / total consumption
* Mineral share = F_706_1 / total consumption
* Organic share = F_193 / total consumption

### 3. Field-Level Distribution

For each field:

1. Harmonized Area Check
* If zero: field ineligible for fertilizer application
* If non-zero: proceed with calculations

2. Quota Adjustment
* Adjusted quota = N Kvote Mark × farm's adjustment factor

3. Consumption Calculation
* Expected consumption = adjusted quota × farm performance
* Consumption percentage = (consumption / adjusted quota) × 100

4. Fertilizer Type Distribution
* Apply farm's fertilizer shares to field consumption
* Maintains farm's fertilizer mix at field level

### 4. Validation Checks

#### Farm Level
- Complete quota information (original or corrected)
- Fertilizer shares sum to 100%
- Transfer/sale amounts (negative values) verification
- Total consumption versus quota alignment

#### Field Level
- Harmonized area ≤ total area
- Field quota presence
- Consumption percentage reasonability
- CVR matches in both datasets

### 5. Output Documentation
Each field record includes:
- Original field data
- Adjusted quotas
- Calculated consumption
- Fertilizer type breakdowns
- Special cases:
* Zero harmonized area
* Missing quota data
* High consumption percentages

## Key Assumptions
1. Farm-level patterns apply uniformly to fields
2. Field consumption follows farm performance ratio
3. Negative values represent legitimate transfers/sales
4. Zero harmonized area means no fertilizer allocation

## Limitations
- Cannot account for field-specific practices
- Assumes uniform distribution within farms
- Based on reported data
- No consideration of soil types or crop requirements

## Notes
- Negative fertilizer values are legitimate when representing transfers
- Field-level estimates maintain farm totals
- Analysis focuses on nitrogen distribution patterns
- Results should be viewed as estimates based on farm patterns

0 comments on commit 341bd17

Please sign in to comment.