# MNP Gebruiken ## Algemeen MNP werkt op een aantal [geopspatial rasters](https://desktop.arcgis.com/en/arcmap/latest/manage-data/raster-and-images/what-is-raster-data.htm) en tabellen, die de gebruiker zelf moet aanleveren naar specificaties van het model. Welke rasters en tabellen precies nodig zijn hangt af van de run-configuratie van de gebruiker. Voor elke MNP run moet tenminste een lijst van soorten opgegeven worden, waarvoor MNP de analyses zal uitvoeren. De opgegeven soorten moeten bekend zijn in de soorten-database die meegeleverd wordt met MNP. Deze bevat momenteel (nov. 2022) 150 vogels, 56 vlinders en 812 planten. Elke MNP run resulteert in een _cover_ directory, op een door de gebruiker opgegeven locatie. In de _cover_ wordt alle MNP output geplaatst, plus gestandardiseerde kopieen van alle input. Op deze manier wordt een op-zichzelf-staand data pakket gecreeerd waarmee de MNP uitkomsten gereconstueerd kunnen worden. MNP controleert of de opgegeven data bestaat en of het voldoet aan de specificaties. Zo niet, dan wordt een foutmelding gegenereerd en de run afgebroken. Het log-file waarin de foutmeldingen staan komt in de _cover_. MNP modelleert of een soort duurzaam voor kan komen gegeven de verspreiding en kwaliteit van leefgebied. Dit is de _duurzaamheidsbeoordeling_. MNP beoordeelt uit zich zelf echter niet of de soort goed is gemodelleerd. Hiervoor is een aparte validatie vereist. Een aanvullende MNP module is hiervoor beschikbaar. Een standaard MNP run voor 146 soorten inclusief 2 environmental factors en aggregatie van de beheertypenkaart, duurt ongeveer 2 uur op een standaard WUR laptop. > **LET OP: Gebruik van MNP met alternatieve parameters en/of invoerbestanden is niet gevalideerd. Zorg dat de parameters > goed aansluiten bij de gebruikte invoerkaarten. Kijk zorgvuldig en kritisch naar de modeluitkomsten en vergelijk deze met > expertanalyses.** ## INI MNP wordt ingesteld via een [ini](https://en.wikipedia.org/wiki/INI_file) bestand. Hieronder staan de sections en keys zoals gebruikt door MNP. ```{code-block} ini [general] project_members = metadata_comment = simulation_date = app_version = v7 user = computer = [IO] cover_directory = hsi_from_disk = hsi_directory = [traits] species_names = species_traits = group_traits = [land_types] source = table = suitability_indexes = [parameters] minimal_hsi = 0.1 small_pop_threshold_area = 500 small_pop_slope = 2 response_020 = 0 response_080 = 0.5 response_100 = 1 [output] assigned_species_map = True key_population_count_map = True fraction_key_populations_map = True qgis_layers = True nkeys_map_per_species = True [species_subselection_1] name = table = [species_subselection_2] name = table = [sub_region_1] name= raster= [environmental_1] name= raster= table= [environmental_2] name= raster= table= ``` Note that the inif file can be loaded with multiple numbered `species_subselection` and `environmental` sections. ## Command Line Interface MNP wordt vanuit de CMD aangeroepen met het adres naar een valide ini-file als enig argument: `(mnp_environment) C:\apps\>python -m mnp c:\temp\mnp_config_scenario01.ini` De gebruiker is zelf verantwoordelijk om de ini file op te stellen. ## Input pathways Er zijn verschillende mogelijkheden om MNP te draaien, waarbij verschillende combinaties van input data benodigd zijn. * met land-type raster en 1 of meer environmental variables * met land-type raster, zonder environmental variables * met reeds ge-aggregeerde land-types en 1 of meer environmental factors * met reeds ge-aggregeerde land-types, zonder environmental variables * met alleen eerder gemaakte HSI files ### Verplichte invoer * cover location * parameters (zie [hier](https://opengis.wur.nl/MNP/sourcecode/mnp.html#mnp.config.MNPParameters) voor de default waardes) * tenminste 1 [soort-selectie tabel](data_specificaties.md#species-selection-tabel) * Gebruik default of eigen versies voor: * [species names tabel](data_specificaties.md#species-names-tabel) * [species traits tabel](data_specificaties.md#species-traits-tabel) * [group traits tabel](data_specificaties.md#group-traits-tabel) ### Land type Land-types is de generieke term voor de natuurtypologie die door MNP gebruikt wordt. Dit zijn meestal de SNL Index Natuur- en Landschap [Natuurtypen](https://www.bij12.nl/onderwerpen/natuur-en-landschap/index-natuur-en-landschap/#onderdeel-natuurtypen) (ook wel: N-typen, of kortweg **beheertypen**). De land-type wordt meestal aangeduid als de **beheertypenkaart** of de **neergeschaalde beheertypenkaart**. Laatstgenoemde term verwijst naar het resultaat van een bewerkingsslag op de beheertypenkaart. In de zogenaamde _neerschaling_ worden beheertypen [N01](https://www.bij12.nl/onderwerp/natuursubsidies/index-natuur-en-landschap/natuurtypen/n01-grootschalige-dynamische-natuur/), [N05.03](https://www.bij12.nl/onderwerp/natuursubsidies/index-natuur-en-landschap/natuurtypen/n05-moerassen/n05-03-veenmoeras/), [N05.04](https://www.bij12.nl/onderwerp/natuursubsidies/index-natuur-en-landschap/natuurtypen/n05-moerassen/n05-04-dynamisch-moeras/) en [N08.02](https://www.bij12.nl/onderwerp/natuursubsidies/index-natuur-en-landschap/natuurtypen/n08-open-duinen/n08-02-open-duin/) vervangen door specifiekere beheertypen die beter aansluiten bij de vereisten van MNP. De neerschalingsprocedure is uitgebreid beschreven in o.a. [Meeuwsen & Wamelink 2022](https://edepot.wur.nl/568181) en Sanders _et al_ 2026. MNP kan op twee manieren werken met land-types: #### Land-types vanuit raster Het data-pakket voor land-types bestaat uit: * het raster zelf ([integer geotiff](data_specificaties.md#geospatial-rasters)) * [legenda file](data_specificaties.md#land-type-raster-legenda-tabel) met koppeling tussen pixel waarde en het land-type * [suitability indexes tabel](data_specificaties.md#land-type-suitability-index-tabel) met geschiktheid tussen soort-landtype [0-1] #### Pre-aggregated land types Als MNP een land-type raster opgegeven krijgt, wordt deze geaggregeerd van 2.5 naar 25m cellen. Uit deze procedure ontstaat een aparte matrix voor elk land_type, waarvan de cel-waarde het areaal van dat land-type in de betreffende cel weergeeft. Deze worden als [npz](https://numpy.org/doc/stable/reference/generated/numpy.savez.html) bestanden opgeslagen in de output cover. ![screenshot van npz files in windows explorer](../_images/npz_files.JPG) NPZ bestanden kunnen direct aan MNP worden aangeboden als brondata voor de land-types, MNP slaat dan de aggregatie-stap over. Het ini file ziet er dan als volgt uit: ```{code-block} ini [land_types] source = c:/apps/existing_mnp_cover/input/land_type/land_types_aggregated suitability_indexes =c:/apps/existing_mnp_cover/input/land_type/suitability_indexes.csv ``` ### Environmental variables MNP kan werken met een, geen of meerdere environmental variables. Elke Environmental Variable bestaat uit: * de naam van het environmental factor (string) * het raster zelf ([floating point geotiff](data_specificaties.md#geospatial-rasters)) * [suitability indexes tabel](data_specificaties.md#environmental-factor-suitability-index-tabel) MNP gebruikt in de meeste toepassingen drie environmental variables: 1. gemiddelde voorjaar grondwaterstand (GVG, in cm tov maaiveld). Zie [Pouwels et al (2017)](https://edepot.wur.nl/429587#page=39). 2. N-depositie (NDep, in mol N/ha/jr), beschikbaar via het RIVM [GCN & GDN kaarten](https://www.rivm.nl/gcn-gdn-kaarten). 3. bodem-pH, gebaseerd op [Wamelink et al (2019)](https://onlinelibrary.wiley.com/doi/full/10.1111/avsc.12423). ### HSI files MNP kan ook eerder gemaakte HSI files als input tot zich nemen. De INI ziet er dan als volgt uit: ```{code-block} ini [IO] cover_directory = hsi_from_disk = True hsi_directory = c:/apps/existing_mnp_cover/output/hsi ``` ## Scenariobuilder De kracht van MNP is de vergelijkende analyse van een referentiesituatie met een scenario. De huidige situatie dient meestal als referentie; in het scenario kunnen bepaalde beleidsprogramma's gerealiseerd zijn. Bijvoorbeeld, door het doelareaal bossen uit de [Bossenstrategie](https://www.staatsbosbeheer.nl/wat-we-doen/nieuws/2020/11/ministerie-van-lnv-presenteert-nieuwe-bossenstrategie) toe te voegen aan de beheertypenkaart, kan het effect daarvan op het MNP-doelbereik worden berekend. Maar hoe stop je 37.000 ha bos in de beheertypenkaart? Hiervoor is de [Scenariobuilder](https://git.wur.nl/scenbuilder) ontwikkeld; een verzameling tools en procedures waarmee ruimtelijk-expliciete scenario's ontworpen en gebouwd kunnen worden. Hierbij wordt nadrukkelijk rekening gehouden met de vereisten van MNP aan de inputdata; de scenariobuilder-producten zijn direct bruikbaar in MNP. Er zijn verschillende strategieen om een scenario te ontwikkelen, zie bijv. de [Natuurverkenning Scenario Natuurinclusief](https://edepot.wur.nl/558179#page=137), [Kruit et al 2025](https://edepot.wur.nl/679713#page=47) en [Biersteker & Roelofsen 2024](https://edepot.wur.nl/644299). De meest-gebruikte procedure begint door een aantal bronkaarten te verzamelen. Dit zijn GIS-raster kaarten waarop de benodige ruimtelijke informatie staat, zoals landgebruik, beheertypen, overstromingsgevoelligheid, landbouwpercelen etc. Alle bronkaarten worden gecombineerd in een _combined raster_ met de [Combine tool](https://git.wur.nl/scenbuilder/combiner). Daarna worden _beslisregels_ opgesteld die bepaalde categorieen van de bronkaarten identificeren en daaraan een nieuwe vorm van landgebruik koppelen. Bijvoorbeeld, _landbouwpercelen met gewascode "braakliggend" in gebieden het "hoog" overstromingsrisico'_ worden in het scenario aangewezen als 'Beheertype N12.02'. Beslisregels worden op gestandardiseerde wijze vastgelegd in een Excel sheet en daarna opgepakt door de **[Multi Reclass Tool](https://git.wur.nl/scenbuilder/mrtplus)** (MRT). De MRT past de beslisregels toe op het gecombineerde raster en produceert de gevraagde scenariokaart. Dit proces wordt nader [hier](https://git.wur.nl/scenbuilder/mrtplus/-/blob/main/README.md?ref_type=heads) beschreven. Scenariokaarten voor GVG, pH en NDep worden meestal gemaakt aan de hand van optimalisatie. Dit betekent dat de environmental-variable een waarde krijgt die optimaal is voor het daar-liggende beheertype (zie [Sanders et al 2022, bijlage 10](https://edepot.wur.nl/561843#page=98)). Dit kan voor de volledigheid van de beheertypen gebeuren (zoals bij het [CLO](https://www.clo.nl/indicatoren/nl152308-geschiktheid-ruimtelijke-condities-landnatuur-2021), of alleen op plaatsen waar volgens het scenario bepaalde natuurherstelmaatregelen worden uitgevoerd (zoals in de [MESN](https://edepot.wur.nl/644299)). ## MNP Output De output van een MNP run is een cover directory. De exacte inhoud van de cover varieert met de input pathways. De standaard cover-opbouw is: * **input**. Hierin wordt alle input data naartoe gekopieerd en hernoemd naar een generieke naam. Hiermee is het mogelijk om de MNP run te reproduceren. Hierin staat ook de geaggregeerde versie van de land-types kaart. * **meta**. Hierin staan het run-log, foutmeldingen en een kopie van de ini file. * **output**. Hierin staat alle output die per soort geproduceerd wordt, zoals de HSI-rasters en environmental_factor rasters. Per subselectie is er een subdirectory met de output van de soorten behorende bij die subselectie. Voor elke soort wordt middels een QGIS layer file terugverwezen naar de raster files in ..\output. In `.\tables` staan de gedetailleerde en samenvattende tabel van de species subselectie. In de samenvatting tabel staat oa het percentage doelbereik. In `.\hotspot_maps` staan de `assigned_species`, `key_populations_count` en `fraction_key_populations` kaarten. ![screenshot uit file explorer met een MNP-cover geopend](../_images/design_mnp_cover.png) ### Detailed table In `detailed_table.csv` staan alle resultaten van alle soorten in de soortselectie. De kolommen zijn: |Field|Description|Dimension|Range|Type| |---|---|---|---|---| |species_code|Unieke code ter identifcatie van de soort|-|-|string| |scientific_name|Latijnse naam van de soort|-|-|string| |local_name|Nederlandse naam van de soort|-|-|string| |group\_name|naam van de groep waartoe de soort behoort, ref `group_traits` tabel|-|-|string| |key\_population\_area\_ha|oppervlakte van een keypopulation, ref `species_traits` tabel|hectare|0-?|float| |possibly\_viable\_threshold|drempelwaarde voor aantal normkeys om de soort _possibly viable_ te laten zijn, ref `group_traits` tabel|hectare|0-?|integer| |viable_threshold|drempelwaarde voor aantal normkeys om de soort _viable_ te laten zijn, ref `group_traits` tabel|hectare|0-?|integer| |populations|aantal populaties van de soort|aantal|0-?|integer| |total\_effective\_area_m|effectief areaal in vierkante meter, alle populaties gesommeerd|m^2|0-?|float| |total\_effective\_area_kp|effectief areaal in sleutelpopulaties, alle populaties gesommeerd|sleutelpopulaties|0-?|float| |total\_normalised\_key_populations|effectief areaal in genormaliseerde sleutelpopulaties, alleen sleutelpopulaties gesommeerd|normkeys|0-?|float| |viability_class|duurzaamheidsklasse|-|1,2,3|integer| |viability\_class\_description|omschrijving van de duurzaamheidsklasse|-|not viable, possibly viable, viable|string| ## Add-ons Er zijn diverse [add-ons](https://git.wur.nl/MNP/add_ons) ontwikkeld die aanslaan op de standaard MNP-output. De add-ons leveren een bepaalde nabewerking op een of meerdere bestanden in de MNP cover en geven daarmee verdiepend inzicht in de MNP resultaten. Momenteel zijn de volgende add-ons beschikbaar: * [dominant land-type](https://git.wur.nl/MNP/add_ons/dominant-land-type): creert een land-type map op 25m resolutie. * [environmental factor hotspots](https://git.wur.nl/MNP/add_ons/environmental-factor-hotspots): gemiddelde respons van de lokale soorten op de heersende abiotische condities. * [environmental factor bottlenecks](https://git.wur.nl/MNP/add_ons/environmental-factor-bottlenecks): berekent de mate waarin een abiotische factor de realisatie van keypopulaties belemmert. * [validatie](https://git.wur.nl/MNP/add_ons/validatie): vergelijking van de gemodelleerde soortverspreiding met NDFF data. * Cover tools: * [cover summary](https://git.wur.nl/MNP/add_ons/cover-tools/-/blob/main/src/cover_summary.py?ref_type=heads): lichtgewicht samenvatting van eem MNP-cover. * [cover overview](https://git.wur.nl/MNP/add_ons/cover-tools/-/blob/main/src/cover_overview.py?ref_type=heads): vergelijking in Excel van twee of meer MNP covers.