<!--
/*****************************************************************************/
/*  Copyright 2019 WSL Institute for Snow and Avalanche Research  SLF-DAVOS  */
/*****************************************************************************/
/* This file is part of INIshell.
INIshell is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.

INIshell is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
GNU General Public License for more details.

You should have received a copy of the GNU General Public License
along with INIshell.  If not, see <http://www.gnu.org/licenses/>.
*/
-->

<!--
This is an INIshell configuration file for the software Alpine3D.
https://models.slf.ch/p/alpine3d
-->

<inishell_config application="Alpine3D" icon="alpine3d.png">

	<include file="meteoio_parametergroups.xml"/>

	<parametergroup name="INFO_ALPINE3D">
		<frame caption="Alpine3D" color="sl_blue">
			<section name="General"/>
			<parameter type="helptext" wrap="true">
				<help>&lt;i&gt;Alpine3D&lt;/i&gt; is a spatially distributed (surface), three dimensional (atmospheric) model for analyzing and predicting dynamics of snow-dominated surface processes in mountainous topography. It includes models for snow cover (&lt;i&gt;SNOWPACK&lt;/i&gt;), vegetation and soil, snow transport, radiation transfer and runoff which can be enabled or disabled on demand. For more information see the &lt;a href=&quot;https://models.slf.ch/p/alpine3d&quot;&gt;project page&lt;/a&gt; and &lt;a href=&quot;https://models.slf.ch/docserver/alpine3d/html/index.html&quot;&gt;online help&lt;/a&gt;.</help>
			</parameter>
		</frame>
	</parametergroup>

	<!-- GENERAL -->
	<include file="meteoio_general.xml"/>
	<parameter type="spacer" height="40"/>
	<parameter type="label" label="&lt;h3&gt;Application information&lt;/h3&gt;" color="sl_blue"/>
	<reference name="INFO_METEOIO"/>
	<reference name="INFO_SNOWPACK"/>
	<reference name="INFO_ALPINE3D"/>
	<parametergroup name="INFO_SNOWPACK">
		<frame caption="SNOWPACK" color="sl_blue">
			<section name="General"/>
			<parameter type="helptext" wrap="true">
				<help>&lt;i&gt;SNOWPACK&lt;/i&gt; is a multi-purpose snow and land-surface model, which focuses on a detailed description of the mass and energy exchange between the snow, the atmosphere and optionally with the vegetation cover and the soil. It also includes a detailed treatment of mass and energy fluxes within these media. See the &lt;a href=&quot;https://models.slf.ch/p/snowpack&quot;&gt;SNOWPACK project page&lt;/a&gt; and &lt;a href=&quot;https://models.slf.ch/docserver/snowpack/html/index.html&quot;&gt;online help&lt;/a&gt;.</help>
			</parameter>
		</frame>
	</parametergroup>
	<!-- <include file="workflow_alpine3d.xml"/>	HACK -->

	<include file="meteoio_timeseries_input.xml"/>
	<include file="meteoio_timeseries_output.xml"/>
	<frame caption="Coordinate system and time zone">
		<section name="Input"/>
		<parameter key="COORDSYS" type="alternative" optional="false">
			<reference name="COORDSYSTEMS"/>
			<help>Choose the coordinate system of your data's location format.</help>
		</parameter>
		<!-- when giving a precision the default value should match (no 'unsaved changes' warning): -->
		<parameter key="TIME_ZONE" type="number" format="decimal" sign="true" default="1.00" min="-12" max="14" wrap="true" notoggle="true" optional="false">
			<help>The time zone your data is reported with</help>
		</parameter>
	</frame>
	<frame caption="Meteorological data format">
		<section name="Input"/>
		<reference name="METEOIO_TS_IN"/> <!-- all METEO input plugins -->
		<help>plugin for METEO data input</help>
	</frame>
	<include file="meteoio_input_data_editing.xml"/>

	<!-- SPATIAL RESAMPLING: only include grid resampling -->
	<include file="meteoio_spatial_resampling.xml"/>
	<reference name="REGRIDDING"/>

	<!-- Grids input -->
	<include file="meteoio_grids_input.xml"/>
	<frame caption="2D Grids">
		<section name="Input"/>
		<reference name="GRID2D_IN"/>
		<reference name="DEMPLUGINS"/>
		<reference name="LANDUSEPLUGINS"/>
		<reference name="GLACIERS_IN"/>
		<reference name="POI"/>
	</frame>

	<frame caption="Runoff inputs">
		<section name="Input"/>
		<parameter type="helptext" wrap="true">
			<help>If you want to use the runoff module, please configure its inputs here, see &lt;a href=&quot;https://models.slf.ch/docserver/alpine3d/html/runoff.html&quot;&gt;Runoff&lt;/a&gt;</help>
		</parameter>
		<parameter key="CATCHMENT" type="file" mode="input" optional="true">
			<help>If you want to compute sub-catchments runoff sums, please provide the catchments grid</help>
		</parameter>
		<parameter key="CATCHMENT_NUMBERING" type="alternative" default="TAUDEM" optional="false">
			<option value="TAUDEM"/>
			<option value="ALPINE3D_OLD"/>
			<help>Numbering scheme used by the catchment definition grid to identify the individual sub-catchments</help>
		</parameter>
	</frame>
	
	<frame caption="Snowdrift inputs">
		<section name="Input"/>
		<parameter type="helptext" wrap="true">
			<help>If you want to use the snowdrift module, please configure its inputs here, see &lt;a href=&quot;https://models.slf.ch/docserver/alpine3d/html/snowdrift.html&quot;&gt;Snowdrift&lt;/a&gt;</help>
		</parameter>
		<parameter key="WINDFIELDS" type="text" size="large">
			<help>Space delimited list of wind fields files (here within GRID3DPATH) and associated number of time steps</help>
		</parameter>
		<reference name="GRID3D_IN"/>
	</frame>

	<!-- SNOWPACK EXTRA INPUT PARAMETERS -->
	<include file="snowpack_extra_input.xml"/>
	<frame caption="Initial Snow Profiles">
		<section name="Input"/>
		<reference name="SN_EXTRA_INPUT_PLUGINS"/>
	</frame>

	<!-- SNOWPACK PARAMETERS -->
	<include file="snowpack_params.xml"/>

	<!-- SNOWPACK ADVANCED -->
	<include file="snowpack_advanced.xml"/>

	<!-- ALPINE3D PARAMETERS -->
	<include file="alpine3d_params.xml"/>

	<!-- EBALANCE -->
	<include file="alpine3d_ebalance.xml"/>

	<!-- TECHSNOW -->
	<include file="snowpack_techsnow.xml"/>
	<include file="alpine3d_techsnow.xml"/>

	<!-- FILTERS -->
	<include file="meteoio_filters.xml"/>
	<frame caption="Filters">
		<section name="Filters"/>
		<reference name="FILTERS"/>
	</frame>
	<parameter type="spacer" height="50" section="Filters"/>
	<frame caption="Time filters">
		<section name="Filters"/>
		<reference name="TIMEFILTERS"/>
	</frame>

	<!-- RESAMPLING -->
	<include file="meteoio_1dInterpolations.xml"/>
	<frame caption="Temporal 1D-resampling">
		<section name="Interpolations1D"/>
		<parameter key="ENABLE_RESAMPLING" label="ENABLE_RESAMPLING" caption="Interpolate data to have it available for exact requested dates" type="checkbox" default="TRUE">
			<help>Should the data be resampled to the timesteps requested from outside (it is very strongly suggested to keep it set to TRUE if running &lt;i&gt;SNOWPACK&lt;/i&gt;)</help>
		</parameter>
		<parameter key="WINDOW_SIZE" type="number" format="integer+" min="1" default="43200" unit="s">
			<section name="Interpolations1D"/>
			<help>Default width of the biggest data gap that can be filled by temporal interpolation (in seconds: 1/2 day= 43200, 1 day=86400, 1 week=604800)</help>
		</parameter>
		<reference name="1D_INTERPOLATIONS"/>
	</frame>
	
	<!-- GENERATORS -->
	<include file="meteoio_generators.xml"/>
	<frame caption="Data generators">
		<section name="Generators"/>
		<reference name="GENERATORS"/>
	</frame>

	<!-- 2DInterpolations as required by virtual stations -->
	<include file="meteoio_2dInterpolations.xml"/>
	<frame caption="Spatial 2D-resampling">
		<section name="Interpolations2D"/>
		<parameter type="helptext" wrap="true">
			<help>&lt;font color="#ff0000"&gt;&lt;strong&gt;Please configure spatial interpolations for all forcing parameters: P, TA, RH, VW, DW, ISWR, ILWR, PSUM, PSUM_PHASE&lt;/strong&gt;&lt;/font&gt;</help>
		</parameter>
		<reference name="2D_INTERPOLATIONS"/>
	</frame>
	
	<!-- Outputs -->
	<frame caption="Coordinate system and time zone">
		<section name="Output"/>
		<parameter key="COORDSYS" type="alternative" optional="false">
			<reference name="COORDSYSTEMS"/>
			<help>Choose the coordinate system of your data's location format.</help>
		</parameter>
		<!-- when giving a precision the default value should match (no 'unsaved changes' warning): -->
		<parameter key="TIME_ZONE" type="number" format="decimal" sign="true" default="1.00" min="-12" max="14" wrap="true" notoggle="true" optional="false">
			<help>The time zone your data is reported with</help>
		</parameter>
	</frame>
	
	<include file="alpine3d_grids_output.xml"/>

	<frame caption="Meteorological data format">
		<section name="Output"/>
		<reference name="METEOIO_TS_OUT"/> <!-- all METEO output plugins -->
		<help>plugin for METEO data output</help>
	</frame>
	
	<!-- EXTRA OUTPUT PARAMETERS -->
	<include file="snowpack_output.xml"/>

</inishell_config>
