Compare commits
57 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| cff1942865 | |||
| ed036640b3 | |||
| 2f4be34aa9 | |||
| be5996372c | |||
| 0e8be57d43 | |||
| 0ff0a44fdb | |||
| 03f2b95e53 | |||
|
|
d08ef7c6b5 | ||
|
|
4e13da52e2 | ||
|
|
a5b6c9ec08 | ||
|
|
3cb1193ef5 | ||
|
|
da2788842b | ||
|
|
6413805154 | ||
|
|
8563a97ff0 | ||
|
|
ba8727a3e8 | ||
|
|
cb6f93fe14 | ||
|
|
2362128312 | ||
|
|
7ccc064e69 | ||
|
|
30df488707 | ||
|
|
714346b479 | ||
| d760f4dffd | |||
|
|
a95635fdca | ||
|
|
b653d7be9f | ||
|
|
6cc591204e | ||
| 5e6f2f4629 | |||
|
|
32ac3c5de6 | ||
|
|
8e6b8d841e | ||
|
|
1a9e2d549b | ||
|
|
e02ca34281 | ||
| e93c282505 | |||
|
|
db213f41df | ||
|
|
5ae8dc6611 | ||
|
|
aaa2ebea25 | ||
|
|
e82ba2bbe5 | ||
|
|
57b930ff38 | ||
|
|
0e18c12436 | ||
|
|
204b926128 | ||
|
|
0ebc86674b | ||
|
|
d1b31452da | ||
|
|
9eb1699986 | ||
| 370869ea72 | |||
| 710e73b5f0 | |||
| fcbb6c9356 | |||
|
|
f1f742d434 | ||
| 8651f534c9 | |||
|
|
7fc0084a41 | ||
|
|
1ea260dee0 | ||
|
|
8ab217f534 | ||
|
|
1eef5faae2 | ||
| 579a2d9b8d | |||
|
|
988a23963c | ||
|
|
5be21f548f | ||
|
|
99b58cd618 | ||
|
|
2617e52a83 | ||
|
|
b935b3967c | ||
|
|
c227461eee | ||
|
|
6f0669ff4c |
@@ -1,40 +0,0 @@
|
||||
using CarbonLib;
|
||||
using CarbonService.Models;
|
||||
using FarmMapsAPI.Carbon.Models;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace FarmMapsAPI.Carbon
|
||||
{
|
||||
public class CarbonCalculation25 : ICarbonCalculation
|
||||
{
|
||||
public CarbonCalculation25(string configPath)
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
public CarbonRequest MapFarmMapsToMiterra(FarmMapsCarbonRequest farmInput)
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
public string Validate(CarbonRequest farmInput)
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
public CarbonSummary Calculate(CarbonRequest farmInput)
|
||||
{
|
||||
var response = new CarbonSummary();
|
||||
return response;
|
||||
}
|
||||
|
||||
public double? GetCropYield(string cropCode, int year, int postalCode)
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
}
|
||||
}
|
||||
35
CarbonConsoleApp/CarbonConsoleApp.csproj
Normal file
35
CarbonConsoleApp/CarbonConsoleApp.csproj
Normal file
@@ -0,0 +1,35 @@
|
||||
<Project Sdk="Microsoft.NET.Sdk">
|
||||
|
||||
<PropertyGroup>
|
||||
<OutputType>Exe</OutputType>
|
||||
<TargetFramework>net8.0</TargetFramework>
|
||||
<ImplicitUsings>enable</ImplicitUsings>
|
||||
<Nullable>enable</Nullable>
|
||||
</PropertyGroup>
|
||||
|
||||
<ItemGroup>
|
||||
<ProjectReference Include="..\CarbonLib\CarbonLib.csproj" />
|
||||
</ItemGroup>
|
||||
|
||||
<ItemGroup>
|
||||
<None Update="config24\*">
|
||||
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
|
||||
</None>
|
||||
<None Update="config24\Mapping\*">
|
||||
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
|
||||
</None>
|
||||
<None Update="config25\*">
|
||||
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
|
||||
</None>
|
||||
<None Update="config25\Mapping\*">
|
||||
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
|
||||
</None>
|
||||
</ItemGroup>
|
||||
|
||||
<ItemGroup>
|
||||
<None Update="Input.txt">
|
||||
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
|
||||
</None>
|
||||
</ItemGroup>
|
||||
|
||||
</Project>
|
||||
25
CarbonConsoleApp/CarbonConsoleApp.sln
Normal file
25
CarbonConsoleApp/CarbonConsoleApp.sln
Normal file
@@ -0,0 +1,25 @@
|
||||
|
||||
Microsoft Visual Studio Solution File, Format Version 12.00
|
||||
# Visual Studio Version 17
|
||||
VisualStudioVersion = 17.14.36414.22 d17.14
|
||||
MinimumVisualStudioVersion = 10.0.40219.1
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "CarbonConsoleApp", "CarbonConsoleApp.csproj", "{C5B1B8B2-0BAD-451E-95B6-FCCA898E4308}"
|
||||
EndProject
|
||||
Global
|
||||
GlobalSection(SolutionConfigurationPlatforms) = preSolution
|
||||
Debug|Any CPU = Debug|Any CPU
|
||||
Release|Any CPU = Release|Any CPU
|
||||
EndGlobalSection
|
||||
GlobalSection(ProjectConfigurationPlatforms) = postSolution
|
||||
{C5B1B8B2-0BAD-451E-95B6-FCCA898E4308}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{C5B1B8B2-0BAD-451E-95B6-FCCA898E4308}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{C5B1B8B2-0BAD-451E-95B6-FCCA898E4308}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{C5B1B8B2-0BAD-451E-95B6-FCCA898E4308}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
EndGlobalSection
|
||||
GlobalSection(SolutionProperties) = preSolution
|
||||
HideSolutionNode = FALSE
|
||||
EndGlobalSection
|
||||
GlobalSection(ExtensibilityGlobals) = postSolution
|
||||
SolutionGuid = {436FBE19-E06A-4510-8714-CDED7BE0528F}
|
||||
EndGlobalSection
|
||||
EndGlobal
|
||||
331
CarbonConsoleApp/Input.txt
Normal file
331
CarbonConsoleApp/Input.txt
Normal file
@@ -0,0 +1,331 @@
|
||||
{
|
||||
"geometry": null,
|
||||
"PostalCode": 9797,
|
||||
"CropFields": [
|
||||
{
|
||||
"Name": "082acba5b448433a86700fde3874a333",
|
||||
"Area": 5.63,
|
||||
"SoilType": "Klei",
|
||||
"SoilProperty": {
|
||||
"OM_Const": 2.28,
|
||||
"C_Const": null,
|
||||
"OM_Choice": "o",
|
||||
"Clay_Content": 30.0,
|
||||
"Depth10": false,
|
||||
"Depth": 25
|
||||
},
|
||||
"HistoricalCropData": [
|
||||
{
|
||||
"Year": 2013,
|
||||
"Crops": [
|
||||
{
|
||||
"Crop": "Sugarbeet",
|
||||
"OrganicManures": [
|
||||
{
|
||||
"Type": "COMPOST",
|
||||
"Quantity": 15.0
|
||||
}
|
||||
],
|
||||
"CropYield": 91700.0,
|
||||
"CropRes": false,
|
||||
"Irrigation": "0,0,0,0,0,0,0,0,0,0,0,0"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"Year": 2014,
|
||||
"Crops": [
|
||||
{
|
||||
"Crop": "fodder_maize",
|
||||
"OrganicManures": [],
|
||||
"CropYield": 48200.0,
|
||||
"CropRes": false,
|
||||
"Irrigation": "0,0,0,0,0,0,0,0,0,0,0,0"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"Year": 2015,
|
||||
"Crops": [
|
||||
{
|
||||
"Crop": "Onion",
|
||||
"OrganicManures": [],
|
||||
"CropYield": 60400.0,
|
||||
"CropRes": false,
|
||||
"Irrigation": "0,0,0,0,0,0,0,0,0,0,0,0"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"Year": 2016,
|
||||
"Crops": [
|
||||
{
|
||||
"Crop": "Cons_pot_clay",
|
||||
"OrganicManures": [],
|
||||
"CropYield": 48000.0,
|
||||
"CropRes": false,
|
||||
"Irrigation": "0,0,0,0,0,0,0,0,0,0,0,0"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"Year": 2017,
|
||||
"Crops": [
|
||||
{
|
||||
"Crop": "Sugarbeet",
|
||||
"OrganicManures": [],
|
||||
"CropYield": 106400.0,
|
||||
"CropRes": false,
|
||||
"Irrigation": "0,0,0,0,0,0,0,0,0,0,0,0"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"Year": 2018,
|
||||
"Crops": [
|
||||
{
|
||||
"Crop": "Winter_wheat",
|
||||
"OrganicManures": [],
|
||||
"CropYield": 9700.0,
|
||||
"CropRes": false,
|
||||
"Irrigation": "0,0,0,0,0,0,0,0,0,0,0,0"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"Year": 2019,
|
||||
"Crops": [
|
||||
{
|
||||
"Crop": "Winter_wheat",
|
||||
"OrganicManures": [],
|
||||
"CropYield": 10400.0,
|
||||
"CropRes": false,
|
||||
"Irrigation": "0,0,0,0,0,0,0,0,0,0,0,0"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"Year": 2020,
|
||||
"Crops": [
|
||||
{
|
||||
"Crop": "Onion",
|
||||
"OrganicManures": [],
|
||||
"CropYield": 47700.0,
|
||||
"CropRes": false,
|
||||
"Irrigation": "0,0,0,0,0,0,0,0,0,0,0,0"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"Year": 2021,
|
||||
"Crops": [
|
||||
{
|
||||
"Crop": "Cons_pot_clay",
|
||||
"OrganicManures": [
|
||||
{
|
||||
"Type": "VMSTAL",
|
||||
"Quantity": 20.0
|
||||
},
|
||||
{
|
||||
"Type": "COMPOST",
|
||||
"Quantity": 18.0
|
||||
}
|
||||
],
|
||||
"CropYield": 44900.0,
|
||||
"CropRes": false,
|
||||
"Irrigation": "0,0,0,0,0,0,0,0,0,0,0,0"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"Year": 2022,
|
||||
"Crops": [
|
||||
{
|
||||
"Crop": "Winter_wheat",
|
||||
"OrganicManures": [],
|
||||
"CropYield": 10400.0,
|
||||
"CropRes": false,
|
||||
"Irrigation": "0,0,0,0,0,0,0,0,0,0,0,0"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"Year": 2023,
|
||||
"Crops": [
|
||||
{
|
||||
"Crop": "Onion",
|
||||
"OrganicManures": [],
|
||||
"CropYield": 47700.0,
|
||||
"CropRes": false,
|
||||
"Irrigation": "0,0,0,0,0,0,0,0,0,0,0,0"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"Year": 2024,
|
||||
"Crops": [
|
||||
{
|
||||
"Crop": "Cons_pot_clay",
|
||||
"OrganicManures": [],
|
||||
"CropYield": 44900.0,
|
||||
"CropRes": false,
|
||||
"Irrigation": "0,0,0,0,0,0,0,0,0,0,0,0"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"Year": 2025,
|
||||
"Crops": [
|
||||
{
|
||||
"Crop": "Winter_wheat",
|
||||
"OrganicManures": [],
|
||||
"CropYield": 10400.0,
|
||||
"CropRes": false,
|
||||
"Irrigation": "0,0,0,0,0,0,0,0,0,0,0,0"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"Year": 2026,
|
||||
"Crops": [
|
||||
{
|
||||
"Crop": "Onion",
|
||||
"OrganicManures": [],
|
||||
"CropYield": 47700.0,
|
||||
"CropRes": false,
|
||||
"Irrigation": "0,0,0,0,0,0,0,0,0,0,0,0"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"Year": 2027,
|
||||
"Crops": [
|
||||
{
|
||||
"Crop": "Cons_pot_clay",
|
||||
"OrganicManures": [],
|
||||
"CropYield": 44900.0,
|
||||
"CropRes": false,
|
||||
"Irrigation": "0,0,0,0,0,0,0,0,0,0,0,0"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"Year": 2028,
|
||||
"Crops": [
|
||||
{
|
||||
"Crop": "Winter_wheat",
|
||||
"OrganicManures": [],
|
||||
"CropYield": 10400.0,
|
||||
"CropRes": false,
|
||||
"Irrigation": "0,0,0,0,0,0,0,0,0,0,0,0"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"Year": 2029,
|
||||
"Crops": [
|
||||
{
|
||||
"Crop": "Onion",
|
||||
"OrganicManures": [],
|
||||
"CropYield": 47700.0,
|
||||
"CropRes": false,
|
||||
"Irrigation": "0,0,0,0,0,0,0,0,0,0,0,0"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"Year": 2030,
|
||||
"Crops": [
|
||||
{
|
||||
"Crop": "Cons_pot_clay",
|
||||
"OrganicManures": [],
|
||||
"CropYield": 44900.0,
|
||||
"CropRes": false,
|
||||
"Irrigation": "0,0,0,0,0,0,0,0,0,0,0,0"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"Year": 2031,
|
||||
"Crops": [
|
||||
{
|
||||
"Crop": "Winter_wheat",
|
||||
"OrganicManures": [],
|
||||
"CropYield": 10400.0,
|
||||
"CropRes": false,
|
||||
"Irrigation": "0,0,0,0,0,0,0,0,0,0,0,0"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"Year": 2032,
|
||||
"Crops": [
|
||||
{
|
||||
"Crop": "Onion",
|
||||
"OrganicManures": [],
|
||||
"CropYield": 47700.0,
|
||||
"CropRes": false,
|
||||
"Irrigation": "0,0,0,0,0,0,0,0,0,0,0,0"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"Year": 2033,
|
||||
"Crops": [
|
||||
{
|
||||
"Crop": "Cons_pot_clay",
|
||||
"OrganicManures": [],
|
||||
"CropYield": 44900.0,
|
||||
"CropRes": false,
|
||||
"Irrigation": "0,0,0,0,0,0,0,0,0,0,0,0"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"Year": 2034,
|
||||
"Crops": [
|
||||
{
|
||||
"Crop": "Winter_wheat",
|
||||
"OrganicManures": [],
|
||||
"CropYield": 10400.0,
|
||||
"CropRes": false,
|
||||
"Irrigation": "0,0,0,0,0,0,0,0,0,0,0,0"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"Year": 2035,
|
||||
"Crops": [
|
||||
{
|
||||
"Crop": "Onion",
|
||||
"OrganicManures": [],
|
||||
"CropYield": 47700.0,
|
||||
"CropRes": false,
|
||||
"Irrigation": "0,0,0,0,0,0,0,0,0,0,0,0"
|
||||
}
|
||||
]
|
||||
}
|
||||
],
|
||||
"GreenManures": [
|
||||
{
|
||||
"Year": 2013,
|
||||
"GreenManureTypes": [
|
||||
{
|
||||
"Type": "Gerst",
|
||||
"Quality": "Matig"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"Year": 2032,
|
||||
"GreenManureTypes": [
|
||||
{
|
||||
"Type": "EngelsRaaigras",
|
||||
"Quality": "Goed"
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
29
CarbonConsoleApp/Program.cs
Normal file
29
CarbonConsoleApp/Program.cs
Normal file
@@ -0,0 +1,29 @@
|
||||
using CarbonService.Models;
|
||||
using CarbonLib.Carbon;
|
||||
using Newtonsoft.Json;
|
||||
|
||||
namespace CarbonConsoleApp
|
||||
{
|
||||
class Program
|
||||
{
|
||||
static void Main(string[] args)
|
||||
{
|
||||
var configPath = "config25";
|
||||
ICarbonCalculation carbonCalc = new CarbonLib.Carbon.CarbonCalculation25(configPath);
|
||||
var request = new CarbonRequest();
|
||||
using (var reader = new StreamReader("input.txt"))
|
||||
{
|
||||
var filecontent = reader.ReadToEnd();
|
||||
request = JsonConvert.DeserializeObject<CarbonRequest>(filecontent);
|
||||
}
|
||||
|
||||
var result = carbonCalc.CalculateClimateScenario(request);
|
||||
|
||||
using (var writer = new StreamWriter("output.txt"))
|
||||
{
|
||||
var resultText = JsonConvert.SerializeObject(result, Formatting.Indented);
|
||||
writer.WriteLine(resultText);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
206
CarbonConsoleApp/config24/CropCoverMonth.json
Normal file
206
CarbonConsoleApp/config24/CropCoverMonth.json
Normal file
@@ -0,0 +1,206 @@
|
||||
[
|
||||
{
|
||||
"CropName": "Perm_gras",
|
||||
"CoverMonths": [ "M1", "M2", "M3", "M4", "M5", "M6", "M7", "M8", "M9", "M10", "M11", "M12" ]
|
||||
},
|
||||
{
|
||||
"CropName": "Temp_gras",
|
||||
"CoverMonths": [ "M1", "M2", "M3", "M4", "M5", "M6", "M7", "M8", "M9", "M10", "M11", "M12" ]
|
||||
},
|
||||
{
|
||||
"CropName": "Nat_gras",
|
||||
"CoverMonths": [ "M1", "M2", "M3", "M4", "M5", "M6", "M7", "M8", "M9", "M10", "M11", "M12" ]
|
||||
},
|
||||
{
|
||||
"CropName": "Gras",
|
||||
"CoverMonths": [ "M1", "M2", "M3", "M4", "M5", "M6", "M7", "M8", "M9", "M10", "M11", "M12" ]
|
||||
},
|
||||
{
|
||||
"CropName": "Fodder_maize",
|
||||
"CoverMonths": [ "M6", "M7", "M8", "M9" ]
|
||||
},
|
||||
{
|
||||
"CropName": "Maize",
|
||||
"CoverMonths": [ "M6", "M7", "M8", "M9" ]
|
||||
},
|
||||
{
|
||||
"CropName": "Corn_cob_mix",
|
||||
"CoverMonths": [ "M6", "M7", "M8", "M9" ]
|
||||
},
|
||||
{
|
||||
"CropName": "Winter_wheat",
|
||||
"CoverMonths": [ "M1", "M2", "M3", "M4", "M5", "M6", "M7", "M12" ]
|
||||
},
|
||||
{
|
||||
"CropName": "Summer_wheat",
|
||||
"CoverMonths": [ "M5", "M6", "M7", "M8" ]
|
||||
},
|
||||
{
|
||||
"CropName": "Summer_barley",
|
||||
"CoverMonths": [ "M5", "M6", "M7", "M8" ]
|
||||
},
|
||||
{
|
||||
"CropName": "winter_barley",
|
||||
"CoverMonths": [ "M1", "M2", "M3", "M4", "M5", "M6", "M7", "M12" ]
|
||||
},
|
||||
{
|
||||
"CropName": "Sugarbeet",
|
||||
"CoverMonths": [ "M6", "M7", "M8", "M9", "M10" ]
|
||||
},
|
||||
{
|
||||
"CropName": "Cons_pot_clay",
|
||||
"CoverMonths": [ "M5", "M6", "M7", "M8" ]
|
||||
},
|
||||
{
|
||||
"CropName": "Pot_clay",
|
||||
"CoverMonths": [ "M5", "M6", "M7", "M8" ]
|
||||
},
|
||||
{
|
||||
"CropName": "Starch_pot",
|
||||
"CoverMonths": [ "M5", "M6", "M7", "M8" ]
|
||||
},
|
||||
{
|
||||
"CropName": "Cons_pot_sand",
|
||||
"CoverMonths": [ "M5", "M6", "M7", "M8" ]
|
||||
},
|
||||
{
|
||||
"CropName": "Pot_sand",
|
||||
"CoverMonths": [ "M5", "M6", "M7", "M8" ]
|
||||
},
|
||||
{
|
||||
"CropName": "Vegetables_root",
|
||||
"CoverMonths": [ "M5", "M6", "M7", "M8", "M9", "M10" ]
|
||||
},
|
||||
{
|
||||
"CropName": "Vegetables_leaf",
|
||||
"CoverMonths": [ "M5", "M6", "M7", "M8", "M9", "M10" ]
|
||||
},
|
||||
{
|
||||
"CropName": "Vegetables_cabbage",
|
||||
"CoverMonths": [ "M6", "M7", "M8", "M9" ]
|
||||
},
|
||||
{
|
||||
"CropName": "Vegetables_stem",
|
||||
"CoverMonths": [ "M5", "M6", "M7", "M8", "M9", "M10" ]
|
||||
},
|
||||
{
|
||||
"CropName": "Pumpkin",
|
||||
"CoverMonths": [ "M6", "M7", "M8", "M9" ]
|
||||
},
|
||||
{
|
||||
"CropName": "Chicory",
|
||||
"CoverMonths": [ "M5", "M6", "M7", "M8", "M9", "M10" ]
|
||||
},
|
||||
{
|
||||
"CropName": "Courgette",
|
||||
"CoverMonths": [ "M5", "M6", "M7" ]
|
||||
},
|
||||
{
|
||||
"CropName": "Other_veg",
|
||||
"CoverMonths": [ "M5", "M6", "M7", "M8", "M9", "M10" ]
|
||||
},
|
||||
{
|
||||
"CropName": "Grasseed",
|
||||
"CoverMonths": [ "M1", "M2", "M3", "M4", "M5", "M6", "M7", "M8", "M9", "M10", "M11", "M12" ]
|
||||
},
|
||||
{
|
||||
"CropName": "Onion",
|
||||
"CoverMonths": [ "M5", "M6", "M7", "M8" ]
|
||||
},
|
||||
{
|
||||
"CropName": "Bulbs",
|
||||
"CoverMonths": [ "M4", "M5", "M6", "M7", "M8" ]
|
||||
},
|
||||
{
|
||||
"CropName": "Fallow",
|
||||
"CoverMonths": []
|
||||
},
|
||||
{
|
||||
"CropName": "Nurseries",
|
||||
"CoverMonths": [ "M1", "M2", "M3", "M4", "M5", "M6", "M7", "M8", "M9", "M10", "M11", "M12" ]
|
||||
},
|
||||
{
|
||||
"CropName": "Pulses",
|
||||
"CoverMonths": [ "M5", "M6", "M7" ]
|
||||
},
|
||||
{
|
||||
"CropName": "Apples",
|
||||
"CoverMonths": [ "M1", "M2", "M3", "M4", "M5", "M6", "M7", "M8", "M9", "M10", "M11", "M12" ]
|
||||
},
|
||||
{
|
||||
"CropName": "Pears",
|
||||
"CoverMonths": [ "M1", "M2", "M3", "M4", "M5", "M6", "M7", "M8", "M9", "M10", "M11", "M12" ]
|
||||
},
|
||||
{
|
||||
"CropName": "Luzerne",
|
||||
"CoverMonths": [ "M1", "M2", "M3", "M4", "M5", "M6", "M7", "M8", "M9", "M10", "M11", "M12" ]
|
||||
},
|
||||
{
|
||||
"CropName": "Other_crops",
|
||||
"CoverMonths": [ "M5", "M6", "M7", "M8" ]
|
||||
},
|
||||
{
|
||||
"CropName": "Other_seeds",
|
||||
"CoverMonths": [ "M5", "M6", "M7", "M8" ]
|
||||
},
|
||||
{
|
||||
"CropName": "Triticale",
|
||||
"CoverMonths": [ "M5", "M6", "M7", "M8" ]
|
||||
},
|
||||
{
|
||||
"CropName": "Rapeseed",
|
||||
"CoverMonths": [ "M1", "M2", "M3", "M4", "M5", "M6", "M7", "M12" ]
|
||||
},
|
||||
{
|
||||
"CropName": "Strawberry",
|
||||
"CoverMonths": [ "M4", "M5", "M6", "M7", "M8", "M9", "M10" ]
|
||||
},
|
||||
{
|
||||
"CropName": "Rye",
|
||||
"CoverMonths": [ "M4", "M5", "M6", "M7" ]
|
||||
},
|
||||
{
|
||||
"CropName": "Other_fruits",
|
||||
"CoverMonths": [ "M1", "M2", "M3", "M4", "M5", "M6", "M7", "M8", "M9", "M10", "M11", "M12" ]
|
||||
},
|
||||
{
|
||||
"CropName": "oats",
|
||||
"CoverMonths": [ "M5", "M6", "M7", "M8" ]
|
||||
},
|
||||
{
|
||||
"CropName": "Green_manure",
|
||||
"CoverMonths": [ "M1", "M2", "M3", "M9", "M10", "M11", "M12" ]
|
||||
},
|
||||
{
|
||||
"CropName": "Fibres",
|
||||
"CoverMonths": [ "M5", "M6", "M7", "M8" ]
|
||||
},
|
||||
{
|
||||
"CropName": "Sunflower",
|
||||
"CoverMonths": [ "M5", "M6", "M7", "M8" ]
|
||||
},
|
||||
{
|
||||
"CropName": "Fodder_beet",
|
||||
"CoverMonths": [ "M6", "M7", "M8", "M9" ]
|
||||
},
|
||||
{
|
||||
"CropName": "Other_cereals",
|
||||
"CoverMonths": [ "M5", "M6", "M7", "M8" ]
|
||||
},
|
||||
{
|
||||
"CropName": "Wine",
|
||||
"CoverMonths": [ "M1", "M2", "M3", "M4", "M5", "M6", "M7", "M8", "M9", "M10", "M11", "M12" ]
|
||||
},
|
||||
{
|
||||
"CropName": "Miscanthus",
|
||||
"CoverMonths": [ "M1", "M2", "M3", "M4", "M5", "M6", "M7", "M8", "M9", "M10", "M11", "M12" ]
|
||||
},
|
||||
{
|
||||
"CropName": "Switchgrass",
|
||||
"CoverMonths": [ "M1", "M2", "M3", "M4", "M5", "M6", "M7", "M8", "M9", "M10", "M11", "M12" ]
|
||||
},
|
||||
{
|
||||
"CropName": "Willow",
|
||||
"CoverMonths": [ "M1", "M2", "M3", "M4", "M5", "M6", "M7", "M8", "M9", "M10", "M11", "M12" ]
|
||||
}
|
||||
]
|
||||
359
CarbonConsoleApp/config24/CropProperties.json
Normal file
359
CarbonConsoleApp/config24/CropProperties.json
Normal file
@@ -0,0 +1,359 @@
|
||||
[
|
||||
{
|
||||
"Name": "Perm_gras",
|
||||
"DM_content": 1.0,
|
||||
"FracR": 0.0,
|
||||
"C_input_CropRes": 5.1,
|
||||
"HarvestIndex": 0.444
|
||||
},
|
||||
{
|
||||
"Name": "Temp_gras",
|
||||
"DM_content": 1.0,
|
||||
"FracR": 0.0,
|
||||
"C_input_CropRes": 3.4,
|
||||
"HarvestIndex": 0.444
|
||||
},
|
||||
{
|
||||
"Name": "Nat_gras",
|
||||
"DM_content": 1.0,
|
||||
"FracR": 0.0,
|
||||
"C_input_CropRes": 5.1,
|
||||
"HarvestIndex": 0.444
|
||||
},
|
||||
{
|
||||
"Name": "Gras",
|
||||
"DM_content": 1.0,
|
||||
"FracR": 0.0,
|
||||
"C_input_CropRes": 4.59,
|
||||
"HarvestIndex": 0.444
|
||||
},
|
||||
{
|
||||
"Name": "Fodder_maize",
|
||||
"DM_content": 0.35,
|
||||
"FracR": 0.0,
|
||||
"C_input_CropRes": 1.1,
|
||||
"HarvestIndex": 0.67
|
||||
},
|
||||
{
|
||||
"Name": "Maize",
|
||||
"DM_content": 0.85,
|
||||
"FracR": 0.25,
|
||||
"C_input_CropRes": 0.0,
|
||||
"HarvestIndex": 0.46
|
||||
},
|
||||
{
|
||||
"Name": "Corn_cob_mix",
|
||||
"DM_content": 0.8,
|
||||
"FracR": 0.25,
|
||||
"C_input_CropRes": 0.0,
|
||||
"HarvestIndex": 0.46
|
||||
},
|
||||
{
|
||||
"Name": "Winter_wheat",
|
||||
"DM_content": 0.85,
|
||||
"FracR": 0.62,
|
||||
"C_input_CropRes": 0.0,
|
||||
"HarvestIndex": 0.46
|
||||
},
|
||||
{
|
||||
"Name": "Summer_wheat",
|
||||
"DM_content": 0.85,
|
||||
"FracR": 0.62,
|
||||
"C_input_CropRes": 0.0,
|
||||
"HarvestIndex": 0.46
|
||||
},
|
||||
{
|
||||
"Name": "Summer_barley",
|
||||
"DM_content": 0.85,
|
||||
"FracR": 0.43,
|
||||
"C_input_CropRes": 0.0,
|
||||
"HarvestIndex": 0.46
|
||||
},
|
||||
{
|
||||
"Name": "winter_barley",
|
||||
"DM_content": 0.85,
|
||||
"FracR": 0.43,
|
||||
"C_input_CropRes": 0.0,
|
||||
"HarvestIndex": 0.46
|
||||
},
|
||||
{
|
||||
"Name": "Sugarbeet",
|
||||
"DM_content": 0.25,
|
||||
"FracR": 0.0,
|
||||
"C_input_CropRes": 2.732142857142857,
|
||||
"HarvestIndex": 0.69
|
||||
},
|
||||
{
|
||||
"Name": "Cons_pot_clay",
|
||||
"DM_content": 0.24,
|
||||
"FracR": 0.0,
|
||||
"C_input_CropRes": 1.7897727272727275,
|
||||
"HarvestIndex": 0.69
|
||||
},
|
||||
{
|
||||
"Name": "Pot_clay",
|
||||
"DM_content": 0.24,
|
||||
"FracR": 0.0,
|
||||
"C_input_CropRes": 1.953409090909091,
|
||||
"HarvestIndex": 0.69
|
||||
},
|
||||
{
|
||||
"Name": "Starch_pot",
|
||||
"DM_content": 0.24,
|
||||
"FracR": 0.0,
|
||||
"C_input_CropRes": 1.6670454545454545,
|
||||
"HarvestIndex": 0.69
|
||||
},
|
||||
{
|
||||
"Name": "Cons_pot_sand",
|
||||
"DM_content": 0.24,
|
||||
"FracR": 0.0,
|
||||
"C_input_CropRes": 1.7897727272727275,
|
||||
"HarvestIndex": 0.69
|
||||
},
|
||||
{
|
||||
"Name": "Pot_sand",
|
||||
"DM_content": 0.24,
|
||||
"FracR": 0.0,
|
||||
"C_input_CropRes": 1.953409090909091,
|
||||
"HarvestIndex": 0.69
|
||||
},
|
||||
{
|
||||
"Name": "Vegetables_root",
|
||||
"DM_content": 0.099,
|
||||
"FracR": 0.0,
|
||||
"C_input_CropRes": 1.61648275862069,
|
||||
"HarvestIndex": 0.627333333333333
|
||||
},
|
||||
{
|
||||
"Name": "Vegetables_leaf",
|
||||
"DM_content": 0.04575,
|
||||
"FracR": 0.0,
|
||||
"C_input_CropRes": 0.704347826086956,
|
||||
"HarvestIndex": 0.56125
|
||||
},
|
||||
{
|
||||
"Name": "Vegetables_cabbage",
|
||||
"DM_content": 0.0837058823529412,
|
||||
"FracR": 0.0,
|
||||
"C_input_CropRes": 2.75625,
|
||||
"HarvestIndex": 0.472941176470588
|
||||
},
|
||||
{
|
||||
"Name": "Vegetables_stem",
|
||||
"DM_content": 0.0752,
|
||||
"FracR": 0.0,
|
||||
"C_input_CropRes": 0.704347826086956,
|
||||
"HarvestIndex": 0.602
|
||||
},
|
||||
{
|
||||
"Name": "Pumpkin",
|
||||
"DM_content": 0.183,
|
||||
"FracR": 0.0,
|
||||
"C_input_CropRes": 0.704347826086956,
|
||||
"HarvestIndex": 0.56
|
||||
},
|
||||
{
|
||||
"Name": "Chicory",
|
||||
"DM_content": 0.233,
|
||||
"FracR": 0.0,
|
||||
"C_input_CropRes": 1.40869565217391,
|
||||
"HarvestIndex": 0.6
|
||||
},
|
||||
{
|
||||
"Name": "Courgette",
|
||||
"DM_content": 0.048,
|
||||
"FracR": 0.0,
|
||||
"C_input_CropRes": 0.704347826086956,
|
||||
"HarvestIndex": 0.40
|
||||
},
|
||||
{
|
||||
"Name": "Other_veg",
|
||||
"DM_content": 0.10967,
|
||||
"FracR": 0.0,
|
||||
"C_input_CropRes": 1.22840281644892,
|
||||
"HarvestIndex": 0.54622
|
||||
},
|
||||
{
|
||||
"Name": "Grasseed",
|
||||
"DM_content": 0.85,
|
||||
"FracR": 0.0,
|
||||
"C_input_CropRes": 2.7155172413793105,
|
||||
"HarvestIndex": 0.2
|
||||
},
|
||||
{
|
||||
"Name": "Onion",
|
||||
"DM_content": 0.25,
|
||||
"FracR": 0.0,
|
||||
"C_input_CropRes": 0.5625,
|
||||
"HarvestIndex": 1.0
|
||||
},
|
||||
{
|
||||
"Name": "Bulbs",
|
||||
"DM_content": 0.25,
|
||||
"FracR": 0.0,
|
||||
"C_input_CropRes": 0.7575000000000001,
|
||||
"HarvestIndex": 1.0
|
||||
},
|
||||
{
|
||||
"Name": "Fallow",
|
||||
"DM_content": 0.0,
|
||||
"FracR": 0.0,
|
||||
"C_input_CropRes": 0.0,
|
||||
"HarvestIndex": 0.0
|
||||
},
|
||||
{
|
||||
"Name": "Nurseries",
|
||||
"DM_content": 0.25,
|
||||
"FracR": 0.0,
|
||||
"C_input_CropRes": 1.505,
|
||||
"HarvestIndex": 0.85
|
||||
},
|
||||
{
|
||||
"Name": "Pulses",
|
||||
"DM_content": 0.85,
|
||||
"FracR": 0.0,
|
||||
"C_input_CropRes": 2.0454545454545454,
|
||||
"HarvestIndex": 0.69
|
||||
},
|
||||
{
|
||||
"Name": "Apples",
|
||||
"DM_content": 0.14,
|
||||
"FracR": 0.0,
|
||||
"C_input_CropRes": 2.6,
|
||||
"HarvestIndex": 1.0
|
||||
},
|
||||
{
|
||||
"Name": "Pears",
|
||||
"DM_content": 0.14,
|
||||
"FracR": 0.0,
|
||||
"C_input_CropRes": 2.6,
|
||||
"HarvestIndex": 1.0
|
||||
},
|
||||
{
|
||||
"Name": "Luzerne",
|
||||
"DM_content": 0.25,
|
||||
"FracR": 0.0,
|
||||
"C_input_CropRes": 1.779,
|
||||
"HarvestIndex": 0.5
|
||||
},
|
||||
{
|
||||
"Name": "Other_crops",
|
||||
"DM_content": 0.7,
|
||||
"FracR": 0.0,
|
||||
"C_input_CropRes": 2.0359063662409858,
|
||||
"HarvestIndex": 0.5
|
||||
},
|
||||
{
|
||||
"Name": "Other_seeds",
|
||||
"DM_content": 0.85,
|
||||
"FracR": 0.0,
|
||||
"C_input_CropRes": 2.7155172413793105,
|
||||
"HarvestIndex": 0.5
|
||||
},
|
||||
{
|
||||
"Name": "Triticale",
|
||||
"DM_content": 0.85,
|
||||
"FracR": 0.5,
|
||||
"C_input_CropRes": 2.2790322580645164,
|
||||
"HarvestIndex": 0.46
|
||||
},
|
||||
{
|
||||
"Name": "Rapeseed",
|
||||
"DM_content": 0.85,
|
||||
"FracR": 0.5,
|
||||
"C_input_CropRes": 0.0,
|
||||
"HarvestIndex": 0.69
|
||||
},
|
||||
{
|
||||
"Name": "Strawberry",
|
||||
"DM_content": 0.15,
|
||||
"FracR": 0.0,
|
||||
"C_input_CropRes": 2.0,
|
||||
"HarvestIndex": 0.5
|
||||
},
|
||||
{
|
||||
"Name": "Rye",
|
||||
"DM_content": 0.85,
|
||||
"FracR": 0.5,
|
||||
"C_input_CropRes": 0.0,
|
||||
"HarvestIndex": 0.46
|
||||
},
|
||||
{
|
||||
"Name": "Other_fruits",
|
||||
"DM_content": 0.15,
|
||||
"FracR": 0.0,
|
||||
"C_input_CropRes": 2.6,
|
||||
"HarvestIndex": 1.0
|
||||
},
|
||||
{
|
||||
"Name": "oats",
|
||||
"DM_content": 0.85,
|
||||
"FracR": 0.5,
|
||||
"C_input_CropRes": 0.0,
|
||||
"HarvestIndex": 0.46
|
||||
},
|
||||
{
|
||||
"Name": "Green_manure",
|
||||
"DM_content": 0.25,
|
||||
"FracR": 0.0,
|
||||
"C_input_CropRes": 3.7,
|
||||
"HarvestIndex": 0.3
|
||||
},
|
||||
{
|
||||
"Name": "Fibres",
|
||||
"DM_content": 0.85,
|
||||
"FracR": 0.0,
|
||||
"C_input_CropRes": 0.13636363636363635,
|
||||
"HarvestIndex": 0.92
|
||||
},
|
||||
{
|
||||
"Name": "Sunflower",
|
||||
"DM_content": 0.85,
|
||||
"FracR": 0.0,
|
||||
"C_input_CropRes": 0.0,
|
||||
"HarvestIndex": 0.46
|
||||
},
|
||||
{
|
||||
"Name": "Fodder_beet",
|
||||
"DM_content": 0.25,
|
||||
"FracR": 0.0,
|
||||
"C_input_CropRes": 2.732142857142857,
|
||||
"HarvestIndex": 0.69
|
||||
},
|
||||
{
|
||||
"Name": "Other_cereals",
|
||||
"DM_content": 0.85,
|
||||
"FracR": 0.5,
|
||||
"C_input_CropRes": 2.0359063662409853,
|
||||
"HarvestIndex": 0.46
|
||||
},
|
||||
{
|
||||
"Name": "Wine",
|
||||
"DM_content": 0.15,
|
||||
"FracR": 0.0,
|
||||
"C_input_CropRes": 2.6,
|
||||
"HarvestIndex": 0.7
|
||||
},
|
||||
{
|
||||
"Name": "Miscanthus",
|
||||
"DM_content": 1.0,
|
||||
"FracR": 0.0,
|
||||
"C_input_CropRes": 5.1,
|
||||
"HarvestIndex": 0.444
|
||||
},
|
||||
{
|
||||
"Name": "Switchgrass",
|
||||
"DM_content": 1.0,
|
||||
"FracR": 0.0,
|
||||
"C_input_CropRes": 5.1,
|
||||
"HarvestIndex": 0.444
|
||||
},
|
||||
{
|
||||
"Name": "Willow",
|
||||
"DM_content": 1.0,
|
||||
"FracR": 0.0,
|
||||
"C_input_CropRes": 2.6,
|
||||
"HarvestIndex": 0.85
|
||||
}
|
||||
]
|
||||
78
CarbonConsoleApp/config24/CropSets.json
Normal file
78
CarbonConsoleApp/config24/CropSets.json
Normal file
@@ -0,0 +1,78 @@
|
||||
{
|
||||
"StrawCrops": [
|
||||
{
|
||||
"StrawCrop": "Maize",
|
||||
"DM_Content": 0.7
|
||||
},
|
||||
{
|
||||
"StrawCrop": "Corn_cob_mix",
|
||||
"DM_Content": 0.7
|
||||
},
|
||||
{
|
||||
"StrawCrop": "Winter_wheat",
|
||||
"DM_Content": 0.85
|
||||
},
|
||||
{
|
||||
"StrawCrop": "Summer_wheat",
|
||||
"DM_Content": 0.85
|
||||
},
|
||||
{
|
||||
"StrawCrop": "Summer_barley",
|
||||
"DM_Content": 0.85
|
||||
},
|
||||
{
|
||||
"StrawCrop": "winter_barley",
|
||||
"DM_Content": 0.85
|
||||
},
|
||||
{
|
||||
"StrawCrop": "Rapeseed",
|
||||
"DM_Content": 0.6
|
||||
},
|
||||
{
|
||||
"StrawCrop": "Rye",
|
||||
"DM_Content": 0.85
|
||||
},
|
||||
{
|
||||
"StrawCrop": "oats",
|
||||
"DM_Content": 0.85
|
||||
},
|
||||
{
|
||||
"StrawCrop": "Sunflower",
|
||||
"DM_Content": 0.6
|
||||
},
|
||||
{
|
||||
"StrawCrop": "Other_cereals",
|
||||
"DM_Content": 0.85
|
||||
}
|
||||
],
|
||||
"GreenManureType": [
|
||||
"Bladrammenas",
|
||||
"GeleMosterd",
|
||||
"Voederwikke",
|
||||
"Afrikaantjes",
|
||||
"JapanseHaver",
|
||||
"ItaliaansRaaigras",
|
||||
"Mengsel3soorten",
|
||||
"Mengsel12soorten",
|
||||
"EngelsRaaigras",
|
||||
"Facelia",
|
||||
"Grasland",
|
||||
"Overig",
|
||||
"Rietzwenkgras"
|
||||
],
|
||||
"Perennial": [
|
||||
"Nurseries",
|
||||
"Apples",
|
||||
"Pears",
|
||||
"Other_fruits",
|
||||
"Wine",
|
||||
"Miscanthus",
|
||||
"Switchgrass",
|
||||
"Willow"
|
||||
],
|
||||
"Grass_nat": [
|
||||
"Perm_gras",
|
||||
"Nat_gras",
|
||||
"Gras"
|
||||
]
|
||||
}
|
||||
1
CarbonConsoleApp/config24/CropYield.json
Normal file
1
CarbonConsoleApp/config24/CropYield.json
Normal file
File diff suppressed because one or more lines are too long
72
CarbonConsoleApp/config24/Farm_input_sets.json
Normal file
72
CarbonConsoleApp/config24/Farm_input_sets.json
Normal file
@@ -0,0 +1,72 @@
|
||||
{
|
||||
"ManureSources_liv": [
|
||||
{
|
||||
"ManureSource_liv": "WMGRAAS",
|
||||
"Description": "Weidemest graasdieren"
|
||||
},
|
||||
{
|
||||
"ManureSource_liv": "DMGRAAS",
|
||||
"Description": "Drijfmest graasdieren"
|
||||
},
|
||||
{
|
||||
"ManureSource_liv": "VMGRAAS",
|
||||
"Description": "Vaste mest graasdieren"
|
||||
},
|
||||
{
|
||||
"ManureSource_liv": "DMSTAL",
|
||||
"Description": "Drijfmest staldieren"
|
||||
},
|
||||
{
|
||||
"ManureSource_liv": "VMSTAL",
|
||||
"Description": "Vaste mest staldieren"
|
||||
},
|
||||
{
|
||||
"ManureSource_liv": "FRACDUN",
|
||||
"Description": "Dunne Fractie"
|
||||
},
|
||||
{
|
||||
"ManureSource_liv": "FRACDIK",
|
||||
"Description": "Dikke Fractie"
|
||||
},
|
||||
{
|
||||
"ManureSource_liv": "KMVERV",
|
||||
"Description": "Kunstmestvervangers"
|
||||
},
|
||||
{
|
||||
"ManureSource_liv": "DIGEST",
|
||||
"Description": "Digestaat"
|
||||
},
|
||||
{
|
||||
"ManureSource_liv": "CHAMPOST",
|
||||
"Description": "Champost"
|
||||
},
|
||||
{
|
||||
"ManureSource_liv": "SCHA_GEIT",
|
||||
"Description": "Schapen/geitenmest"
|
||||
},
|
||||
{
|
||||
"ManureSource_liv": "VMPIG",
|
||||
"Description": "Vaste varkensmest"
|
||||
},
|
||||
{
|
||||
"ManureSource_liv": "DM_ZEUG",
|
||||
"Description": "Zeugendrijfmest"
|
||||
},
|
||||
{
|
||||
"ManureSource_liv": "OVERIG",
|
||||
"Description": "Overig"
|
||||
}
|
||||
],
|
||||
"composts": [
|
||||
{
|
||||
"compost": "COMPOST",
|
||||
"Description": "compost"
|
||||
}
|
||||
],
|
||||
"CarbonSource": [
|
||||
"CarbonManure",
|
||||
"CarbonResidues",
|
||||
"CarbonGreenManure",
|
||||
"CarbonCompost"
|
||||
]
|
||||
}
|
||||
4529
CarbonConsoleApp/config24/FarmmapsRvoMiterraCrops.json
Normal file
4529
CarbonConsoleApp/config24/FarmmapsRvoMiterraCrops.json
Normal file
File diff suppressed because it is too large
Load Diff
7
CarbonConsoleApp/config24/GIS_Soil_Sets.json
Normal file
7
CarbonConsoleApp/config24/GIS_Soil_Sets.json
Normal file
@@ -0,0 +1,7 @@
|
||||
{
|
||||
"SoilType": [ "Moerig", "Veen", "Klei", "Zand", "Loss" ],
|
||||
"MineralSoils": [ "Klei", "Zand" ],
|
||||
"Months": [ "M1", "M2", "M3", "M4", "M5", "M6", "M7", "M8", "M9", "M10", "M11", "M12", "Total", "Average" ],
|
||||
"AllMonths": [ "M1", "M2", "M3", "M4", "M5", "M6", "M7", "M8", "M9", "M10", "M11", "M12" ],
|
||||
"ClimateVar": [ "Evapotranspiration", "Precipitation", "Temperature" ]
|
||||
}
|
||||
6721
CarbonConsoleApp/config24/KNMI_data.csv
Normal file
6721
CarbonConsoleApp/config24/KNMI_data.csv
Normal file
File diff suppressed because it is too large
Load Diff
1681
CarbonConsoleApp/config24/KNMI_data.csv.bak
Normal file
1681
CarbonConsoleApp/config24/KNMI_data.csv.bak
Normal file
File diff suppressed because it is too large
Load Diff
62
CarbonConsoleApp/config24/ManCcont.json
Normal file
62
CarbonConsoleApp/config24/ManCcont.json
Normal file
@@ -0,0 +1,62 @@
|
||||
[
|
||||
{
|
||||
"ManCcont": "WMGRAAS",
|
||||
"Value": 0.0356
|
||||
},
|
||||
{
|
||||
"ManCcont": "DMGRAAS",
|
||||
"Value": 0.0356
|
||||
},
|
||||
{
|
||||
"ManCcont": "VMGRAAS",
|
||||
"Value": 0.077385
|
||||
},
|
||||
{
|
||||
"ManCcont": "DMSTAL",
|
||||
"Value": 0.03955
|
||||
},
|
||||
{
|
||||
"ManCcont": "VMSTAL",
|
||||
"Value": 0.209715
|
||||
},
|
||||
{
|
||||
"ManCcont": "COMPOST",
|
||||
"Value": 0.10535
|
||||
},
|
||||
{
|
||||
"ManCcont": "FRACDUN",
|
||||
"Value": 0.01715
|
||||
},
|
||||
{
|
||||
"ManCcont": "FRACDIK",
|
||||
"Value": 0.0759
|
||||
},
|
||||
{
|
||||
"ManCcont": "KMVERV",
|
||||
"Value": 0.010585
|
||||
},
|
||||
{
|
||||
"ManCcont": "DIGEST",
|
||||
"Value": 0.01652
|
||||
},
|
||||
{
|
||||
"ManCcont": "CHAMPOST",
|
||||
"Value": 0.1050
|
||||
},
|
||||
{
|
||||
"ManCcont": "SCHA_GEIT",
|
||||
"Value": 0.09225
|
||||
},
|
||||
{
|
||||
"ManCcont": "VMPIG",
|
||||
"Value": 0.0765
|
||||
},
|
||||
{
|
||||
"ManCcont": "DM_ZEUG",
|
||||
"Value": 0.0125
|
||||
},
|
||||
{
|
||||
"ManCcont": "OVERIG",
|
||||
"Value": 0.01652
|
||||
}
|
||||
]
|
||||
File diff suppressed because one or more lines are too long
@@ -0,0 +1,303 @@
|
||||
[
|
||||
{
|
||||
"CropCode": "1020101",
|
||||
"CropName": "Wintertarwe",
|
||||
"PurposeCode": "118",
|
||||
"PurposeName": "Groenbemesting",
|
||||
"MiterraRothCCrop": ""
|
||||
},
|
||||
{
|
||||
"CropCode": "1020102",
|
||||
"CropName": "Wintergerst",
|
||||
"PurposeCode": "118",
|
||||
"PurposeName": "Groenbemesting",
|
||||
"MiterraRothCCrop": ""
|
||||
},
|
||||
{
|
||||
"CropCode": "1020103",
|
||||
"CropName": "Winterrogge",
|
||||
"PurposeCode": "118",
|
||||
"PurposeName": "Groenbemesting",
|
||||
"MiterraRothCCrop": ""
|
||||
},
|
||||
{
|
||||
"CropCode": "1020201",
|
||||
"CropName": "Zomertarwe",
|
||||
"PurposeCode": "118",
|
||||
"PurposeName": "Groenbemesting",
|
||||
"MiterraRothCCrop": ""
|
||||
},
|
||||
{
|
||||
"CropCode": "1020202",
|
||||
"CropName": "Zomergerst",
|
||||
"PurposeCode": "118",
|
||||
"PurposeName": "Groenbemesting",
|
||||
"MiterraRothCCrop": ""
|
||||
},
|
||||
{
|
||||
"CropCode": "1020203",
|
||||
"CropName": "Zomerrogge",
|
||||
"PurposeCode": "118",
|
||||
"PurposeName": "Groenbemesting",
|
||||
"MiterraRothCCrop": ""
|
||||
},
|
||||
{
|
||||
"CropCode": "1030301",
|
||||
"CropName": "Alexandrijnse klaver",
|
||||
"PurposeCode": "118",
|
||||
"PurposeName": "Groenbemesting",
|
||||
"MiterraRothCCrop": "Voederwikke"
|
||||
},
|
||||
{
|
||||
"CropCode": "1030302",
|
||||
"CropName": "Bastaard klaver",
|
||||
"PurposeCode": "118",
|
||||
"PurposeName": "Groenbemesting",
|
||||
"MiterraRothCCrop": "Voederwikke"
|
||||
},
|
||||
{
|
||||
"CropCode": "1030303",
|
||||
"CropName": "Hopklaver",
|
||||
"PurposeCode": "118",
|
||||
"PurposeName": "Groenbemesting",
|
||||
"MiterraRothCCrop": "Voederwikke"
|
||||
},
|
||||
{
|
||||
"CropCode": "1030304",
|
||||
"CropName": "Inkarnaatklaver",
|
||||
"PurposeCode": "118",
|
||||
"PurposeName": "Groenbemesting",
|
||||
"MiterraRothCCrop": "Voederwikke"
|
||||
},
|
||||
{
|
||||
"CropCode": "1030305",
|
||||
"CropName": "Perzische klaver",
|
||||
"PurposeCode": "118",
|
||||
"PurposeName": "Groenbemesting",
|
||||
"MiterraRothCCrop": "Voederwikke"
|
||||
},
|
||||
{
|
||||
"CropCode": "1030306",
|
||||
"CropName": "Rode klaver",
|
||||
"PurposeCode": "118",
|
||||
"PurposeName": "Groenbemesting",
|
||||
"MiterraRothCCrop": "Voederwikke"
|
||||
},
|
||||
{
|
||||
"CropCode": "1030307",
|
||||
"CropName": "Rolklaver",
|
||||
"PurposeCode": "118",
|
||||
"PurposeName": "Groenbemesting",
|
||||
"MiterraRothCCrop": "Voederwikke"
|
||||
},
|
||||
{
|
||||
"CropCode": "1030308",
|
||||
"CropName": "Witte honingklaver",
|
||||
"PurposeCode": "118",
|
||||
"PurposeName": "Groenbemesting",
|
||||
"MiterraRothCCrop": "Voederwikke"
|
||||
},
|
||||
{
|
||||
"CropCode": "1030309",
|
||||
"CropName": "Witte klaver",
|
||||
"PurposeCode": "118",
|
||||
"PurposeName": "Groenbemesting",
|
||||
"MiterraRothCCrop": "Voederwikke"
|
||||
},
|
||||
{
|
||||
"CropCode": "1030401",
|
||||
"CropName": "Blauwe Lupine",
|
||||
"PurposeCode": "118",
|
||||
"PurposeName": "Groenbemesting",
|
||||
"MiterraRothCCrop": "Voederwikke"
|
||||
},
|
||||
{
|
||||
"CropCode": "1030402",
|
||||
"CropName": "Gele Lupine",
|
||||
"PurposeCode": "118",
|
||||
"PurposeName": "Groenbemesting",
|
||||
"MiterraRothCCrop": "Voederwikke"
|
||||
},
|
||||
{
|
||||
"CropCode": "1030403",
|
||||
"CropName": "Witte Lupine",
|
||||
"PurposeCode": "118",
|
||||
"PurposeName": "Groenbemesting",
|
||||
"MiterraRothCCrop": "Voederwikke"
|
||||
},
|
||||
{
|
||||
"CropCode": "1030501",
|
||||
"CropName": "Voederwikke",
|
||||
"PurposeCode": "118",
|
||||
"PurposeName": "Groenbemesting",
|
||||
"MiterraRothCCrop": "Voederwikke"
|
||||
},
|
||||
{
|
||||
"CropCode": "1030502",
|
||||
"CropName": "Bonte wikke",
|
||||
"PurposeCode": "118",
|
||||
"PurposeName": "Groenbemesting",
|
||||
"MiterraRothCCrop": "Voederwikke"
|
||||
},
|
||||
{
|
||||
"CropCode": "1030602",
|
||||
"CropName": "Hanekam",
|
||||
"PurposeCode": "118",
|
||||
"PurposeName": "Groenbemesting",
|
||||
"MiterraRothCCrop": "Overig"
|
||||
},
|
||||
{
|
||||
"CropCode": "1040101",
|
||||
"CropName": "Stoppelknol",
|
||||
"PurposeCode": "118",
|
||||
"PurposeName": "Groenbemesting",
|
||||
"MiterraRothCCrop": "Overig"
|
||||
},
|
||||
{
|
||||
"CropCode": "1040102",
|
||||
"CropName": "Bladrammenas",
|
||||
"PurposeCode": "118",
|
||||
"PurposeName": "Groenbemesting",
|
||||
"MiterraRothCCrop": "Bladrammenas"
|
||||
},
|
||||
{
|
||||
"CropCode": "1040103",
|
||||
"CropName": "Bruine mosterd",
|
||||
"PurposeCode": "118",
|
||||
"PurposeName": "Groenbemesting",
|
||||
"MiterraRothCCrop": "GeleMosterd"
|
||||
},
|
||||
{
|
||||
"CropCode": "1040104",
|
||||
"CropName": "Gele mosterd",
|
||||
"PurposeCode": "118",
|
||||
"PurposeName": "Groenbemesting",
|
||||
"MiterraRothCCrop": "GeleMosterd"
|
||||
},
|
||||
{
|
||||
"CropCode": "1040105",
|
||||
"CropName": "Zwarte mosterd",
|
||||
"PurposeCode": "118",
|
||||
"PurposeName": "Groenbemesting",
|
||||
"MiterraRothCCrop": "GeleMosterd"
|
||||
},
|
||||
{
|
||||
"CropCode": "1040108",
|
||||
"CropName": "Bladkool",
|
||||
"PurposeCode": "118",
|
||||
"PurposeName": "Groenbemesting",
|
||||
"MiterraRothCCrop": "Overig"
|
||||
},
|
||||
{
|
||||
"CropCode": "1040109",
|
||||
"CropName": "Mergkool",
|
||||
"PurposeCode": "118",
|
||||
"PurposeName": "Groenbemesting",
|
||||
"MiterraRothCCrop": "Overig"
|
||||
},
|
||||
{
|
||||
"CropCode": "1040110",
|
||||
"CropName": "Ethiopische mosterd",
|
||||
"PurposeCode": "118",
|
||||
"PurposeName": "Groenbemesting",
|
||||
"MiterraRothCCrop": "GeleMosterd"
|
||||
},
|
||||
{
|
||||
"CropCode": "1040111",
|
||||
"CropName": "Serepta mosterd",
|
||||
"PurposeCode": "118",
|
||||
"PurposeName": "Groenbemesting",
|
||||
"MiterraRothCCrop": "GeleMosterd"
|
||||
},
|
||||
{
|
||||
"CropCode": "1040112",
|
||||
"CropName": "Zwaardherik",
|
||||
"PurposeCode": "118",
|
||||
"PurposeName": "Groenbemesting",
|
||||
"MiterraRothCCrop": "Overig"
|
||||
},
|
||||
{
|
||||
"CropCode": "1050101",
|
||||
"CropName": "Engels raaigras",
|
||||
"PurposeCode": "118",
|
||||
"PurposeName": "Groenbemesting",
|
||||
"MiterraRothCCrop": "EngelsRaaigras"
|
||||
},
|
||||
{
|
||||
"CropCode": "1050102",
|
||||
"CropName": "Frans raaigras",
|
||||
"PurposeCode": "118",
|
||||
"PurposeName": "Groenbemesting",
|
||||
"MiterraRothCCrop": "ItaliaansRaaigras"
|
||||
},
|
||||
{
|
||||
"CropCode": "1050103",
|
||||
"CropName": "Gekruist raaigras",
|
||||
"PurposeCode": "118",
|
||||
"PurposeName": "Groenbemesting",
|
||||
"MiterraRothCCrop": "ItaliaansRaaigras"
|
||||
},
|
||||
{
|
||||
"CropCode": "1050104",
|
||||
"CropName": "Italiaans raaigras",
|
||||
"PurposeCode": "118",
|
||||
"PurposeName": "Groenbemesting",
|
||||
"MiterraRothCCrop": "ItaliaansRaaigras"
|
||||
},
|
||||
{
|
||||
"CropCode": "1050105",
|
||||
"CropName": "Trosraaigras",
|
||||
"PurposeCode": "118",
|
||||
"PurposeName": "Groenbemesting",
|
||||
"MiterraRothCCrop": "ItaliaansRaaigras"
|
||||
},
|
||||
{
|
||||
"CropCode": "1050106",
|
||||
"CropName": "Westerwolds raaigras",
|
||||
"PurposeCode": "118",
|
||||
"PurposeName": "Groenbemesting",
|
||||
"MiterraRothCCrop": "ItaliaansRaaigras"
|
||||
},
|
||||
{
|
||||
"CropCode": "1050201",
|
||||
"CropName": "Roodzwenkgras",
|
||||
"PurposeCode": "118",
|
||||
"PurposeName": "Groenbemesting",
|
||||
"MiterraRothCCrop": "Rietzwenkgras"
|
||||
},
|
||||
{
|
||||
"CropCode": "1050408",
|
||||
"CropName": "Sudangras",
|
||||
"PurposeCode": "118",
|
||||
"PurposeName": "Groenbemesting",
|
||||
"MiterraRothCCrop": "Rietzwenkgras"
|
||||
},
|
||||
{
|
||||
"CropCode": "1080107",
|
||||
"CropName": "Facelia",
|
||||
"PurposeCode": "118",
|
||||
"PurposeName": "Groenbemesting",
|
||||
"MiterraRothCCrop": "Facelia"
|
||||
},
|
||||
{
|
||||
"CropCode": "1080108",
|
||||
"CropName": "Spurrie",
|
||||
"PurposeCode": "118",
|
||||
"PurposeName": "Groenbemesting",
|
||||
"MiterraRothCCrop": "Overig"
|
||||
},
|
||||
{
|
||||
"CropCode": "1080109",
|
||||
"CropName": "Afrikaantjes",
|
||||
"PurposeCode": "118",
|
||||
"PurposeName": "Groenbemesting",
|
||||
"MiterraRothCCrop": "Afrikaantjes"
|
||||
},
|
||||
{
|
||||
"CropCode": "1080110",
|
||||
"CropName": "Raketblad",
|
||||
"PurposeCode": "118",
|
||||
"PurposeName": "Groenbemesting",
|
||||
"MiterraRothCCrop": "Overig"
|
||||
}
|
||||
]
|
||||
1
CarbonConsoleApp/config24/PC4/PC4.cpg
Normal file
1
CarbonConsoleApp/config24/PC4/PC4.cpg
Normal file
@@ -0,0 +1 @@
|
||||
UTF-8
|
||||
BIN
CarbonConsoleApp/config24/PC4/PC4.dbf
Normal file
BIN
CarbonConsoleApp/config24/PC4/PC4.dbf
Normal file
Binary file not shown.
1
CarbonConsoleApp/config24/PC4/PC4.prj
Normal file
1
CarbonConsoleApp/config24/PC4/PC4.prj
Normal file
@@ -0,0 +1 @@
|
||||
PROJCS["RD_New",GEOGCS["GCS_Amersfoort",DATUM["D_Amersfoort",SPHEROID["Bessel_1841",6377397.155,299.1528128]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Double_Stereographic"],PARAMETER["False_Easting",155000.0],PARAMETER["False_Northing",463000.0],PARAMETER["Central_Meridian",5.38763888888889],PARAMETER["Scale_Factor",0.9999079],PARAMETER["Latitude_Of_Origin",52.15616055555555],UNIT["Meter",1.0]]
|
||||
BIN
CarbonConsoleApp/config24/PC4/PC4.shp
Normal file
BIN
CarbonConsoleApp/config24/PC4/PC4.shp
Normal file
Binary file not shown.
BIN
CarbonConsoleApp/config24/PC4/PC4.shx
Normal file
BIN
CarbonConsoleApp/config24/PC4/PC4.shx
Normal file
Binary file not shown.
10
CarbonConsoleApp/config24/ParametersRothC.json
Normal file
10
CarbonConsoleApp/config24/ParametersRothC.json
Normal file
@@ -0,0 +1,10 @@
|
||||
{
|
||||
"LayerDepth": 25.0,
|
||||
"kDPM": 10.0,
|
||||
"kRPM": 0.3,
|
||||
"kBIO": 0.66,
|
||||
"kHUM": 0.02,
|
||||
"StubbleFraction": 0.45,
|
||||
"CarbonBiomass": 0.45,
|
||||
"FracBelowGroundCinput": 0.25
|
||||
}
|
||||
4035
CarbonConsoleApp/config24/RegionSets.json
Normal file
4035
CarbonConsoleApp/config24/RegionSets.json
Normal file
File diff suppressed because it is too large
Load Diff
1
CarbonConsoleApp/config24/RvoCrops.json
Normal file
1
CarbonConsoleApp/config24/RvoCrops.json
Normal file
File diff suppressed because one or more lines are too long
8155
CarbonConsoleApp/config24/SetsForDataTransformation.json
Normal file
8155
CarbonConsoleApp/config24/SetsForDataTransformation.json
Normal file
File diff suppressed because it is too large
Load Diff
123
CarbonConsoleApp/config24/YieldGreenManure.json
Normal file
123
CarbonConsoleApp/config24/YieldGreenManure.json
Normal file
@@ -0,0 +1,123 @@
|
||||
[
|
||||
{
|
||||
"ManureName": "Bladrammenas",
|
||||
"GoodQuality": 3.573099415204678,
|
||||
"AverageQuality": 2.5011695906432747,
|
||||
"BadQuality": 1.786549707602339
|
||||
},
|
||||
{
|
||||
"ManureName": "GeleMosterd",
|
||||
"GoodQuality": 2.05696405648267,
|
||||
"AverageQuality": 1.4398748395378689,
|
||||
"BadQuality": 1.028482028241335
|
||||
},
|
||||
{
|
||||
"ManureName": "Voederwikke",
|
||||
"GoodQuality": 1.2933673469387754,
|
||||
"AverageQuality": 0.9053571428571427,
|
||||
"BadQuality": 0.6466836734693877
|
||||
},
|
||||
{
|
||||
"ManureName": "Afrikaantjes",
|
||||
"GoodQuality": 2.8392857142857153,
|
||||
"AverageQuality": 1.9875000000000005,
|
||||
"BadQuality": 1.4196428571428577
|
||||
},
|
||||
{
|
||||
"ManureName": "JapanseHaver",
|
||||
"GoodQuality": 2.5844583333333335,
|
||||
"AverageQuality": 1.8091208333333333,
|
||||
"BadQuality": 1.2922291666666668
|
||||
},
|
||||
{
|
||||
"ManureName": "ItaliaansRaaigras",
|
||||
"GoodQuality": 3.1635153508771934,
|
||||
"AverageQuality": 2.2144607456140353,
|
||||
"BadQuality": 1.5817576754385967
|
||||
},
|
||||
{
|
||||
"ManureName": "Rogge",
|
||||
"GoodQuality": 2.5,
|
||||
"AverageQuality": 1.75,
|
||||
"BadQuality": 1.25
|
||||
},
|
||||
{
|
||||
"ManureName": "Graan",
|
||||
"GoodQuality": 2.2,
|
||||
"AverageQuality": 1.54,
|
||||
"BadQuality": 1.1
|
||||
},
|
||||
{
|
||||
"ManureName": "Haver",
|
||||
"GoodQuality": 2.6,
|
||||
"AverageQuality": 1.82,
|
||||
"BadQuality": 1.3
|
||||
},
|
||||
{
|
||||
"ManureName": "Gerst",
|
||||
"GoodQuality": 2.55,
|
||||
"AverageQuality": 1.785,
|
||||
"BadQuality": 1.275
|
||||
},
|
||||
{
|
||||
"ManureName": "Mengsel_groenbraak",
|
||||
"GoodQuality": 2.8,
|
||||
"AverageQuality": 1.96,
|
||||
"BadQuality": 1.4
|
||||
},
|
||||
{
|
||||
"ManureName": "Mengsel_natuurbraak",
|
||||
"GoodQuality": 3.0,
|
||||
"AverageQuality": 2.1,
|
||||
"BadQuality": 1.5
|
||||
},
|
||||
{
|
||||
"ManureName": "Mengsel_Nbron",
|
||||
"GoodQuality": 2.8,
|
||||
"AverageQuality": 1.96,
|
||||
"BadQuality": 1.4
|
||||
},
|
||||
{
|
||||
"ManureName": "Mengsel_Nvang",
|
||||
"GoodQuality": 2.8,
|
||||
"AverageQuality": 1.96,
|
||||
"BadQuality": 1.4
|
||||
},
|
||||
{
|
||||
"ManureName": "EngelsRaaigras",
|
||||
"GoodQuality": 3.1635153508771934,
|
||||
"AverageQuality": 2.2144607456140353,
|
||||
"BadQuality": 1.5817576754385967
|
||||
},
|
||||
{
|
||||
"ManureName": "Facelia",
|
||||
"GoodQuality": 0.2925,
|
||||
"AverageQuality": 0.20475,
|
||||
"BadQuality": 0.14625
|
||||
},
|
||||
{
|
||||
"ManureName": "Grasland",
|
||||
"GoodQuality": 3.418421052631579,
|
||||
"AverageQuality": 2.3928947368421056,
|
||||
"BadQuality": 1.7092105263157895
|
||||
},
|
||||
{
|
||||
"ManureName": "Overig",
|
||||
"GoodQuality": 6.728475765306122,
|
||||
"AverageQuality": 4.709933035714285,
|
||||
"BadQuality": 3.364237882653061
|
||||
},
|
||||
{
|
||||
"ManureName": "Rietzwenkgras",
|
||||
"GoodQuality": 3.1635153508771934,
|
||||
"AverageQuality": 2.2144607456140353,
|
||||
"BadQuality": 1.5817576754385967
|
||||
},
|
||||
{
|
||||
"ManureName": "Triticale",
|
||||
"GoodQuality": 2.2,
|
||||
"AverageQuality": 1.54,
|
||||
"BadQuality": 1.1
|
||||
}
|
||||
|
||||
]
|
||||
40321
CarbonConsoleApp/config24/klimaatscenario.csv
Normal file
40321
CarbonConsoleApp/config24/klimaatscenario.csv
Normal file
File diff suppressed because it is too large
Load Diff
206
CarbonConsoleApp/config25/CropCoverMonth.json
Normal file
206
CarbonConsoleApp/config25/CropCoverMonth.json
Normal file
@@ -0,0 +1,206 @@
|
||||
[
|
||||
{
|
||||
"CropName": "Perm_gras",
|
||||
"CoverMonths": [ "M1", "M2", "M3", "M4", "M5", "M6", "M7", "M8", "M9", "M10", "M11", "M12" ]
|
||||
},
|
||||
{
|
||||
"CropName": "Temp_gras",
|
||||
"CoverMonths": [ "M1", "M2", "M3", "M4", "M5", "M6", "M7", "M8", "M9", "M10", "M11", "M12" ]
|
||||
},
|
||||
{
|
||||
"CropName": "Nat_gras",
|
||||
"CoverMonths": [ "M1", "M2", "M3", "M4", "M5", "M6", "M7", "M8", "M9", "M10", "M11", "M12" ]
|
||||
},
|
||||
{
|
||||
"CropName": "Gras",
|
||||
"CoverMonths": [ "M1", "M2", "M3", "M4", "M5", "M6", "M7", "M8", "M9", "M10", "M11", "M12" ]
|
||||
},
|
||||
{
|
||||
"CropName": "Fodder_maize",
|
||||
"CoverMonths": [ "M6", "M7", "M8", "M9" ]
|
||||
},
|
||||
{
|
||||
"CropName": "Maize",
|
||||
"CoverMonths": [ "M6", "M7", "M8", "M9" ]
|
||||
},
|
||||
{
|
||||
"CropName": "Corn_cob_mix",
|
||||
"CoverMonths": [ "M6", "M7", "M8", "M9" ]
|
||||
},
|
||||
{
|
||||
"CropName": "Winter_wheat",
|
||||
"CoverMonths": [ "M1", "M2", "M3", "M4", "M5", "M6", "M7", "M12" ]
|
||||
},
|
||||
{
|
||||
"CropName": "Summer_wheat",
|
||||
"CoverMonths": [ "M5", "M6", "M7", "M8" ]
|
||||
},
|
||||
{
|
||||
"CropName": "Summer_barley",
|
||||
"CoverMonths": [ "M5", "M6", "M7", "M8" ]
|
||||
},
|
||||
{
|
||||
"CropName": "winter_barley",
|
||||
"CoverMonths": [ "M1", "M2", "M3", "M4", "M5", "M6", "M7", "M12" ]
|
||||
},
|
||||
{
|
||||
"CropName": "Sugarbeet",
|
||||
"CoverMonths": [ "M6", "M7", "M8", "M9", "M10" ]
|
||||
},
|
||||
{
|
||||
"CropName": "Cons_pot_clay",
|
||||
"CoverMonths": [ "M5", "M6", "M7", "M8" ]
|
||||
},
|
||||
{
|
||||
"CropName": "Pot_clay",
|
||||
"CoverMonths": [ "M5", "M6", "M7", "M8" ]
|
||||
},
|
||||
{
|
||||
"CropName": "Starch_pot",
|
||||
"CoverMonths": [ "M5", "M6", "M7", "M8" ]
|
||||
},
|
||||
{
|
||||
"CropName": "Cons_pot_sand",
|
||||
"CoverMonths": [ "M5", "M6", "M7", "M8" ]
|
||||
},
|
||||
{
|
||||
"CropName": "Pot_sand",
|
||||
"CoverMonths": [ "M5", "M6", "M7", "M8" ]
|
||||
},
|
||||
{
|
||||
"CropName": "Vegetables_root",
|
||||
"CoverMonths": [ "M5", "M6", "M7", "M8", "M9", "M10" ]
|
||||
},
|
||||
{
|
||||
"CropName": "Vegetables_leaf",
|
||||
"CoverMonths": [ "M5", "M6", "M7", "M8", "M9", "M10" ]
|
||||
},
|
||||
{
|
||||
"CropName": "Vegetables_cabbage",
|
||||
"CoverMonths": [ "M6", "M7", "M8", "M9" ]
|
||||
},
|
||||
{
|
||||
"CropName": "Vegetables_stem",
|
||||
"CoverMonths": [ "M5", "M6", "M7", "M8", "M9", "M10" ]
|
||||
},
|
||||
{
|
||||
"CropName": "Pumpkin",
|
||||
"CoverMonths": [ "M6", "M7", "M8", "M9" ]
|
||||
},
|
||||
{
|
||||
"CropName": "Chicory",
|
||||
"CoverMonths": [ "M5", "M6", "M7", "M8", "M9", "M10" ]
|
||||
},
|
||||
{
|
||||
"CropName": "Courgette",
|
||||
"CoverMonths": [ "M5", "M6", "M7" ]
|
||||
},
|
||||
{
|
||||
"CropName": "Other_veg",
|
||||
"CoverMonths": [ "M5", "M6", "M7", "M8", "M9", "M10" ]
|
||||
},
|
||||
{
|
||||
"CropName": "Grasseed",
|
||||
"CoverMonths": [ "M1", "M2", "M3", "M4", "M5", "M6", "M7", "M8", "M9", "M10", "M11", "M12" ]
|
||||
},
|
||||
{
|
||||
"CropName": "Onion",
|
||||
"CoverMonths": [ "M5", "M6", "M7", "M8" ]
|
||||
},
|
||||
{
|
||||
"CropName": "Bulbs",
|
||||
"CoverMonths": [ "M4", "M5", "M6", "M7", "M8" ]
|
||||
},
|
||||
{
|
||||
"CropName": "Fallow",
|
||||
"CoverMonths": []
|
||||
},
|
||||
{
|
||||
"CropName": "Nurseries",
|
||||
"CoverMonths": [ "M1", "M2", "M3", "M4", "M5", "M6", "M7", "M8", "M9", "M10", "M11", "M12" ]
|
||||
},
|
||||
{
|
||||
"CropName": "Pulses",
|
||||
"CoverMonths": [ "M5", "M6", "M7" ]
|
||||
},
|
||||
{
|
||||
"CropName": "Apples",
|
||||
"CoverMonths": [ "M1", "M2", "M3", "M4", "M5", "M6", "M7", "M8", "M9", "M10", "M11", "M12" ]
|
||||
},
|
||||
{
|
||||
"CropName": "Pears",
|
||||
"CoverMonths": [ "M1", "M2", "M3", "M4", "M5", "M6", "M7", "M8", "M9", "M10", "M11", "M12" ]
|
||||
},
|
||||
{
|
||||
"CropName": "Luzerne",
|
||||
"CoverMonths": [ "M1", "M2", "M3", "M4", "M5", "M6", "M7", "M8", "M9", "M10", "M11", "M12" ]
|
||||
},
|
||||
{
|
||||
"CropName": "Other_crops",
|
||||
"CoverMonths": [ "M5", "M6", "M7", "M8" ]
|
||||
},
|
||||
{
|
||||
"CropName": "Other_seeds",
|
||||
"CoverMonths": [ "M5", "M6", "M7", "M8" ]
|
||||
},
|
||||
{
|
||||
"CropName": "Triticale",
|
||||
"CoverMonths": [ "M5", "M6", "M7", "M8" ]
|
||||
},
|
||||
{
|
||||
"CropName": "Rapeseed",
|
||||
"CoverMonths": [ "M1", "M2", "M3", "M4", "M5", "M6", "M7", "M12" ]
|
||||
},
|
||||
{
|
||||
"CropName": "Strawberry",
|
||||
"CoverMonths": [ "M4", "M5", "M6", "M7", "M8", "M9", "M10" ]
|
||||
},
|
||||
{
|
||||
"CropName": "Rye",
|
||||
"CoverMonths": [ "M4", "M5", "M6", "M7" ]
|
||||
},
|
||||
{
|
||||
"CropName": "Other_fruits",
|
||||
"CoverMonths": [ "M1", "M2", "M3", "M4", "M5", "M6", "M7", "M8", "M9", "M10", "M11", "M12" ]
|
||||
},
|
||||
{
|
||||
"CropName": "oats",
|
||||
"CoverMonths": [ "M5", "M6", "M7", "M8" ]
|
||||
},
|
||||
{
|
||||
"CropName": "Green_manure",
|
||||
"CoverMonths": [ "M1", "M2", "M3", "M9", "M10", "M11", "M12" ]
|
||||
},
|
||||
{
|
||||
"CropName": "Fibres",
|
||||
"CoverMonths": [ "M5", "M6", "M7", "M8" ]
|
||||
},
|
||||
{
|
||||
"CropName": "Sunflower",
|
||||
"CoverMonths": [ "M5", "M6", "M7", "M8" ]
|
||||
},
|
||||
{
|
||||
"CropName": "Fodder_beet",
|
||||
"CoverMonths": [ "M6", "M7", "M8", "M9" ]
|
||||
},
|
||||
{
|
||||
"CropName": "Other_cereals",
|
||||
"CoverMonths": [ "M5", "M6", "M7", "M8" ]
|
||||
},
|
||||
{
|
||||
"CropName": "Wine",
|
||||
"CoverMonths": [ "M1", "M2", "M3", "M4", "M5", "M6", "M7", "M8", "M9", "M10", "M11", "M12" ]
|
||||
},
|
||||
{
|
||||
"CropName": "Miscanthus",
|
||||
"CoverMonths": [ "M1", "M2", "M3", "M4", "M5", "M6", "M7", "M8", "M9", "M10", "M11", "M12" ]
|
||||
},
|
||||
{
|
||||
"CropName": "Switchgrass",
|
||||
"CoverMonths": [ "M1", "M2", "M3", "M4", "M5", "M6", "M7", "M8", "M9", "M10", "M11", "M12" ]
|
||||
},
|
||||
{
|
||||
"CropName": "Willow",
|
||||
"CoverMonths": [ "M1", "M2", "M3", "M4", "M5", "M6", "M7", "M8", "M9", "M10", "M11", "M12" ]
|
||||
}
|
||||
]
|
||||
359
CarbonConsoleApp/config25/CropProperties.json
Normal file
359
CarbonConsoleApp/config25/CropProperties.json
Normal file
@@ -0,0 +1,359 @@
|
||||
[
|
||||
{
|
||||
"Name": "Perm_gras",
|
||||
"DM_content": 1.0,
|
||||
"FracR": 0.0,
|
||||
"C_input_CropRes": 5.1,
|
||||
"HarvestIndex": 0.444
|
||||
},
|
||||
{
|
||||
"Name": "Temp_gras",
|
||||
"DM_content": 1.0,
|
||||
"FracR": 0.0,
|
||||
"C_input_CropRes": 3.4,
|
||||
"HarvestIndex": 0.444
|
||||
},
|
||||
{
|
||||
"Name": "Nat_gras",
|
||||
"DM_content": 1.0,
|
||||
"FracR": 0.0,
|
||||
"C_input_CropRes": 5.1,
|
||||
"HarvestIndex": 0.444
|
||||
},
|
||||
{
|
||||
"Name": "Gras",
|
||||
"DM_content": 1.0,
|
||||
"FracR": 0.0,
|
||||
"C_input_CropRes": 4.59,
|
||||
"HarvestIndex": 0.444
|
||||
},
|
||||
{
|
||||
"Name": "Fodder_maize",
|
||||
"DM_content": 0.35,
|
||||
"FracR": 0.0,
|
||||
"C_input_CropRes": 1.1,
|
||||
"HarvestIndex": 0.67
|
||||
},
|
||||
{
|
||||
"Name": "Maize",
|
||||
"DM_content": 0.85,
|
||||
"FracR": 0.25,
|
||||
"C_input_CropRes": 0.0,
|
||||
"HarvestIndex": 0.46
|
||||
},
|
||||
{
|
||||
"Name": "Corn_cob_mix",
|
||||
"DM_content": 0.8,
|
||||
"FracR": 0.25,
|
||||
"C_input_CropRes": 0.0,
|
||||
"HarvestIndex": 0.46
|
||||
},
|
||||
{
|
||||
"Name": "Winter_wheat",
|
||||
"DM_content": 0.85,
|
||||
"FracR": 0.62,
|
||||
"C_input_CropRes": 0.0,
|
||||
"HarvestIndex": 0.46
|
||||
},
|
||||
{
|
||||
"Name": "Summer_wheat",
|
||||
"DM_content": 0.85,
|
||||
"FracR": 0.62,
|
||||
"C_input_CropRes": 0.0,
|
||||
"HarvestIndex": 0.46
|
||||
},
|
||||
{
|
||||
"Name": "Summer_barley",
|
||||
"DM_content": 0.85,
|
||||
"FracR": 0.43,
|
||||
"C_input_CropRes": 0.0,
|
||||
"HarvestIndex": 0.46
|
||||
},
|
||||
{
|
||||
"Name": "winter_barley",
|
||||
"DM_content": 0.85,
|
||||
"FracR": 0.43,
|
||||
"C_input_CropRes": 0.0,
|
||||
"HarvestIndex": 0.46
|
||||
},
|
||||
{
|
||||
"Name": "Sugarbeet",
|
||||
"DM_content": 0.25,
|
||||
"FracR": 0.0,
|
||||
"C_input_CropRes": 2.732142857142857,
|
||||
"HarvestIndex": 0.69
|
||||
},
|
||||
{
|
||||
"Name": "Cons_pot_clay",
|
||||
"DM_content": 0.24,
|
||||
"FracR": 0.0,
|
||||
"C_input_CropRes": 1.7897727272727275,
|
||||
"HarvestIndex": 0.69
|
||||
},
|
||||
{
|
||||
"Name": "Pot_clay",
|
||||
"DM_content": 0.24,
|
||||
"FracR": 0.0,
|
||||
"C_input_CropRes": 1.953409090909091,
|
||||
"HarvestIndex": 0.69
|
||||
},
|
||||
{
|
||||
"Name": "Starch_pot",
|
||||
"DM_content": 0.24,
|
||||
"FracR": 0.0,
|
||||
"C_input_CropRes": 1.6670454545454545,
|
||||
"HarvestIndex": 0.69
|
||||
},
|
||||
{
|
||||
"Name": "Cons_pot_sand",
|
||||
"DM_content": 0.24,
|
||||
"FracR": 0.0,
|
||||
"C_input_CropRes": 1.7897727272727275,
|
||||
"HarvestIndex": 0.69
|
||||
},
|
||||
{
|
||||
"Name": "Pot_sand",
|
||||
"DM_content": 0.24,
|
||||
"FracR": 0.0,
|
||||
"C_input_CropRes": 1.953409090909091,
|
||||
"HarvestIndex": 0.69
|
||||
},
|
||||
{
|
||||
"Name": "Vegetables_root",
|
||||
"DM_content": 0.099,
|
||||
"FracR": 0.0,
|
||||
"C_input_CropRes": 1.61648275862069,
|
||||
"HarvestIndex": 0.627333333333333
|
||||
},
|
||||
{
|
||||
"Name": "Vegetables_leaf",
|
||||
"DM_content": 0.04575,
|
||||
"FracR": 0.0,
|
||||
"C_input_CropRes": 0.704347826086956,
|
||||
"HarvestIndex": 0.56125
|
||||
},
|
||||
{
|
||||
"Name": "Vegetables_cabbage",
|
||||
"DM_content": 0.0837058823529412,
|
||||
"FracR": 0.0,
|
||||
"C_input_CropRes": 2.75625,
|
||||
"HarvestIndex": 0.472941176470588
|
||||
},
|
||||
{
|
||||
"Name": "Vegetables_stem",
|
||||
"DM_content": 0.0752,
|
||||
"FracR": 0.0,
|
||||
"C_input_CropRes": 0.704347826086956,
|
||||
"HarvestIndex": 0.602
|
||||
},
|
||||
{
|
||||
"Name": "Pumpkin",
|
||||
"DM_content": 0.183,
|
||||
"FracR": 0.0,
|
||||
"C_input_CropRes": 0.704347826086956,
|
||||
"HarvestIndex": 0.56
|
||||
},
|
||||
{
|
||||
"Name": "Chicory",
|
||||
"DM_content": 0.233,
|
||||
"FracR": 0.0,
|
||||
"C_input_CropRes": 1.40869565217391,
|
||||
"HarvestIndex": 0.6
|
||||
},
|
||||
{
|
||||
"Name": "Courgette",
|
||||
"DM_content": 0.048,
|
||||
"FracR": 0.0,
|
||||
"C_input_CropRes": 0.704347826086956,
|
||||
"HarvestIndex": 0.40
|
||||
},
|
||||
{
|
||||
"Name": "Other_veg",
|
||||
"DM_content": 0.10967,
|
||||
"FracR": 0.0,
|
||||
"C_input_CropRes": 1.22840281644892,
|
||||
"HarvestIndex": 0.54622
|
||||
},
|
||||
{
|
||||
"Name": "Grasseed",
|
||||
"DM_content": 0.85,
|
||||
"FracR": 0.0,
|
||||
"C_input_CropRes": 2.7155172413793105,
|
||||
"HarvestIndex": 0.2
|
||||
},
|
||||
{
|
||||
"Name": "Onion",
|
||||
"DM_content": 0.25,
|
||||
"FracR": 0.0,
|
||||
"C_input_CropRes": 0.5625,
|
||||
"HarvestIndex": 1.0
|
||||
},
|
||||
{
|
||||
"Name": "Bulbs",
|
||||
"DM_content": 0.25,
|
||||
"FracR": 0.0,
|
||||
"C_input_CropRes": 0.7575000000000001,
|
||||
"HarvestIndex": 1.0
|
||||
},
|
||||
{
|
||||
"Name": "Fallow",
|
||||
"DM_content": 0.0,
|
||||
"FracR": 0.0,
|
||||
"C_input_CropRes": 0.0,
|
||||
"HarvestIndex": 0.0
|
||||
},
|
||||
{
|
||||
"Name": "Nurseries",
|
||||
"DM_content": 0.25,
|
||||
"FracR": 0.0,
|
||||
"C_input_CropRes": 1.505,
|
||||
"HarvestIndex": 0.85
|
||||
},
|
||||
{
|
||||
"Name": "Pulses",
|
||||
"DM_content": 0.85,
|
||||
"FracR": 0.0,
|
||||
"C_input_CropRes": 2.0454545454545454,
|
||||
"HarvestIndex": 0.69
|
||||
},
|
||||
{
|
||||
"Name": "Apples",
|
||||
"DM_content": 0.14,
|
||||
"FracR": 0.0,
|
||||
"C_input_CropRes": 2.6,
|
||||
"HarvestIndex": 1.0
|
||||
},
|
||||
{
|
||||
"Name": "Pears",
|
||||
"DM_content": 0.14,
|
||||
"FracR": 0.0,
|
||||
"C_input_CropRes": 2.6,
|
||||
"HarvestIndex": 1.0
|
||||
},
|
||||
{
|
||||
"Name": "Luzerne",
|
||||
"DM_content": 0.25,
|
||||
"FracR": 0.0,
|
||||
"C_input_CropRes": 1.779,
|
||||
"HarvestIndex": 0.5
|
||||
},
|
||||
{
|
||||
"Name": "Other_crops",
|
||||
"DM_content": 0.7,
|
||||
"FracR": 0.0,
|
||||
"C_input_CropRes": 2.0359063662409858,
|
||||
"HarvestIndex": 0.5
|
||||
},
|
||||
{
|
||||
"Name": "Other_seeds",
|
||||
"DM_content": 0.85,
|
||||
"FracR": 0.0,
|
||||
"C_input_CropRes": 2.7155172413793105,
|
||||
"HarvestIndex": 0.5
|
||||
},
|
||||
{
|
||||
"Name": "Triticale",
|
||||
"DM_content": 0.85,
|
||||
"FracR": 0.5,
|
||||
"C_input_CropRes": 2.2790322580645164,
|
||||
"HarvestIndex": 0.46
|
||||
},
|
||||
{
|
||||
"Name": "Rapeseed",
|
||||
"DM_content": 0.85,
|
||||
"FracR": 0.5,
|
||||
"C_input_CropRes": 0.0,
|
||||
"HarvestIndex": 0.69
|
||||
},
|
||||
{
|
||||
"Name": "Strawberry",
|
||||
"DM_content": 0.15,
|
||||
"FracR": 0.0,
|
||||
"C_input_CropRes": 2.0,
|
||||
"HarvestIndex": 0.5
|
||||
},
|
||||
{
|
||||
"Name": "Rye",
|
||||
"DM_content": 0.85,
|
||||
"FracR": 0.5,
|
||||
"C_input_CropRes": 0.0,
|
||||
"HarvestIndex": 0.46
|
||||
},
|
||||
{
|
||||
"Name": "Other_fruits",
|
||||
"DM_content": 0.15,
|
||||
"FracR": 0.0,
|
||||
"C_input_CropRes": 2.6,
|
||||
"HarvestIndex": 1.0
|
||||
},
|
||||
{
|
||||
"Name": "oats",
|
||||
"DM_content": 0.85,
|
||||
"FracR": 0.5,
|
||||
"C_input_CropRes": 0.0,
|
||||
"HarvestIndex": 0.46
|
||||
},
|
||||
{
|
||||
"Name": "Green_manure",
|
||||
"DM_content": 0.25,
|
||||
"FracR": 0.0,
|
||||
"C_input_CropRes": 3.7,
|
||||
"HarvestIndex": 0.3
|
||||
},
|
||||
{
|
||||
"Name": "Fibres",
|
||||
"DM_content": 0.85,
|
||||
"FracR": 0.0,
|
||||
"C_input_CropRes": 0.13636363636363635,
|
||||
"HarvestIndex": 0.92
|
||||
},
|
||||
{
|
||||
"Name": "Sunflower",
|
||||
"DM_content": 0.85,
|
||||
"FracR": 0.0,
|
||||
"C_input_CropRes": 0.0,
|
||||
"HarvestIndex": 0.46
|
||||
},
|
||||
{
|
||||
"Name": "Fodder_beet",
|
||||
"DM_content": 0.25,
|
||||
"FracR": 0.0,
|
||||
"C_input_CropRes": 2.732142857142857,
|
||||
"HarvestIndex": 0.69
|
||||
},
|
||||
{
|
||||
"Name": "Other_cereals",
|
||||
"DM_content": 0.85,
|
||||
"FracR": 0.5,
|
||||
"C_input_CropRes": 2.0359063662409853,
|
||||
"HarvestIndex": 0.46
|
||||
},
|
||||
{
|
||||
"Name": "Wine",
|
||||
"DM_content": 0.15,
|
||||
"FracR": 0.0,
|
||||
"C_input_CropRes": 2.6,
|
||||
"HarvestIndex": 0.7
|
||||
},
|
||||
{
|
||||
"Name": "Miscanthus",
|
||||
"DM_content": 1.0,
|
||||
"FracR": 0.0,
|
||||
"C_input_CropRes": 5.1,
|
||||
"HarvestIndex": 0.444
|
||||
},
|
||||
{
|
||||
"Name": "Switchgrass",
|
||||
"DM_content": 1.0,
|
||||
"FracR": 0.0,
|
||||
"C_input_CropRes": 5.1,
|
||||
"HarvestIndex": 0.444
|
||||
},
|
||||
{
|
||||
"Name": "Willow",
|
||||
"DM_content": 1.0,
|
||||
"FracR": 0.0,
|
||||
"C_input_CropRes": 2.6,
|
||||
"HarvestIndex": 0.85
|
||||
}
|
||||
]
|
||||
78
CarbonConsoleApp/config25/CropSets.json
Normal file
78
CarbonConsoleApp/config25/CropSets.json
Normal file
@@ -0,0 +1,78 @@
|
||||
{
|
||||
"StrawCrops": [
|
||||
{
|
||||
"StrawCrop": "Maize",
|
||||
"DM_Content": 0.7
|
||||
},
|
||||
{
|
||||
"StrawCrop": "Corn_cob_mix",
|
||||
"DM_Content": 0.7
|
||||
},
|
||||
{
|
||||
"StrawCrop": "Winter_wheat",
|
||||
"DM_Content": 0.85
|
||||
},
|
||||
{
|
||||
"StrawCrop": "Summer_wheat",
|
||||
"DM_Content": 0.85
|
||||
},
|
||||
{
|
||||
"StrawCrop": "Summer_barley",
|
||||
"DM_Content": 0.85
|
||||
},
|
||||
{
|
||||
"StrawCrop": "winter_barley",
|
||||
"DM_Content": 0.85
|
||||
},
|
||||
{
|
||||
"StrawCrop": "Rapeseed",
|
||||
"DM_Content": 0.6
|
||||
},
|
||||
{
|
||||
"StrawCrop": "Rye",
|
||||
"DM_Content": 0.85
|
||||
},
|
||||
{
|
||||
"StrawCrop": "oats",
|
||||
"DM_Content": 0.85
|
||||
},
|
||||
{
|
||||
"StrawCrop": "Sunflower",
|
||||
"DM_Content": 0.6
|
||||
},
|
||||
{
|
||||
"StrawCrop": "Other_cereals",
|
||||
"DM_Content": 0.85
|
||||
}
|
||||
],
|
||||
"GreenManureType": [
|
||||
"Bladrammenas",
|
||||
"GeleMosterd",
|
||||
"Voederwikke",
|
||||
"Afrikaantjes",
|
||||
"JapanseHaver",
|
||||
"ItaliaansRaaigras",
|
||||
"Mengsel3soorten",
|
||||
"Mengsel12soorten",
|
||||
"EngelsRaaigras",
|
||||
"Facelia",
|
||||
"Grasland",
|
||||
"Overig",
|
||||
"Rietzwenkgras"
|
||||
],
|
||||
"Perennial": [
|
||||
"Nurseries",
|
||||
"Apples",
|
||||
"Pears",
|
||||
"Other_fruits",
|
||||
"Wine",
|
||||
"Miscanthus",
|
||||
"Switchgrass",
|
||||
"Willow"
|
||||
],
|
||||
"Grass_nat": [
|
||||
"Perm_gras",
|
||||
"Nat_gras",
|
||||
"Gras"
|
||||
]
|
||||
}
|
||||
1
CarbonConsoleApp/config25/CropYield.json
Normal file
1
CarbonConsoleApp/config25/CropYield.json
Normal file
File diff suppressed because one or more lines are too long
76
CarbonConsoleApp/config25/Farm_input_sets.json
Normal file
76
CarbonConsoleApp/config25/Farm_input_sets.json
Normal file
@@ -0,0 +1,76 @@
|
||||
{
|
||||
"ManureSources_liv": [
|
||||
{
|
||||
"ManureSource_liv": "WMGRAAS",
|
||||
"Description": "Weidemest graasdieren"
|
||||
},
|
||||
{
|
||||
"ManureSource_liv": "DMGRAAS",
|
||||
"Description": "Drijfmest graasdieren"
|
||||
},
|
||||
{
|
||||
"ManureSource_liv": "VMGRAAS",
|
||||
"Description": "Vaste mest graasdieren"
|
||||
},
|
||||
{
|
||||
"ManureSource_liv": "DMSTAL",
|
||||
"Description": "Drijfmest staldieren"
|
||||
},
|
||||
{
|
||||
"ManureSource_liv": "VMSTAL",
|
||||
"Description": "Vaste mest staldieren"
|
||||
},
|
||||
{
|
||||
"ManureSource_liv": "FRACDUN",
|
||||
"Description": "Dunne Fractie"
|
||||
},
|
||||
{
|
||||
"ManureSource_liv": "FRACDIK",
|
||||
"Description": "Dikke Fractie"
|
||||
},
|
||||
{
|
||||
"ManureSource_liv": "KMVERV",
|
||||
"Description": "Kunstmestvervangers"
|
||||
},
|
||||
{
|
||||
"ManureSource_liv": "DIGEST",
|
||||
"Description": "Digestaat"
|
||||
},
|
||||
{
|
||||
"ManureSource_liv": "CHAMPOST",
|
||||
"Description": "Champost"
|
||||
},
|
||||
{
|
||||
"ManureSource_liv": "SCHA_GEIT",
|
||||
"Description": "Schapen/geitenmest"
|
||||
},
|
||||
{
|
||||
"ManureSource_liv": "VMPIG",
|
||||
"Description": "Vaste varkensmest"
|
||||
},
|
||||
{
|
||||
"ManureSource_liv": "DM_ZEUG",
|
||||
"Description": "Zeugendrijfmest"
|
||||
},
|
||||
{
|
||||
"ManureSource_liv": "BOKASHI",
|
||||
"Description": "Bokashi"
|
||||
},
|
||||
{
|
||||
"ManureSource_liv": "OVERIG",
|
||||
"Description": "Overig"
|
||||
}
|
||||
],
|
||||
"composts": [
|
||||
{
|
||||
"compost": "COMPOST",
|
||||
"Description": "compost"
|
||||
}
|
||||
],
|
||||
"CarbonSource": [
|
||||
"CarbonManure",
|
||||
"CarbonResidues",
|
||||
"CarbonGreenManure",
|
||||
"CarbonCompost"
|
||||
]
|
||||
}
|
||||
4529
CarbonConsoleApp/config25/FarmmapsRvoMiterraCrops.json
Normal file
4529
CarbonConsoleApp/config25/FarmmapsRvoMiterraCrops.json
Normal file
File diff suppressed because it is too large
Load Diff
7
CarbonConsoleApp/config25/GIS_Soil_Sets.json
Normal file
7
CarbonConsoleApp/config25/GIS_Soil_Sets.json
Normal file
@@ -0,0 +1,7 @@
|
||||
{
|
||||
"SoilType": [ "Moerig", "Veen", "Klei", "Zand", "Loss" ],
|
||||
"MineralSoils": [ "Klei", "Zand" ],
|
||||
"Months": [ "M1", "M2", "M3", "M4", "M5", "M6", "M7", "M8", "M9", "M10", "M11", "M12", "Total", "Average" ],
|
||||
"AllMonths": [ "M1", "M2", "M3", "M4", "M5", "M6", "M7", "M8", "M9", "M10", "M11", "M12" ],
|
||||
"ClimateVar": [ "Evapotranspiration", "Precipitation", "Temperature" ]
|
||||
}
|
||||
6721
CarbonConsoleApp/config25/KNMI_data.csv
Normal file
6721
CarbonConsoleApp/config25/KNMI_data.csv
Normal file
File diff suppressed because it is too large
Load Diff
1681
CarbonConsoleApp/config25/KNMI_data.csv.bak
Normal file
1681
CarbonConsoleApp/config25/KNMI_data.csv.bak
Normal file
File diff suppressed because it is too large
Load Diff
66
CarbonConsoleApp/config25/ManCcont.json
Normal file
66
CarbonConsoleApp/config25/ManCcont.json
Normal file
@@ -0,0 +1,66 @@
|
||||
[
|
||||
{
|
||||
"ManCcont": "WMGRAAS",
|
||||
"Value": 0.0356
|
||||
},
|
||||
{
|
||||
"ManCcont": "DMGRAAS",
|
||||
"Value": 0.0356
|
||||
},
|
||||
{
|
||||
"ManCcont": "VMGRAAS",
|
||||
"Value": 0.077385
|
||||
},
|
||||
{
|
||||
"ManCcont": "DMSTAL",
|
||||
"Value": 0.03955
|
||||
},
|
||||
{
|
||||
"ManCcont": "VMSTAL",
|
||||
"Value": 0.209715
|
||||
},
|
||||
{
|
||||
"ManCcont": "COMPOST",
|
||||
"Value": 0.10535
|
||||
},
|
||||
{
|
||||
"ManCcont": "FRACDUN",
|
||||
"Value": 0.01715
|
||||
},
|
||||
{
|
||||
"ManCcont": "FRACDIK",
|
||||
"Value": 0.0759
|
||||
},
|
||||
{
|
||||
"ManCcont": "KMVERV",
|
||||
"Value": 0.010585
|
||||
},
|
||||
{
|
||||
"ManCcont": "DIGEST",
|
||||
"Value": 0.01652
|
||||
},
|
||||
{
|
||||
"ManCcont": "CHAMPOST",
|
||||
"Value": 0.1050
|
||||
},
|
||||
{
|
||||
"ManCcont": "SCHA_GEIT",
|
||||
"Value": 0.09225
|
||||
},
|
||||
{
|
||||
"ManCcont": "VMPIG",
|
||||
"Value": 0.0765
|
||||
},
|
||||
{
|
||||
"ManCcont": "DM_ZEUG",
|
||||
"Value": 0.0125
|
||||
},
|
||||
{
|
||||
"ManCcont": "BOKASHI",
|
||||
"Value": 0.19
|
||||
},
|
||||
{
|
||||
"ManCcont": "OVERIG",
|
||||
"Value": 0.01652
|
||||
}
|
||||
]
|
||||
File diff suppressed because one or more lines are too long
@@ -0,0 +1,303 @@
|
||||
[
|
||||
{
|
||||
"CropCode": "1020101",
|
||||
"CropName": "Wintertarwe",
|
||||
"PurposeCode": "118",
|
||||
"PurposeName": "Groenbemesting",
|
||||
"MiterraRothCCrop": ""
|
||||
},
|
||||
{
|
||||
"CropCode": "1020102",
|
||||
"CropName": "Wintergerst",
|
||||
"PurposeCode": "118",
|
||||
"PurposeName": "Groenbemesting",
|
||||
"MiterraRothCCrop": ""
|
||||
},
|
||||
{
|
||||
"CropCode": "1020103",
|
||||
"CropName": "Winterrogge",
|
||||
"PurposeCode": "118",
|
||||
"PurposeName": "Groenbemesting",
|
||||
"MiterraRothCCrop": ""
|
||||
},
|
||||
{
|
||||
"CropCode": "1020201",
|
||||
"CropName": "Zomertarwe",
|
||||
"PurposeCode": "118",
|
||||
"PurposeName": "Groenbemesting",
|
||||
"MiterraRothCCrop": ""
|
||||
},
|
||||
{
|
||||
"CropCode": "1020202",
|
||||
"CropName": "Zomergerst",
|
||||
"PurposeCode": "118",
|
||||
"PurposeName": "Groenbemesting",
|
||||
"MiterraRothCCrop": ""
|
||||
},
|
||||
{
|
||||
"CropCode": "1020203",
|
||||
"CropName": "Zomerrogge",
|
||||
"PurposeCode": "118",
|
||||
"PurposeName": "Groenbemesting",
|
||||
"MiterraRothCCrop": ""
|
||||
},
|
||||
{
|
||||
"CropCode": "1030301",
|
||||
"CropName": "Alexandrijnse klaver",
|
||||
"PurposeCode": "118",
|
||||
"PurposeName": "Groenbemesting",
|
||||
"MiterraRothCCrop": "Voederwikke"
|
||||
},
|
||||
{
|
||||
"CropCode": "1030302",
|
||||
"CropName": "Bastaard klaver",
|
||||
"PurposeCode": "118",
|
||||
"PurposeName": "Groenbemesting",
|
||||
"MiterraRothCCrop": "Voederwikke"
|
||||
},
|
||||
{
|
||||
"CropCode": "1030303",
|
||||
"CropName": "Hopklaver",
|
||||
"PurposeCode": "118",
|
||||
"PurposeName": "Groenbemesting",
|
||||
"MiterraRothCCrop": "Voederwikke"
|
||||
},
|
||||
{
|
||||
"CropCode": "1030304",
|
||||
"CropName": "Inkarnaatklaver",
|
||||
"PurposeCode": "118",
|
||||
"PurposeName": "Groenbemesting",
|
||||
"MiterraRothCCrop": "Voederwikke"
|
||||
},
|
||||
{
|
||||
"CropCode": "1030305",
|
||||
"CropName": "Perzische klaver",
|
||||
"PurposeCode": "118",
|
||||
"PurposeName": "Groenbemesting",
|
||||
"MiterraRothCCrop": "Voederwikke"
|
||||
},
|
||||
{
|
||||
"CropCode": "1030306",
|
||||
"CropName": "Rode klaver",
|
||||
"PurposeCode": "118",
|
||||
"PurposeName": "Groenbemesting",
|
||||
"MiterraRothCCrop": "Voederwikke"
|
||||
},
|
||||
{
|
||||
"CropCode": "1030307",
|
||||
"CropName": "Rolklaver",
|
||||
"PurposeCode": "118",
|
||||
"PurposeName": "Groenbemesting",
|
||||
"MiterraRothCCrop": "Voederwikke"
|
||||
},
|
||||
{
|
||||
"CropCode": "1030308",
|
||||
"CropName": "Witte honingklaver",
|
||||
"PurposeCode": "118",
|
||||
"PurposeName": "Groenbemesting",
|
||||
"MiterraRothCCrop": "Voederwikke"
|
||||
},
|
||||
{
|
||||
"CropCode": "1030309",
|
||||
"CropName": "Witte klaver",
|
||||
"PurposeCode": "118",
|
||||
"PurposeName": "Groenbemesting",
|
||||
"MiterraRothCCrop": "Voederwikke"
|
||||
},
|
||||
{
|
||||
"CropCode": "1030401",
|
||||
"CropName": "Blauwe Lupine",
|
||||
"PurposeCode": "118",
|
||||
"PurposeName": "Groenbemesting",
|
||||
"MiterraRothCCrop": "Voederwikke"
|
||||
},
|
||||
{
|
||||
"CropCode": "1030402",
|
||||
"CropName": "Gele Lupine",
|
||||
"PurposeCode": "118",
|
||||
"PurposeName": "Groenbemesting",
|
||||
"MiterraRothCCrop": "Voederwikke"
|
||||
},
|
||||
{
|
||||
"CropCode": "1030403",
|
||||
"CropName": "Witte Lupine",
|
||||
"PurposeCode": "118",
|
||||
"PurposeName": "Groenbemesting",
|
||||
"MiterraRothCCrop": "Voederwikke"
|
||||
},
|
||||
{
|
||||
"CropCode": "1030501",
|
||||
"CropName": "Voederwikke",
|
||||
"PurposeCode": "118",
|
||||
"PurposeName": "Groenbemesting",
|
||||
"MiterraRothCCrop": "Voederwikke"
|
||||
},
|
||||
{
|
||||
"CropCode": "1030502",
|
||||
"CropName": "Bonte wikke",
|
||||
"PurposeCode": "118",
|
||||
"PurposeName": "Groenbemesting",
|
||||
"MiterraRothCCrop": "Voederwikke"
|
||||
},
|
||||
{
|
||||
"CropCode": "1030602",
|
||||
"CropName": "Hanekam",
|
||||
"PurposeCode": "118",
|
||||
"PurposeName": "Groenbemesting",
|
||||
"MiterraRothCCrop": "Overig"
|
||||
},
|
||||
{
|
||||
"CropCode": "1040101",
|
||||
"CropName": "Stoppelknol",
|
||||
"PurposeCode": "118",
|
||||
"PurposeName": "Groenbemesting",
|
||||
"MiterraRothCCrop": "Overig"
|
||||
},
|
||||
{
|
||||
"CropCode": "1040102",
|
||||
"CropName": "Bladrammenas",
|
||||
"PurposeCode": "118",
|
||||
"PurposeName": "Groenbemesting",
|
||||
"MiterraRothCCrop": "Bladrammenas"
|
||||
},
|
||||
{
|
||||
"CropCode": "1040103",
|
||||
"CropName": "Bruine mosterd",
|
||||
"PurposeCode": "118",
|
||||
"PurposeName": "Groenbemesting",
|
||||
"MiterraRothCCrop": "GeleMosterd"
|
||||
},
|
||||
{
|
||||
"CropCode": "1040104",
|
||||
"CropName": "Gele mosterd",
|
||||
"PurposeCode": "118",
|
||||
"PurposeName": "Groenbemesting",
|
||||
"MiterraRothCCrop": "GeleMosterd"
|
||||
},
|
||||
{
|
||||
"CropCode": "1040105",
|
||||
"CropName": "Zwarte mosterd",
|
||||
"PurposeCode": "118",
|
||||
"PurposeName": "Groenbemesting",
|
||||
"MiterraRothCCrop": "GeleMosterd"
|
||||
},
|
||||
{
|
||||
"CropCode": "1040108",
|
||||
"CropName": "Bladkool",
|
||||
"PurposeCode": "118",
|
||||
"PurposeName": "Groenbemesting",
|
||||
"MiterraRothCCrop": "Overig"
|
||||
},
|
||||
{
|
||||
"CropCode": "1040109",
|
||||
"CropName": "Mergkool",
|
||||
"PurposeCode": "118",
|
||||
"PurposeName": "Groenbemesting",
|
||||
"MiterraRothCCrop": "Overig"
|
||||
},
|
||||
{
|
||||
"CropCode": "1040110",
|
||||
"CropName": "Ethiopische mosterd",
|
||||
"PurposeCode": "118",
|
||||
"PurposeName": "Groenbemesting",
|
||||
"MiterraRothCCrop": "GeleMosterd"
|
||||
},
|
||||
{
|
||||
"CropCode": "1040111",
|
||||
"CropName": "Serepta mosterd",
|
||||
"PurposeCode": "118",
|
||||
"PurposeName": "Groenbemesting",
|
||||
"MiterraRothCCrop": "GeleMosterd"
|
||||
},
|
||||
{
|
||||
"CropCode": "1040112",
|
||||
"CropName": "Zwaardherik",
|
||||
"PurposeCode": "118",
|
||||
"PurposeName": "Groenbemesting",
|
||||
"MiterraRothCCrop": "Overig"
|
||||
},
|
||||
{
|
||||
"CropCode": "1050101",
|
||||
"CropName": "Engels raaigras",
|
||||
"PurposeCode": "118",
|
||||
"PurposeName": "Groenbemesting",
|
||||
"MiterraRothCCrop": "EngelsRaaigras"
|
||||
},
|
||||
{
|
||||
"CropCode": "1050102",
|
||||
"CropName": "Frans raaigras",
|
||||
"PurposeCode": "118",
|
||||
"PurposeName": "Groenbemesting",
|
||||
"MiterraRothCCrop": "ItaliaansRaaigras"
|
||||
},
|
||||
{
|
||||
"CropCode": "1050103",
|
||||
"CropName": "Gekruist raaigras",
|
||||
"PurposeCode": "118",
|
||||
"PurposeName": "Groenbemesting",
|
||||
"MiterraRothCCrop": "ItaliaansRaaigras"
|
||||
},
|
||||
{
|
||||
"CropCode": "1050104",
|
||||
"CropName": "Italiaans raaigras",
|
||||
"PurposeCode": "118",
|
||||
"PurposeName": "Groenbemesting",
|
||||
"MiterraRothCCrop": "ItaliaansRaaigras"
|
||||
},
|
||||
{
|
||||
"CropCode": "1050105",
|
||||
"CropName": "Trosraaigras",
|
||||
"PurposeCode": "118",
|
||||
"PurposeName": "Groenbemesting",
|
||||
"MiterraRothCCrop": "ItaliaansRaaigras"
|
||||
},
|
||||
{
|
||||
"CropCode": "1050106",
|
||||
"CropName": "Westerwolds raaigras",
|
||||
"PurposeCode": "118",
|
||||
"PurposeName": "Groenbemesting",
|
||||
"MiterraRothCCrop": "ItaliaansRaaigras"
|
||||
},
|
||||
{
|
||||
"CropCode": "1050201",
|
||||
"CropName": "Roodzwenkgras",
|
||||
"PurposeCode": "118",
|
||||
"PurposeName": "Groenbemesting",
|
||||
"MiterraRothCCrop": "Rietzwenkgras"
|
||||
},
|
||||
{
|
||||
"CropCode": "1050408",
|
||||
"CropName": "Sudangras",
|
||||
"PurposeCode": "118",
|
||||
"PurposeName": "Groenbemesting",
|
||||
"MiterraRothCCrop": "Rietzwenkgras"
|
||||
},
|
||||
{
|
||||
"CropCode": "1080107",
|
||||
"CropName": "Facelia",
|
||||
"PurposeCode": "118",
|
||||
"PurposeName": "Groenbemesting",
|
||||
"MiterraRothCCrop": "Facelia"
|
||||
},
|
||||
{
|
||||
"CropCode": "1080108",
|
||||
"CropName": "Spurrie",
|
||||
"PurposeCode": "118",
|
||||
"PurposeName": "Groenbemesting",
|
||||
"MiterraRothCCrop": "Overig"
|
||||
},
|
||||
{
|
||||
"CropCode": "1080109",
|
||||
"CropName": "Afrikaantjes",
|
||||
"PurposeCode": "118",
|
||||
"PurposeName": "Groenbemesting",
|
||||
"MiterraRothCCrop": "Afrikaantjes"
|
||||
},
|
||||
{
|
||||
"CropCode": "1080110",
|
||||
"CropName": "Raketblad",
|
||||
"PurposeCode": "118",
|
||||
"PurposeName": "Groenbemesting",
|
||||
"MiterraRothCCrop": "Overig"
|
||||
}
|
||||
]
|
||||
1
CarbonConsoleApp/config25/PC4/PC4.cpg
Normal file
1
CarbonConsoleApp/config25/PC4/PC4.cpg
Normal file
@@ -0,0 +1 @@
|
||||
UTF-8
|
||||
BIN
CarbonConsoleApp/config25/PC4/PC4.dbf
Normal file
BIN
CarbonConsoleApp/config25/PC4/PC4.dbf
Normal file
Binary file not shown.
1
CarbonConsoleApp/config25/PC4/PC4.prj
Normal file
1
CarbonConsoleApp/config25/PC4/PC4.prj
Normal file
@@ -0,0 +1 @@
|
||||
PROJCS["RD_New",GEOGCS["GCS_Amersfoort",DATUM["D_Amersfoort",SPHEROID["Bessel_1841",6377397.155,299.1528128]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Double_Stereographic"],PARAMETER["False_Easting",155000.0],PARAMETER["False_Northing",463000.0],PARAMETER["Central_Meridian",5.38763888888889],PARAMETER["Scale_Factor",0.9999079],PARAMETER["Latitude_Of_Origin",52.15616055555555],UNIT["Meter",1.0]]
|
||||
BIN
CarbonConsoleApp/config25/PC4/PC4.shp
Normal file
BIN
CarbonConsoleApp/config25/PC4/PC4.shp
Normal file
Binary file not shown.
BIN
CarbonConsoleApp/config25/PC4/PC4.shx
Normal file
BIN
CarbonConsoleApp/config25/PC4/PC4.shx
Normal file
Binary file not shown.
10
CarbonConsoleApp/config25/ParametersRothC.json
Normal file
10
CarbonConsoleApp/config25/ParametersRothC.json
Normal file
@@ -0,0 +1,10 @@
|
||||
{
|
||||
"LayerDepth": 25.0,
|
||||
"kDPM": 10.0,
|
||||
"kRPM": 0.3,
|
||||
"kBIO": 0.66,
|
||||
"kHUM": 0.02,
|
||||
"StubbleFraction": 0.45,
|
||||
"CarbonBiomass": 0.45,
|
||||
"FracBelowGroundCinput": 0.25
|
||||
}
|
||||
4035
CarbonConsoleApp/config25/RegionSets.json
Normal file
4035
CarbonConsoleApp/config25/RegionSets.json
Normal file
File diff suppressed because it is too large
Load Diff
1
CarbonConsoleApp/config25/RvoCrops.json
Normal file
1
CarbonConsoleApp/config25/RvoCrops.json
Normal file
File diff suppressed because one or more lines are too long
8155
CarbonConsoleApp/config25/SetsForDataTransformation.json
Normal file
8155
CarbonConsoleApp/config25/SetsForDataTransformation.json
Normal file
File diff suppressed because it is too large
Load Diff
123
CarbonConsoleApp/config25/YieldGreenManure.json
Normal file
123
CarbonConsoleApp/config25/YieldGreenManure.json
Normal file
@@ -0,0 +1,123 @@
|
||||
[
|
||||
{
|
||||
"ManureName": "Bladrammenas",
|
||||
"GoodQuality": 3.573099415204678,
|
||||
"AverageQuality": 2.5011695906432747,
|
||||
"BadQuality": 1.786549707602339
|
||||
},
|
||||
{
|
||||
"ManureName": "GeleMosterd",
|
||||
"GoodQuality": 2.05696405648267,
|
||||
"AverageQuality": 1.4398748395378689,
|
||||
"BadQuality": 1.028482028241335
|
||||
},
|
||||
{
|
||||
"ManureName": "Voederwikke",
|
||||
"GoodQuality": 1.2933673469387754,
|
||||
"AverageQuality": 0.9053571428571427,
|
||||
"BadQuality": 0.6466836734693877
|
||||
},
|
||||
{
|
||||
"ManureName": "Afrikaantjes",
|
||||
"GoodQuality": 2.8392857142857153,
|
||||
"AverageQuality": 1.9875000000000005,
|
||||
"BadQuality": 1.4196428571428577
|
||||
},
|
||||
{
|
||||
"ManureName": "JapanseHaver",
|
||||
"GoodQuality": 2.5844583333333335,
|
||||
"AverageQuality": 1.8091208333333333,
|
||||
"BadQuality": 1.2922291666666668
|
||||
},
|
||||
{
|
||||
"ManureName": "ItaliaansRaaigras",
|
||||
"GoodQuality": 3.1635153508771934,
|
||||
"AverageQuality": 2.2144607456140353,
|
||||
"BadQuality": 1.5817576754385967
|
||||
},
|
||||
{
|
||||
"ManureName": "Rogge",
|
||||
"GoodQuality": 2.5,
|
||||
"AverageQuality": 1.75,
|
||||
"BadQuality": 1.25
|
||||
},
|
||||
{
|
||||
"ManureName": "Graan",
|
||||
"GoodQuality": 2.2,
|
||||
"AverageQuality": 1.54,
|
||||
"BadQuality": 1.1
|
||||
},
|
||||
{
|
||||
"ManureName": "Haver",
|
||||
"GoodQuality": 2.6,
|
||||
"AverageQuality": 1.82,
|
||||
"BadQuality": 1.3
|
||||
},
|
||||
{
|
||||
"ManureName": "Gerst",
|
||||
"GoodQuality": 2.55,
|
||||
"AverageQuality": 1.785,
|
||||
"BadQuality": 1.275
|
||||
},
|
||||
{
|
||||
"ManureName": "Mengsel_groenbraak",
|
||||
"GoodQuality": 2.8,
|
||||
"AverageQuality": 1.96,
|
||||
"BadQuality": 1.4
|
||||
},
|
||||
{
|
||||
"ManureName": "Mengsel_natuurbraak",
|
||||
"GoodQuality": 3.0,
|
||||
"AverageQuality": 2.1,
|
||||
"BadQuality": 1.5
|
||||
},
|
||||
{
|
||||
"ManureName": "Mengsel_Nbron",
|
||||
"GoodQuality": 2.8,
|
||||
"AverageQuality": 1.96,
|
||||
"BadQuality": 1.4
|
||||
},
|
||||
{
|
||||
"ManureName": "Mengsel_Nvang",
|
||||
"GoodQuality": 2.8,
|
||||
"AverageQuality": 1.96,
|
||||
"BadQuality": 1.4
|
||||
},
|
||||
{
|
||||
"ManureName": "EngelsRaaigras",
|
||||
"GoodQuality": 3.1635153508771934,
|
||||
"AverageQuality": 2.2144607456140353,
|
||||
"BadQuality": 1.5817576754385967
|
||||
},
|
||||
{
|
||||
"ManureName": "Facelia",
|
||||
"GoodQuality": 0.2925,
|
||||
"AverageQuality": 0.20475,
|
||||
"BadQuality": 0.14625
|
||||
},
|
||||
{
|
||||
"ManureName": "Grasland",
|
||||
"GoodQuality": 3.418421052631579,
|
||||
"AverageQuality": 2.3928947368421056,
|
||||
"BadQuality": 1.7092105263157895
|
||||
},
|
||||
{
|
||||
"ManureName": "Overig",
|
||||
"GoodQuality": 6.728475765306122,
|
||||
"AverageQuality": 4.709933035714285,
|
||||
"BadQuality": 3.364237882653061
|
||||
},
|
||||
{
|
||||
"ManureName": "Rietzwenkgras",
|
||||
"GoodQuality": 3.1635153508771934,
|
||||
"AverageQuality": 2.2144607456140353,
|
||||
"BadQuality": 1.5817576754385967
|
||||
},
|
||||
{
|
||||
"ManureName": "Triticale",
|
||||
"GoodQuality": 2.2,
|
||||
"AverageQuality": 1.54,
|
||||
"BadQuality": 1.1
|
||||
}
|
||||
|
||||
]
|
||||
40321
CarbonConsoleApp/config25/klimaatscenario.csv
Normal file
40321
CarbonConsoleApp/config25/klimaatscenario.csv
Normal file
File diff suppressed because it is too large
Load Diff
@@ -1,20 +0,0 @@
|
||||
<Project Sdk="Microsoft.NET.Sdk">
|
||||
|
||||
<PropertyGroup>
|
||||
<TargetFramework>net6</TargetFramework>
|
||||
<AssemblyName>CarbonLib</AssemblyName>
|
||||
<PackageId>CarbonLib</PackageId>
|
||||
<RuntimeIdentifiers>win10-x64;ubuntu.16.04-x64</RuntimeIdentifiers>
|
||||
<GenerateAssemblyConfigurationAttribute>false</GenerateAssemblyConfigurationAttribute>
|
||||
<GenerateAssemblyCompanyAttribute>false</GenerateAssemblyCompanyAttribute>
|
||||
<GenerateAssemblyProductAttribute>false</GenerateAssemblyProductAttribute>
|
||||
<Version>4.12.0</Version>
|
||||
</PropertyGroup>
|
||||
|
||||
<ItemGroup>
|
||||
<PackageReference Include="Base.Core.Common.Geometry" Version="4.12.0-prerelease.2104" />
|
||||
<PackageReference Include="NetTopologySuite" Version="2.5.0" />
|
||||
<PackageReference Include="NetTopologySuite.IO.GeoJSON" Version="3.0.0" />
|
||||
</ItemGroup>
|
||||
|
||||
</Project>
|
||||
@@ -1,9 +1,11 @@
|
||||
|
||||
Microsoft Visual Studio Solution File, Format Version 12.00
|
||||
# Visual Studio Version 16
|
||||
VisualStudioVersion = 16.0.30907.101
|
||||
# Visual Studio Version 17
|
||||
VisualStudioVersion = 17.14.36414.22 d17.14
|
||||
MinimumVisualStudioVersion = 10.0.40219.1
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "CarbonLib", "CarbonLib.csproj", "{51876378-DB3E-4D30-8EDA-83DDDCE4C4ED}"
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "CarbonLib", "CarbonLib\CarbonLib.csproj", "{51876378-DB3E-4D30-8EDA-83DDDCE4C4ED}"
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "CarbonConsoleApp", "CarbonConsoleApp\CarbonConsoleApp.csproj", "{A961AA67-3D88-E648-51CC-5DAC78203614}"
|
||||
EndProject
|
||||
Global
|
||||
GlobalSection(SolutionConfigurationPlatforms) = preSolution
|
||||
@@ -15,6 +17,10 @@ Global
|
||||
{51876378-DB3E-4D30-8EDA-83DDDCE4C4ED}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{51876378-DB3E-4D30-8EDA-83DDDCE4C4ED}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{51876378-DB3E-4D30-8EDA-83DDDCE4C4ED}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
{A961AA67-3D88-E648-51CC-5DAC78203614}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{A961AA67-3D88-E648-51CC-5DAC78203614}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{A961AA67-3D88-E648-51CC-5DAC78203614}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{A961AA67-3D88-E648-51CC-5DAC78203614}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
EndGlobalSection
|
||||
GlobalSection(SolutionProperties) = preSolution
|
||||
HideSolutionNode = FALSE
|
||||
|
||||
@@ -1,11 +1,7 @@
|
||||
using CarbonService.Models;
|
||||
using FarmMapsAPI.Carbon;
|
||||
using FarmMapsAPI.Carbon.Models;
|
||||
using CarbonLib.Carbon;
|
||||
using CarbonService.Models;
|
||||
using CarbonLib.Carbon.Models;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace CarbonLib
|
||||
{
|
||||
@@ -14,6 +10,7 @@ namespace CarbonLib
|
||||
public abstract CarbonRequest MapFarmMapsToMiterra(FarmMapsCarbonRequest farmInput);
|
||||
public abstract string Validate(CarbonRequest farmInput);
|
||||
public abstract CarbonSummary Calculate(CarbonRequest farmInput);
|
||||
public abstract CarbonSummary CalculateClimateScenario(CarbonRequest farmInput);
|
||||
|
||||
public double? GetCropYield(string cropCode, int year, int postalCode)
|
||||
{
|
||||
@@ -1,18 +1,12 @@
|
||||
using Base.Core.Common;
|
||||
using Base.Core.Common.Geometry;
|
||||
using CarbonLib;
|
||||
using CarbonService.Models;
|
||||
using FarmMapsAPI.Carbon.Models;
|
||||
using NetTopologySuite.Geometries;
|
||||
using OSGeo.OGR;
|
||||
using CarbonService.Models;
|
||||
using CarbonLib.Carbon.Models;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Globalization;
|
||||
using System.IO;
|
||||
using System.Linq;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace FarmMapsAPI.Carbon
|
||||
namespace CarbonLib.Carbon
|
||||
{
|
||||
public class CarbonCalculation24 : ICarbonCalculation
|
||||
{
|
||||
@@ -230,9 +224,34 @@ namespace FarmMapsAPI.Carbon
|
||||
return cropYield;
|
||||
}
|
||||
|
||||
public CarbonSummary CalculateClimateScenario(CarbonRequest farmInput)
|
||||
{
|
||||
var simpleResult = Calculate(farmInput);
|
||||
return simpleResult;
|
||||
}
|
||||
|
||||
private List<double> GetMinMaxMedian(List<YearSummary> yearData, int year, string varName)
|
||||
{
|
||||
|
||||
if (yearData.Count == 0)
|
||||
{
|
||||
|
||||
}
|
||||
var minValue = (double)yearData.Min(s => s.GetType().GetProperty(varName).GetValue(s));
|
||||
var medianValue = CalculateMedian(yearData.Select(s => Convert.ToDouble(s.GetType().GetProperty(varName).GetValue(s))).ToList());
|
||||
var maxValue = (double)yearData.Max(s => s.GetType().GetProperty(varName).GetValue(s));
|
||||
return new List<double> { minValue, medianValue, maxValue };
|
||||
}
|
||||
|
||||
public CarbonSummary Calculate(CarbonRequest farmInput)
|
||||
{
|
||||
return Calculate(farmInput, 0);
|
||||
}
|
||||
|
||||
public CarbonSummary Calculate(CarbonRequest farmInput, int climateScenarioNumber = 0, Dictionary<(string, string, int), ClimateVariable> climate = null)
|
||||
{
|
||||
var knmiFile = Helper.GetPlatformIndependentDirectoryPath(Path.Combine(configPath, "KNMI_data.csv"));
|
||||
var climateFile = Helper.GetPlatformIndependentDirectoryPath(Path.Combine(configPath, "klimaatscenario.csv"));
|
||||
|
||||
// soilTypeData (external input)
|
||||
var soilTypeData = GetSoilTypeData(farmInput);
|
||||
@@ -405,7 +424,15 @@ namespace FarmMapsAPI.Carbon
|
||||
}
|
||||
cropAreaFarm.Add(("Farmname", loopYear), croplist);
|
||||
|
||||
Dictionary<string, List<ClimateVariable>> climateVariable = GetClimateVariable(knmiFile, dataTransformationSet, gisSoilSet, loopYear, farmInput);
|
||||
Dictionary<string, List<ClimateVariable>> climateVariable;
|
||||
if (climateScenarioNumber == 0)
|
||||
{
|
||||
climateVariable = GetClimateVariable(knmiFile, dataTransformationSet, gisSoilSet, loopYear, farmInput, climateFile, climateScenarioNumber);
|
||||
}
|
||||
else
|
||||
{
|
||||
climateVariable = GetClimateVariable2(knmiFile, dataTransformationSet, gisSoilSet, loopYear, farmInput, climateFile, climateScenarioNumber, climate);
|
||||
}
|
||||
|
||||
// Crop and soil areas
|
||||
// soilArea keys: (fieldname, year, soil)
|
||||
@@ -1926,7 +1953,7 @@ namespace FarmMapsAPI.Carbon
|
||||
return soilBulkDensities;
|
||||
}
|
||||
|
||||
private static Dictionary<string, List<ClimateVariable>> GetClimateVariable(string knmiFile, SetsForDataTransformation dataTransformationSet, GIS_Soils_Sets gisSoilSet, int loopYear, CarbonRequest farmInput)
|
||||
private Dictionary<(string, string, int), ClimateVariable> InitClimateFile(string knmiFile, string climateFile = null, int climateScenarioNumber = 0)
|
||||
{
|
||||
var data = new List<string>();
|
||||
using (StreamReader r = new StreamReader(knmiFile))
|
||||
@@ -1939,27 +1966,193 @@ namespace FarmMapsAPI.Carbon
|
||||
}
|
||||
|
||||
|
||||
var farmPostalCode = farmInput.PostalCode;
|
||||
if (farmInput.geometry != null)
|
||||
var dataClimate = new List<string>();
|
||||
if (climateFile != null && climateScenarioNumber > 0)
|
||||
{
|
||||
// determine poatalcode from geometry
|
||||
string res = GetPostalCodeFromGeometry(farmInput.geometry);
|
||||
farmPostalCode = 8211;
|
||||
using (StreamReader r = new StreamReader(climateFile))
|
||||
{
|
||||
string line;
|
||||
while ((line = r.ReadLine()) != null)
|
||||
{
|
||||
dataClimate.Add(line);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// climate (zone, month, year)
|
||||
var climate = new Dictionary<(string, string, int), ClimateVariable>();
|
||||
|
||||
if (dataClimate.Count() > 0)
|
||||
{
|
||||
foreach (var row in dataClimate)
|
||||
{
|
||||
if (string.IsNullOrEmpty(row) || row.Split(';').Length == 0 || row.Split(';')[0] == "KNMI_zone")
|
||||
{
|
||||
continue;
|
||||
}
|
||||
var rowArr = row.Split(';');
|
||||
if (int.Parse(rowArr[3]) == climateScenarioNumber)
|
||||
{
|
||||
climate.Add(($"zone{rowArr[0]}", $"M{rowArr[2]}", int.Parse(rowArr[1])), new ClimateVariable(double.Parse(rowArr[4], CultureInfo.InvariantCulture), double.Parse(rowArr[5], CultureInfo.InvariantCulture), double.Parse(rowArr[6], CultureInfo.InvariantCulture)));
|
||||
}
|
||||
}
|
||||
|
||||
foreach (var row in data)
|
||||
{
|
||||
if (string.IsNullOrEmpty(row) || row.Split(';').Length == 0 || string.IsNullOrEmpty(row.Split(';')[0]))
|
||||
{
|
||||
continue;
|
||||
}
|
||||
var rowArr = row.Split(';');
|
||||
if (int.Parse(rowArr[2]) <= 2023)
|
||||
{
|
||||
if (climate.Any(x => x.Key.Item1 == rowArr[0] && x.Key.Item2 == rowArr[1] && x.Key.Item3 == int.Parse(rowArr[2])))
|
||||
{
|
||||
climate[(rowArr[0], rowArr[1], int.Parse(rowArr[2]))].Temperature = double.Parse(rowArr[3], CultureInfo.InvariantCulture);
|
||||
climate[(rowArr[0], rowArr[1], int.Parse(rowArr[2]))].Precipitation = double.Parse(rowArr[4], CultureInfo.InvariantCulture);
|
||||
climate[(rowArr[0], rowArr[1], int.Parse(rowArr[2]))].Evapotranspiration = double.Parse(rowArr[5], CultureInfo.InvariantCulture);
|
||||
}
|
||||
else
|
||||
{
|
||||
climate.Add((rowArr[0], rowArr[1], int.Parse(rowArr[2])), new ClimateVariable(double.Parse(rowArr[3], CultureInfo.InvariantCulture), double.Parse(rowArr[4], CultureInfo.InvariantCulture), double.Parse(rowArr[5], CultureInfo.InvariantCulture)));
|
||||
}
|
||||
|
||||
}
|
||||
else
|
||||
{
|
||||
if (climate.Any(x => x.Key.Item1 == rowArr[0] && x.Key.Item2 == rowArr[1] && x.Key.Item3 == int.Parse(rowArr[2])))
|
||||
{
|
||||
continue;
|
||||
}
|
||||
climate.Add((rowArr[0], rowArr[1], int.Parse(rowArr[2])), new ClimateVariable(double.Parse(rowArr[3], CultureInfo.InvariantCulture), double.Parse(rowArr[4], CultureInfo.InvariantCulture), double.Parse(rowArr[5], CultureInfo.InvariantCulture)));
|
||||
}
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
foreach (var row in data)
|
||||
{
|
||||
if (string.IsNullOrEmpty(row) || row.Split(';').Length == 0 || string.IsNullOrEmpty(row.Split(';')[0]))
|
||||
{
|
||||
continue;
|
||||
}
|
||||
var rowArr = row.Split(';');
|
||||
climate.Add((rowArr[0], rowArr[1], int.Parse(rowArr[2])), new ClimateVariable(double.Parse(rowArr[3], CultureInfo.InvariantCulture), double.Parse(rowArr[4], CultureInfo.InvariantCulture), double.Parse(rowArr[5], CultureInfo.InvariantCulture)));
|
||||
}
|
||||
}
|
||||
|
||||
return climate;
|
||||
}
|
||||
|
||||
private static Dictionary<string, List<ClimateVariable>> GetClimateVariable2(string knmiFile, SetsForDataTransformation dataTransformationSet, GIS_Soils_Sets gisSoilSet, int loopYear, CarbonRequest farmInput, string climateFile = null, int climateScenarioNumber = 0, Dictionary<(string, string, int), ClimateVariable> climate = null)
|
||||
{
|
||||
var climateVariable = new Dictionary<string, List<ClimateVariable>>();
|
||||
|
||||
var farmPostalCode = farmInput.PostalCode;
|
||||
//if (farmInput.geometry != null)
|
||||
//{
|
||||
// // determine poatalcode from geometry
|
||||
// string res = GetPostalCodeFromGeometry(farmInput.geometry);
|
||||
// farmPostalCode = 8211;
|
||||
//}
|
||||
var farmZone = dataTransformationSet.KNMI_zone_Reg.SingleOrDefault(x => x.Reg.Contains(farmPostalCode)).KNMI_zone;
|
||||
foreach (var field in farmInput.CropFields.Select(s => s.Name))
|
||||
{
|
||||
var monthClimateList = new List<ClimateVariable>();
|
||||
foreach (var month in gisSoilSet.AllMonths)
|
||||
{
|
||||
var climateYear = loopYear > 2050 || loopYear < 2011 ? 2012 : loopYear;
|
||||
var monthData = climate.Single(x => x.Key.Item1 == farmZone && x.Key.Item2 == month && x.Key.Item3 == climateYear).Value;
|
||||
var newMonthData = new ClimateVariable(monthData.Temperature, monthData.Precipitation, monthData.Evapotranspiration * 1.25);
|
||||
monthClimateList.Add(newMonthData);
|
||||
}
|
||||
climateVariable.Add(field, monthClimateList);
|
||||
}
|
||||
|
||||
return climateVariable;
|
||||
|
||||
}
|
||||
|
||||
private static Dictionary<string, List<ClimateVariable>> GetClimateVariable(string knmiFile, SetsForDataTransformation dataTransformationSet, GIS_Soils_Sets gisSoilSet, int loopYear, CarbonRequest farmInput, string climateFile = null, int climateScenarioNumber = 0)
|
||||
{
|
||||
var data = new List<string>();
|
||||
using (StreamReader r = new StreamReader(knmiFile))
|
||||
{
|
||||
string line;
|
||||
while ((line = r.ReadLine()) != null)
|
||||
{
|
||||
data.Add(line);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
var dataClimate = new List<string>();
|
||||
if (climateFile != null && climateScenarioNumber > 0)
|
||||
{
|
||||
using (StreamReader r = new StreamReader(climateFile))
|
||||
{
|
||||
string line;
|
||||
while ((line = r.ReadLine()) != null)
|
||||
{
|
||||
dataClimate.Add(line);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
var farmPostalCode = farmInput.PostalCode;
|
||||
//if (farmInput.geometry != null)
|
||||
//{
|
||||
// // determine poatalcode from geometry
|
||||
// string res = GetPostalCodeFromGeometry(farmInput.geometry);
|
||||
// farmPostalCode = 8211;
|
||||
//}
|
||||
|
||||
var farmZone = dataTransformationSet.KNMI_zone_Reg.SingleOrDefault(x => x.Reg.Contains(farmPostalCode)).KNMI_zone;
|
||||
// climate (zone, month, year)
|
||||
var climate = new Dictionary<(string, string, int), ClimateVariable>();
|
||||
|
||||
foreach (var row in data)
|
||||
if (dataClimate.Count() > 0)
|
||||
{
|
||||
if (string.IsNullOrEmpty(row) || row.Split(';').Length == 0 || string.IsNullOrEmpty(row.Split(';')[0]))
|
||||
foreach (var row in dataClimate)
|
||||
{
|
||||
continue;
|
||||
if (string.IsNullOrEmpty(row) || row.Split(';').Length == 0 || row.Split(';')[0] == "KNMI_zone")
|
||||
{
|
||||
continue;
|
||||
}
|
||||
var rowArr = row.Split(';');
|
||||
if (int.Parse(rowArr[3]) == climateScenarioNumber)
|
||||
{
|
||||
climate.Add(($"zone{rowArr[0]}", $"M{rowArr[2]}", int.Parse(rowArr[1])), new ClimateVariable(double.Parse(rowArr[4], CultureInfo.InvariantCulture), double.Parse(rowArr[5], CultureInfo.InvariantCulture), double.Parse(rowArr[6], CultureInfo.InvariantCulture)));
|
||||
}
|
||||
}
|
||||
|
||||
foreach (var row in data)
|
||||
{
|
||||
if (string.IsNullOrEmpty(row) || row.Split(';').Length == 0 || string.IsNullOrEmpty(row.Split(';')[0]))
|
||||
{
|
||||
continue;
|
||||
}
|
||||
var rowArr = row.Split(';');
|
||||
if (climate.Any(x => x.Key.Item1 == rowArr[0] && x.Key.Item2 == rowArr[1] && x.Key.Item3 == int.Parse(rowArr[2])))
|
||||
{
|
||||
continue;
|
||||
}
|
||||
climate.Add((rowArr[0], rowArr[1], int.Parse(rowArr[2])), new ClimateVariable(double.Parse(rowArr[3], CultureInfo.InvariantCulture), double.Parse(rowArr[4], CultureInfo.InvariantCulture), double.Parse(rowArr[5], CultureInfo.InvariantCulture)));
|
||||
}
|
||||
var rowArr = row.Split(';');
|
||||
climate.Add((rowArr[0], rowArr[1], int.Parse(rowArr[2])), new ClimateVariable(double.Parse(rowArr[3], CultureInfo.InvariantCulture), double.Parse(rowArr[4], CultureInfo.InvariantCulture), double.Parse(rowArr[5], CultureInfo.InvariantCulture)));
|
||||
}
|
||||
else
|
||||
{
|
||||
foreach (var row in data)
|
||||
{
|
||||
if (string.IsNullOrEmpty(row) || row.Split(';').Length == 0 || string.IsNullOrEmpty(row.Split(';')[0]))
|
||||
{
|
||||
continue;
|
||||
}
|
||||
var rowArr = row.Split(';');
|
||||
climate.Add((rowArr[0], rowArr[1], int.Parse(rowArr[2])), new ClimateVariable(double.Parse(rowArr[3], CultureInfo.InvariantCulture), double.Parse(rowArr[4], CultureInfo.InvariantCulture), double.Parse(rowArr[5], CultureInfo.InvariantCulture)));
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
var climateVariable = new Dictionary<string, List<ClimateVariable>>();
|
||||
|
||||
@@ -2020,40 +2213,40 @@ namespace FarmMapsAPI.Carbon
|
||||
return carbonInputGreenManure;
|
||||
}
|
||||
|
||||
private static string GetPostalCodeFromGeometry(NetTopologySuite.Geometries.Geometry geometry)
|
||||
{
|
||||
//// Set crs default geometry factory to EPSG:4326
|
||||
NetTopologySuite.NtsGeometryServices.Instance = new NetTopologySuite.NtsGeometryServices(NetTopologySuite.Geometries.Implementation.CoordinateArraySequenceFactory.Instance,
|
||||
new PrecisionModel(PrecisionModels.Floating), 4326);
|
||||
// Register all vector drivers
|
||||
Ogr.RegisterAll();
|
||||
//private static string GetPostalCodeFromGeometry(NetTopologySuite.Geometries.Geometry geometry)
|
||||
//{
|
||||
// //// Set crs default geometry factory to EPSG:4326
|
||||
// NetTopologySuite.NtsGeometryServices.Instance = new NetTopologySuite.NtsGeometryServices(NetTopologySuite.Geometries.Implementation.CoordinateArraySequenceFactory.Instance,
|
||||
// new PrecisionModel(PrecisionModels.Floating), 4326);
|
||||
// // Register all vector drivers
|
||||
// Ogr.RegisterAll();
|
||||
|
||||
// item.geometry is always in WGS84 so reproject to EPSG:28992
|
||||
var localReference = new LocalReference("EPSG:28992");
|
||||
var localGeometry = localReference.ToLocalPolygon(geometry as Polygon);
|
||||
// // item.geometry is always in WGS84 so reproject to EPSG:28992
|
||||
// var localReference = new LocalReference("EPSG:28992");
|
||||
// var localGeometry = localReference.ToLocalPolygon(geometry as Polygon);
|
||||
|
||||
// get postal code from shape file
|
||||
// open shape file
|
||||
using (var postalcodes = Ogr.Open("config/PC4/PC4.shp", 0))
|
||||
{
|
||||
// get first layer
|
||||
var pc4Layer = postalcodes.GetLayerByIndex(0);
|
||||
// // get postal code from shape file
|
||||
// // open shape file
|
||||
// using (var postalcodes = Ogr.Open("config/PC4/PC4.shp", 0))
|
||||
// {
|
||||
// // get first layer
|
||||
// var pc4Layer = postalcodes.GetLayerByIndex(0);
|
||||
|
||||
// set spatial filter to geometry ( only intersecting features are retrieved )
|
||||
pc4Layer.SetSpatialFilter(localGeometry.Centroid.ToOGRGeometry());
|
||||
// // set spatial filter to geometry ( only intersecting features are retrieved )
|
||||
// pc4Layer.SetSpatialFilter(localGeometry.Centroid.ToOGRGeometry());
|
||||
|
||||
// get next feature
|
||||
var pc4Feature = pc4Layer.GetNextFeature();
|
||||
// // get next feature
|
||||
// var pc4Feature = pc4Layer.GetNextFeature();
|
||||
|
||||
// if feature retrieved get the PC4 attribute from it
|
||||
if (pc4Feature is object)
|
||||
{
|
||||
return pc4Feature.GetFieldAsString("PC4");
|
||||
}
|
||||
}
|
||||
// // if feature retrieved get the PC4 attribute from it
|
||||
// if (pc4Feature is object)
|
||||
// {
|
||||
// return pc4Feature.GetFieldAsString("PC4");
|
||||
// }
|
||||
// }
|
||||
|
||||
return "";
|
||||
}
|
||||
// return "";
|
||||
//}
|
||||
|
||||
private string MapSoil(string soil)
|
||||
{
|
||||
@@ -2069,5 +2262,29 @@ namespace FarmMapsAPI.Carbon
|
||||
}
|
||||
}
|
||||
|
||||
private static double CalculateMedian(List<double> numbers)
|
||||
{
|
||||
if (numbers == null || numbers.Count == 0)
|
||||
{
|
||||
throw new InvalidOperationException("The list is empty or null.");
|
||||
}
|
||||
|
||||
numbers.Sort();
|
||||
|
||||
int count = numbers.Count;
|
||||
if (count % 2 == 0)
|
||||
{
|
||||
// Even number of elements
|
||||
double mid1 = numbers[count / 2 - 1];
|
||||
double mid2 = numbers[count / 2];
|
||||
return (mid1 + mid2) / 2.0;
|
||||
}
|
||||
else
|
||||
{
|
||||
// Odd number of elements
|
||||
return numbers[count / 2];
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
2381
CarbonLib/CarbonCalculation25.cs
Normal file
2381
CarbonLib/CarbonCalculation25.cs
Normal file
File diff suppressed because it is too large
Load Diff
16
CarbonLib/CarbonLib.csproj
Normal file
16
CarbonLib/CarbonLib.csproj
Normal file
@@ -0,0 +1,16 @@
|
||||
<Project Sdk="Microsoft.NET.Sdk">
|
||||
<PropertyGroup>
|
||||
<TargetFramework>net8.0</TargetFramework>
|
||||
<AssemblyName>CarbonLib</AssemblyName>
|
||||
<PackageId>CarbonLib</PackageId>
|
||||
<RuntimeIdentifiers>win-x64;linux-x64;linux-musl-x64</RuntimeIdentifiers>
|
||||
<GenerateAssemblyConfigurationAttribute>false</GenerateAssemblyConfigurationAttribute>
|
||||
<GenerateAssemblyCompanyAttribute>false</GenerateAssemblyCompanyAttribute>
|
||||
<GenerateAssemblyProductAttribute>false</GenerateAssemblyProductAttribute>
|
||||
<Version>4.19.0</Version>
|
||||
</PropertyGroup>
|
||||
<ItemGroup>
|
||||
<PackageReference Include="NetTopologySuite" Version="2.5.0" />
|
||||
<PackageReference Include="NetTopologySuite.IO.GeoJSON" Version="3.0.0" />
|
||||
</ItemGroup>
|
||||
</Project>
|
||||
@@ -5,7 +5,7 @@ using System.IO;
|
||||
using System.Linq;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace FarmMapsAPI.Carbon
|
||||
namespace CarbonLib.Carbon
|
||||
{
|
||||
public class GamsSets
|
||||
{
|
||||
13
CarbonLib/Helper.cs
Normal file
13
CarbonLib/Helper.cs
Normal file
@@ -0,0 +1,13 @@
|
||||
using System.IO;
|
||||
|
||||
namespace CarbonLib
|
||||
{
|
||||
public class Helper
|
||||
{
|
||||
public static string GetPlatformIndependentDirectoryPath(string path)
|
||||
{
|
||||
return path.Replace(Path.DirectorySeparatorChar, Path.AltDirectorySeparatorChar);
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
@@ -1,18 +1,19 @@
|
||||
using CarbonService.Models;
|
||||
using FarmMapsAPI.Carbon.Models;
|
||||
using CarbonLib.Carbon.Models;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace FarmMapsAPI.Carbon
|
||||
namespace CarbonLib.Carbon
|
||||
{
|
||||
public interface ICarbonCalculation
|
||||
{
|
||||
string Validate(CarbonRequest farmInput);
|
||||
CarbonRequest MapFarmMapsToMiterra(FarmMapsCarbonRequest farmInput);
|
||||
CarbonSummary Calculate(CarbonRequest farmInput);
|
||||
CarbonSummary CalculateClimateScenario(CarbonRequest farmInput);
|
||||
double? GetCropYield(string cropCode, int year, int postalCode);
|
||||
}
|
||||
}
|
||||
@@ -3,7 +3,7 @@ using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Text;
|
||||
|
||||
namespace FarmMapsAPI.Carbon.Models
|
||||
namespace CarbonLib.Carbon.Models
|
||||
{
|
||||
public class CarbonSummary
|
||||
{
|
||||
@@ -11,6 +11,14 @@ namespace FarmMapsAPI.Carbon.Models
|
||||
public List<CropFieldSummary> CropField { get; set; }
|
||||
}
|
||||
|
||||
public class CarbonSummaryList
|
||||
{
|
||||
[JsonProperty("cropFieldClimate")]
|
||||
public List<CropFieldSummaryList> CropFieldClimate { get; set; }
|
||||
[JsonProperty("cropField")]
|
||||
public CarbonSummary CarbonSummary { get; set; }
|
||||
}
|
||||
|
||||
public class CropFieldSummary
|
||||
{
|
||||
[JsonProperty("name")]
|
||||
@@ -19,6 +27,14 @@ namespace FarmMapsAPI.Carbon.Models
|
||||
public List<YearSummary> Summary { get; set; }
|
||||
}
|
||||
|
||||
public class CropFieldSummaryList
|
||||
{
|
||||
[JsonProperty("name")]
|
||||
public string Name { get; set; }
|
||||
[JsonProperty("summary")]
|
||||
public List<YearSummaryClimate> SummaryList { get; set; }
|
||||
}
|
||||
|
||||
public class YearSummary
|
||||
{
|
||||
[JsonProperty("crop")]
|
||||
@@ -37,6 +53,8 @@ namespace FarmMapsAPI.Carbon.Models
|
||||
public double IniCcontent { get; set; }
|
||||
[JsonProperty("oM_ini")]
|
||||
public double OM_ini { get; set; }
|
||||
[JsonProperty("oM_ini_Climate")]
|
||||
public List<double> OM_ini_Climate { get; set; }
|
||||
[JsonProperty("cO2seq")]
|
||||
public double CO2seq { get; set; }
|
||||
[JsonProperty("soC_CarbonCompost")]
|
||||
@@ -51,6 +69,39 @@ namespace FarmMapsAPI.Carbon.Models
|
||||
public double Emision { get; set; }
|
||||
}
|
||||
|
||||
public class YearSummaryClimate
|
||||
{
|
||||
[JsonProperty("crop")]
|
||||
public string Crop { get; set; }
|
||||
[JsonProperty("year")]
|
||||
public int Year { get; set; }
|
||||
[JsonProperty("bulk_Density")]
|
||||
public List<double> Bulk_Density { get; set; }
|
||||
[JsonProperty("total_crop_area")]
|
||||
public double Total_crop_area { get; set; }
|
||||
[JsonProperty("balance")]
|
||||
public List<double> Balance { get; set; }
|
||||
[JsonProperty("initial")]
|
||||
public List<double> Initial { get; set; }
|
||||
[JsonProperty("iniCcontent")]
|
||||
public List<double> IniCcontent { get; set; }
|
||||
[JsonProperty("oM_ini")]
|
||||
public List<double> OM_ini { get; set; }
|
||||
[JsonProperty("cO2seq")]
|
||||
public List<double> CO2seq { get; set; }
|
||||
[JsonProperty("soC_CarbonCompost")]
|
||||
public List<double> SOC_CarbonCompost { get; set; }
|
||||
[JsonProperty("soC_CarbonGreenManure")]
|
||||
public List<double> SOC_CarbonGreenManure { get; set; }
|
||||
[JsonProperty("soC_CarbonResidues")]
|
||||
public List<double> SOC_CarbonResidues { get; set; }
|
||||
[JsonProperty("soC_CarbonManure")]
|
||||
public List<double> SOC_CarbonManure { get; set; }
|
||||
[JsonProperty("emision")]
|
||||
public List<double> Emision { get; set; }
|
||||
}
|
||||
|
||||
|
||||
public class FarmYearSummary
|
||||
{
|
||||
[JsonProperty("year")]
|
||||
@@ -2,7 +2,7 @@
|
||||
using System.Collections.Generic;
|
||||
using System.Text;
|
||||
|
||||
namespace FarmMapsAPI.Carbon.Models
|
||||
namespace CarbonLib.Carbon.Models
|
||||
{
|
||||
public class ClimateVariable
|
||||
{
|
||||
@@ -2,7 +2,7 @@
|
||||
using System.Collections.Generic;
|
||||
using System.Text;
|
||||
|
||||
namespace FarmMapsAPI.Carbon.Models
|
||||
namespace CarbonLib.Carbon.Models
|
||||
{
|
||||
public class ColumnValue
|
||||
{
|
||||
@@ -2,7 +2,7 @@
|
||||
using System.Collections.Generic;
|
||||
using System.Text;
|
||||
|
||||
namespace FarmMapsAPI.Carbon.Models
|
||||
namespace CarbonLib.Carbon.Models
|
||||
{
|
||||
public class CropCoverMonthsModel
|
||||
{
|
||||
@@ -2,7 +2,7 @@
|
||||
using System.Collections.Generic;
|
||||
using System.Text;
|
||||
|
||||
namespace FarmMapsAPI.Carbon.Models
|
||||
namespace CarbonLib.Carbon.Models
|
||||
{
|
||||
public class CropPropertyModel
|
||||
{
|
||||
@@ -2,7 +2,7 @@
|
||||
using System.Collections.Generic;
|
||||
using System.Text;
|
||||
|
||||
namespace FarmMapsAPI.Carbon.Models
|
||||
namespace CarbonLib.Carbon.Models
|
||||
{
|
||||
public class StrawCrp
|
||||
{
|
||||
@@ -2,7 +2,7 @@
|
||||
using System.Collections.Generic;
|
||||
using System.Text;
|
||||
|
||||
namespace FarmMapsAPI.Carbon.Models
|
||||
namespace CarbonLib.Carbon.Models
|
||||
{
|
||||
public class YearData
|
||||
{
|
||||
@@ -2,7 +2,7 @@
|
||||
using System.Collections.Generic;
|
||||
using System.Text;
|
||||
|
||||
namespace FarmMapsAPI.Carbon.Models
|
||||
namespace CarbonLib.Carbon.Models
|
||||
{
|
||||
public class ManureSourcesLiv
|
||||
{
|
||||
@@ -9,11 +9,11 @@ using System.Runtime.Serialization;
|
||||
using System.Text.Json.Serialization;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace FarmMapsAPI.Carbon.Models
|
||||
namespace CarbonLib.Carbon.Models
|
||||
{
|
||||
public class FarmMapsCarbonRequest
|
||||
{
|
||||
public int? ModelYear { get; set; }
|
||||
public string ModelYear { get; set; }
|
||||
public string ScenarioName { get; set; }
|
||||
public int PostalCode { get; set; }
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
using System.Collections.Generic;
|
||||
using System.Text;
|
||||
|
||||
namespace FarmMapsAPI.Carbon.Models
|
||||
namespace CarbonLib.Carbon.Models
|
||||
{
|
||||
public class GIS_Soils_Sets
|
||||
{
|
||||
@@ -3,7 +3,7 @@ using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
|
||||
namespace FarmMapsAPI.Carbon.Models
|
||||
namespace CarbonLib.Carbon.Models
|
||||
{
|
||||
public class GamsThreeKeyParameter
|
||||
{
|
||||
@@ -2,7 +2,7 @@
|
||||
using System.Collections.Generic;
|
||||
using System.Text;
|
||||
|
||||
namespace FarmMapsAPI.Carbon.Models
|
||||
namespace CarbonLib.Carbon.Models
|
||||
{
|
||||
public class ManCcontModel
|
||||
{
|
||||
@@ -3,7 +3,7 @@ using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace FarmMapsAPI.Carbon.Models
|
||||
namespace CarbonLib.Carbon.Models
|
||||
{
|
||||
public class MappingCropFarmmapsMiterraRothC
|
||||
{
|
||||
@@ -3,7 +3,7 @@ using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace FarmMapsAPI.Carbon.Models
|
||||
namespace CarbonLib.Carbon.Models
|
||||
{
|
||||
public class MappingGreenManureFarmmapsMiterraRothC
|
||||
{
|
||||
@@ -2,7 +2,7 @@
|
||||
using System.Collections.Generic;
|
||||
using System.Text;
|
||||
|
||||
namespace FarmMapsAPI.Carbon.Models
|
||||
namespace CarbonLib.Carbon.Models
|
||||
{
|
||||
public class ParameterSet
|
||||
{
|
||||
@@ -2,7 +2,7 @@
|
||||
using System.Collections.Generic;
|
||||
using System.Text;
|
||||
|
||||
namespace FarmMapsAPI.Carbon.Models
|
||||
namespace CarbonLib.Carbon.Models
|
||||
{
|
||||
public class KNMIZoneReg
|
||||
{
|
||||
@@ -2,7 +2,7 @@
|
||||
using System.Collections.Generic;
|
||||
using System.Text;
|
||||
|
||||
namespace FarmMapsAPI.Carbon.Models
|
||||
namespace CarbonLib.Carbon.Models
|
||||
{
|
||||
public class SoilBulkDensityType
|
||||
{
|
||||
@@ -2,7 +2,7 @@
|
||||
using System.Collections.Generic;
|
||||
using System.Text;
|
||||
|
||||
namespace FarmMapsAPI.Carbon.Models
|
||||
namespace CarbonLib.Carbon.Models
|
||||
{
|
||||
public class SoilPropertyType
|
||||
{
|
||||
@@ -2,7 +2,7 @@
|
||||
using System.Collections.Generic;
|
||||
using System.Text;
|
||||
|
||||
namespace FarmMapsAPI.Carbon.Models
|
||||
namespace CarbonLib.Carbon.Models
|
||||
{
|
||||
public class YieldGreenManureModel
|
||||
{
|
||||
16
NuGet.Config
16
NuGet.Config
@@ -1,16 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<configuration>
|
||||
<packageSources>
|
||||
<!--To inherit the global NuGet package sources remove the <clear/> line below -->
|
||||
<clear />
|
||||
<add key="akkerweb" value="https://repository.akkerweb.nl/repository/nuget-group/" />
|
||||
<add key="NPGSQL Unstable" value="https://www.myget.org/F/npgsql-unstable/api/v3/index.json" />
|
||||
<add key="NetTopologySuite" value="https://www.myget.org/F/nettopologysuite/api/v3/index.json" />
|
||||
</packageSources>
|
||||
<packageSourceCredentials>
|
||||
<akkerweb>
|
||||
<add key="Username" value="akkerweb" />
|
||||
<add key="ClearTextPassword" value="1QTrg6g[*" />
|
||||
</akkerweb>
|
||||
</packageSourceCredentials>
|
||||
</configuration>
|
||||
23
README.md
23
README.md
@@ -1,3 +1,24 @@
|
||||
# CarbonLib
|
||||
#
|
||||
|
||||
#
|
||||
|
||||
Library with model based on the scientifically acknowledged carbon model RothC.
|
||||
The code is written in C# .NET Core and it is adapted from a project written in GAMS.
|
||||
|
||||
Test console app is included with an example input request. The output in written to a file.
|
||||
|
||||
|
||||
## Building a sample
|
||||
|
||||
Build the sample using the .NET Core CLI, which is installed with [the .NET Core SDK](https://www.microsoft.com/net/download). Then run
|
||||
these commands from the CLI in the directory of the CarbonConsoleApp:
|
||||
|
||||
```console
|
||||
dotnet build
|
||||
dotnet run
|
||||
```
|
||||
|
||||
This will install any needed dependencies, build the project, and run
|
||||
the project respectively.
|
||||
|
||||
For questions regarding the model: chantal.hendriks@wur.nl
|
||||
Reference in New Issue
Block a user