Mercurial > repos > ecology > divand_full_analysis
diff divandfull.xml @ 0:484930fdc002 draft
planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/ocean commit e395cfee9cab90bbed58ac52fb8467c896f51824
author | ecology |
---|---|
date | Thu, 01 Aug 2024 09:46:44 +0000 |
parents | |
children |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/divandfull.xml Thu Aug 01 09:46:44 2024 +0000 @@ -0,0 +1,140 @@ +<tool id="divand_full_analysis" name="DIVAnd" version="@TOOL_VERSION@+galaxy@VERSION_SUFFIX@" profile="20.01" license="MIT"> + <description>Data-Interpolating Variational Analysis in n dimensions</description> + <macros> + <token name="@TOOL_VERSION@">0.1.0</token> + <token name="@VERSION_SUFFIX@">0</token> + </macros> + <requirements> + <requirement type="package" version="1.8.5">julia</requirement> + <requirement type="package" version="2.7.9">julia-divand</requirement> + </requirements> + <command detect_errors="exit_code"><![CDATA[ + ## The HOME .julia folder is not writable inside the Docker container, so we need to set one that is writable. + export JULIA_DEPOT_PATH="\$PWD:\$JULIA_DEPOT_PATH" && + julia + '$__tool_directory__/divandfull.jl' + '$input_netcdf_identifier' + '$longmin' + '$longmax' + '$latmin' + '$latmax' + '$startdate' + '$enddate' + '$varname' + '$selmin' + '$selmax' + '$bathname' + ]]></command> + <inputs> + <param name="input_netcdf_identifier" type="data" format="netcdf" label="Input your netcdf data"/> + <param name="bathname" type="data" format="netcdf" label="Input your bathymetry netcdf file" help="for more info see below."/> + <param name="longmin" type="float" min="-180" max="180" value="0" label="Longitude minimal"/> + <param name="longmax" type="float" min="-180" max="180" value="0" label="Longitude maximal"/> + <param name="latmin" type="float" min="-180" max="180" value="0" label="Latitude minimal"/> + <param name="latmax" type="float" min="-180" max="180" value="0" label="Latitude maximal"/> + <param name="startdate" type="text" value="yyyy-mm-dd" label="Input the starting date"> + <sanitizer invalid_char=""> + <valid initial="string.digits"> + <add value="-"/> + </valid> + </sanitizer> + </param> + <param name="enddate" type="text" value="yyyy-mm-dd" label="Input the ending date"> + <sanitizer invalid_char=""> + <valid initial="string.digits"> + <add value="-"/> + </valid> + </sanitizer> + </param> + <param name="varname" type="text" value="variable" label="Write the name of the variable of the analysis" help="Example: phosphate"> + <sanitizer invalid_char=""> + <valid initial="string.letters"> + <add value="_"/> + </valid> + </sanitizer> + <validator type="regex">[0-9a-zA-Z_]+</validator> + </param> + <param name="selmin" type="integer" min="0" max="100" optional="true" value="0" label="Minimum of the salinity"/> + <param name="selmax" type="integer" min="0" max="100" optional="true" value="0" label="Maximum of the salinity"/> + </inputs> + <outputs> + <data name="output_netcdf" label="DIVAnd netcdf output" from_work_dir="outputs_netcdf/*.nc" format="netcdf"/> + </outputs> + <tests> + <test expect_num_outputs="1"> + <param name="input_netcdf_identifier" value="data_from_Eutrophication_Med_profiles_2022_unrestricted.nc"/> + <param name="bathname" location="https://dox.ulg.ac.be/index.php/s/U0pqyXhcQrXjEUX/download"/> + <param name="longmin" value="19.0"/> + <param name="longmax" value="30.0"/> + <param name="latmin" value="32.0"/> + <param name="latmax" value="38.0"/> + <param name="varname" value="phosphate"/> + <param name="startdate" value="1950-01-01"/> + <param name="enddate" value="2017-12-31"/> + <param name="selmin" value="0"/> + <param name="selmax" value="100"/> + <output name="output_netcdf"> + <assert_contents> + <has_size value="68291" delta="0"/> + </assert_contents> + </output> + </test> + </tests> + <help><![CDATA[ + +.. class:: infomark + +**What it does** + +This tool takes a observation netcdf file and create climatology + +**Input** + +- An ocean observation netcdf file +- A bathymetry netcdf file, you can download it like this: download("https://dox.ulg.ac.be/index.php/s/U0pqyXhcQrXjEUX/download", "gebco_30sec_8.nc") +- Some complementary information for the tool to better understand your data and create your climatology on the right area: latitudes, longitudes, dates, and salinity.$ + +**Output** + +One netcdf file containing the climatology created by DIVAnd. + + +**A bit of context** + +DIVAnd (Data-Interpolating Variational Analysis in n dimensions) performs an n-dimensional variational analysis/gridding of +arbitrarily located observations. Observations will be interpolated/analyzed on a curvilinear grid in 1, 2, 3 or more dimensions. +In this sense it is a generalization of the original two-dimensional DIVA version (still available `here <https://github.com/gher-uliege/DIVA>`_ but +not further developed anymore). + +The method bears some similarities and equivalences with Optimal Interpolation or Krigging in that it allows to create a smooth +and continous field from a collection of observations, observations which can be affected by errors. The analysis method is however +different in practise, allowing to take into account topological features, physical constraints etc in a natural way. +The method was initially developped with ocean data in mind, but it can be applied to any field where localized observations have +to be used to produce gridded fields which are "smooth". + +DIVAndrun is the core analysis function in n dimensions. It does not know anything about the physical parameters or units you work with. +Coordinates can also be very general. The only constraint is that the metrics (pm,pn,po,...) when multiplied by the corresponding length +scales len lead to non-dimensional parameters. Furthermore the coordinates of the output grid (xi,yi,zi,...) need to have the same units +as the observation coordinates (x,y,z,...). + +DIVAndfun is a version with a minimal set of parameters (the coordinates and values of observations, i.e. (x,f), the remaining parameters +being optional) and provides an interpolation function rather than an already gridded field. + +diva3D is a higher-level function specifically designed for climatological analysis of data on Earth, using longitude/latitude/depth/time +coordinates and correlations length in meters. It makes the necessary preparation of metrics, parameter optimizations etc you normally would +program yourself before calling the analysis function DIVAndrun. + +DIVAnd_heatmap can be used for additive data and produces Kernel Density Estimations. + +DIVAndgo is only needed for very large problems when a call to DIVAndrun leads to memory or CPU time problems. This function tries to decide +which solver (direct or iterative) to use and how to make an automatic domain decomposition. Not all options from DIVAndrun are available. + +If you want to try out multivariate approaches, you can look at DIVAnd_multivarEOF and DIVAnd_multivarJAC + +If you want more informations about the functions and parameters see also the `documentations here <https://gher-uliege.github.io/DIVAnd.jl/latest/index.html>`_. + + ]]></help> + <citations> + <citation type="doi">doi:10.5194/gmd-7-225-2014</citation> + </citations> +</tool>