!-----------------------------------------------------------------------
! Copyright 2017 Marco van Hulten
! 
! This file is part of ComPlot.
! 
! ComPlot 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.
! 
! ComPlot 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 ComPlot.  If not, see <http://www.gnu.org/licenses/>.
!
!-----------------------------------------------------------------------

- possibility to use all loaded tracers, not just one
    (c2d_sequestrate2sims.jnl is ugly and inefficient)
- with this in mind, reorganise (see e.g. e-mail to Anne 2016-02-24)
- handle both 2D and 3D fields naturally:
    scripts/set_model_variables.jnl ?
    most generally: R^n -> R, n \in N
- print some handy hints, like "Simulation names are stored in 'simulations'"
- yes? go vland ! blijkbaar kun je eerder argumenten als optioneel doen:
    Arguments 3 and 4, longitude and latitude of slice, are required.
    http://ferret.pmel.noaa.gov/Ferret/documentation/release-notes/version-6-8-2-release-notes
- c2d_ndepths TRACER Z1 [Z2 [Z3 ...]]   ! nr_of_depths = #args-1 !
    Hoe goed met argumenten om te gaan?
- eenvoudiger transects toevoegen...
- dit moet handiger (na c2d script moeten variabelen eenvoudig gebruikt kunnen worden):
    yes? sh var tTh
     TTH = TH230D + PTH
          "Total ^2^3^0Th (mBq/m^3)"
    yes? let tTh = (TH230D + PTH) * 1000 * MaskDraw[d=($Grid)]
  Nu zit dat als TR = RDPATH * 1 * GRID_MASK
- transects op basis van een paar coordinaten en hoek?
- general method for overlays on top of plots: data circles (DONE), AOSF, (velocity)vectors, ...
- see feature list on https://odv.awi.de/ (ideas for homepage and README, not so much development)
- "init_tracer*s*.jnl" suggereert de initialisering van alle tracers; dat is juist, maar waarom
  dan één argument: yes? go init_tracers dMn
- volgorde argumenten van, bijv., c2d_transect_double onlogisch: tr vis vis vis tr
- test foute argumenten (syntax en ook semantiek) -> handige foutmeldingen?
- update # render_layer arguments: plot and pplus arguments are not elegant
- simplify the choices in render_layer.jnl (the 2-D with/without observations etc.)
- gunzip in background (gzip .. &)?
- ($Tr).units versus ($Unit) is inconsistent!
- go init_tracers is ergens onlogisch, want het argument is een specifieke tracer;
  van de andere kant woren alle tracers geïnitialiseerd (wat het geheel onligsch maakt).
- kopiëren duurt vaak lang, maar meestal is slechts één tijdstap of tracer nodig...
- checksum (md5 of sha...) om te kijken of een bestand de nieuwste is? is lastig omdat ze typisch op asterix:\$ANALYSIS/ *.nc zijn en op curie *.nc.gz
- is langzaam: refactoring nodig zodat niet vanalles dubbel wordt gedaan?
- plotting in new window (at least c2d_4depths), then switching between workspaces, removes the visual plot in the first window.
- vreemde uitvoer als ik -v met gzip meegeef: check of alles wel goed gaat (en dan evt. -v verwijderen)
- toch niet
    c2d_transect_double TRACER SECTION1 SECTION2 ...
  maar intuïtiver
    c2d_transect_double SECTION1 SECTION2 TRACER ... ?
- maybe de 'crosshair' (evenaar/0-merid.) wordt 2x getekend bij verschillende overlays; in dat geval, teken alleen voor een v/d overlays!
- pal=($PAL), rainbow, rainbow3, rainbow4 ...:/
- http://ferret.pmel.noaa.gov/Ferret/documentation/users-guide/variables-xpressions/XPRESSIONS#_VPID_125 for examples on sections at arbitrary angles
- selectie van simulaties voor tenminste c2d_transect_nsims.jnl: [[*MININDEX] MAXINDEX]
- broken on curie (works correctly on login or asterix):
    [mvhulten@asterix2 analysis]$ if (ssh ${user_server} '[ -d /sdftmp ]'); then echo "Directory exists."; fi
    Directory exists.
- bij aanroepen van c2d_*.jnl scripts wordt altijd init_*.jnl enzovoort geladen; eigenlijk niet nodig; beter als dit efficienter wordt geïmplemnteerd
- remove dependency on FAST scripts (or derivatives)
- placement of key is analytically correct now, but placement of labels (x-coordinate) is different between different c2d_*.jnl scripts!
- a lot of observational datasets are used now... how to reduce the dependencies of lots of stuff in the hg trunc?
- make code faster: GO set_tracer tPOC, then in set_tracer.jnl: let tracer_is_set = 1
  AND/OR set_tracer.jnl checks if init_tracer is done.
- include data/phi_atl.nc (or script to produce)?
- go init_visuals  moet altijd werken (dus `study` moet zijn gedefinieerd); simple plot moet er goed uitzien
- use udunits ?
- solutions for small circles + overlap (could be settings):
    0. no overlap lines (already std behaviour);
    1. small dots, size = f(x,y,z);
    2. plot only part of dots;
    3. average of value on average of (x,y,z);
    4. use large circles, let be the overlap, and plot separate plot of region.
(3) is most advanced, but problematic when there are extremes.
- rethink lengths, (La)TeX/ConTeXt? https://en.wikibooks.org/wiki/LaTeX/Lengths
- optional argument for c2d files: label (to override defaults, which can be ($Tr), but is also overrided elsewhere sometimes in the code... double override would be too much design)!
- fix Pxyz, https://github.com/NOAA-PMEL/Ferret/issues/950 solution in Ferret 7.4?

