diff --git a/crpptbx_new/demos/gdat_tutorial.m b/crpptbx_new/demos/gdat_tutorial.m
index 242c2f21bf46ffc4ce432d8f051d04b9456b658e..5314ddf1751d1a6438b45f9fe65bd599c492e36d 100644
--- a/crpptbx_new/demos/gdat_tutorial.m
+++ b/crpptbx_new/demos/gdat_tutorial.m
@@ -23,4 +23,47 @@ gdat_data.gdat_call % always contains the string so that the same gdat call can
 %% list of data_request names for a specific machine
 gdat_data = gdat('machine','aug');
 gdat_data.gdat_request
-%%
+%% a simple example: get plasma current
+gdat_data = gdat(48836,'ip'); % shot number is for TCV (default machine if run at CRPP)
+gdat_data = gdat(48836,'ip','doplot',1);
+gdat_data = gdat(48836,'Ip');
+% Note that the return data_request name is 'ip', since lower case is used throughout
+gdat_data.gdat_request
+%% a 2D example with Te profiles
+gdat_data = gdat(48836,'te'); % return thomson data, thus versus Z (vertical height) of local measurements
+gdat_data = gdat(48836,'te','doplot',1); % default plot is always versus time, using gdat_data.t
+% for more specific plots, use gdat_plot(gdat_data,...) function
+%% Explaination of main fields
+gdat_data = gdat(48836,'te');
+gdat_data
+% The following fields are always present:
+% gdat_data.data  % (as well as .units) providing the data
+% gdat_data.dim   % (as well as .dimunits) providing the coordinates
+% gdat_data.t     % corresponding to the time coordinate (copied from dim{timecoord})
+% gdat_data.x     % all coordinates but time (typically radial if 2D signal or channel number)
+% gdat_data.shot
+% gdat_data.gdat_request
+% gdat_data.gdat_params
+% gdat_data.data_fullpath  % provides information on tracename origin within the database
+% gdat_data.gdat_call  % string corresponding to the current call to gdat
+
+% Some extra fields might be present:
+% gdat_data.label  % usually present, used as label in plots
+% gdat_data.error_bar  % error_bars to be used in errorbar plot e.g: errorbar(gdat_data.x,gdat_data.data(:,20),gdat_data.error_bar(:,20),'*-')
+% gdat_data.mapping_for_tcv  % information used to fetch the data,
+%                            contains information on the time index, useful for multi-D data
+%
+%% Explanation of basic parameters fields of gdat_params
+gdat_data = gdat(48836,'te');
+gdat_data.gdat_params % at this stage contains few elements, will depend on specific data_request
+%
+% gdat_params should contain all the information necessary to recall gdat
+% and get the same information, except the shot number, thus
+% gdat_data2 = gdat(48836,gdat_data.gdat_params);
+% should return the same values. This allows to quickly load the similar data from different shot
+shotlist=[48836, 48837, 48839];
+for ishot=1:length(shotlist)
+    gdat_data_te{ishot} = gdat(shotlist(ishot),gdat_data.gdat_params);
+end
+gdat_plot(gdat_data_te{3});
+
diff --git a/crpptbx_new/demos/html/gdat_tutorial.html b/crpptbx_new/demos/html/gdat_tutorial.html
index 51a1cd9a681f05fa5f060842dd8409af0533837c..719f952aa83db8849a43f13d7313eaeb62abef96 100644
--- a/crpptbx_new/demos/html/gdat_tutorial.html
+++ b/crpptbx_new/demos/html/gdat_tutorial.html
@@ -6,7 +6,7 @@
    <!--
 This HTML was auto-generated from MATLAB code.
 To make changes, update the MATLAB code and republish this document.
-      --><title>tutorial</title><meta name="generator" content="MATLAB 8.3"><link rel="schema.DC" href="http://purl.org/dc/elements/1.1/"><meta name="DC.date" content="2015-08-21"><meta name="DC.source" content="tutorial.m"><style type="text/css">
+      --><title>gdat_tutorial</title><meta name="generator" content="MATLAB 8.3"><link rel="schema.DC" href="http://purl.org/dc/elements/1.1/"><meta name="DC.date" content="2015-08-21"><meta name="DC.source" content="gdat_tutorial.m"><style type="text/css">
 html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,big,cite,code,del,dfn,em,font,img,ins,kbd,q,s,samp,small,strike,strong,sub,sup,tt,var,b,u,i,center,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td{margin:0;padding:0;border:0;outline:0;font-size:100%;vertical-align:baseline;background:transparent}body{line-height:1}ol,ul{list-style:none}blockquote,q{quotes:none}blockquote:before,blockquote:after,q:before,q:after{content:'';content:none}:focus{outine:0}ins{text-decoration:none}del{text-decoration:line-through}table{border-collapse:collapse;border-spacing:0}
 
 html { min-height:100%; margin-bottom:1px; }
@@ -66,7 +66,7 @@ table td { padding:7px 5px; text-align:left; vertical-align:top; border:1px soli
 
 
 
-  </style></head><body><div class="content"><h2>Contents</h2><div><ul><li><a href="#1">gdat tutorial: some basic calls and functionalities</a></li><li><a href="#2">getting the list of available predefined data_request names</a></li><li><a href="#3">list of data_request names for a specific machine</a></li></ul></div><h2>gdat tutorial: some basic calls and functionalities<a name="1"></a></h2><p>gdat calls in fact the main function MACHINE/gdat_machine.m within the gdat folder gdat can be call with one of the available "data_request" keyword or with a full trace_name</p><p>The basic call is: data_out_struct = gdat(shot,data_request,'option1',option1_val,...);</p><p>But sub-cases are also valid and explained below</p><p>At this stage, you need to do the following to test it:</p><pre class="codeinput">addpath <span class="string">~sauter/matlab/gdat_develop/crpptbx_new</span>
+  </style></head><body><div class="content"><h2>Contents</h2><div><ul><li><a href="#1">gdat tutorial: some basic calls and functionalities</a></li><li><a href="#2">getting the list of available predefined data_request names</a></li><li><a href="#3">list of data_request names for a specific machine</a></li><li><a href="#4">a simple example: get plasma current</a></li><li><a href="#5">a 2D example with Te profiles</a></li><li><a href="#6">Explaination of main fields</a></li><li><a href="#7">Explanation of basic parameters fields of gdat_params</a></li></ul></div><h2>gdat tutorial: some basic calls and functionalities<a name="1"></a></h2><p>gdat calls in fact the main function MACHINE/gdat_machine.m within the gdat folder gdat can be call with one of the available "data_request" keyword or with a full trace_name</p><p>The basic call is: data_out_struct = gdat(shot,data_request,'option1',option1_val,...);</p><p>But sub-cases are also valid and explained below</p><p>At this stage, you need to do the following to test it:</p><pre class="codeinput">addpath <span class="string">~sauter/matlab/gdat_develop/crpptbx_new</span>
 </pre><h2>getting the list of available predefined data_request names<a name="2"></a></h2><pre class="codeinput">gdat_data = gdat;
 <span class="comment">%</span>
 <span class="comment">% This is the simplest call and returns 3 useful information:</span>
@@ -180,7 +180,76 @@ ans =
     'zmag'
     'equil'
 
-</pre><p class="footer"><br><a href="http://www.mathworks.com/products/matlab/">Published with MATLAB&reg; R2014a</a><br></p></div><!--
+</pre><h2>a simple example: get plasma current<a name="4"></a></h2><pre class="codeinput">gdat_data = gdat(48836,<span class="string">'ip'</span>); <span class="comment">% shot number is for TCV (default machine if run at CRPP)</span>
+gdat_data = gdat(48836,<span class="string">'ip'</span>,<span class="string">'doplot'</span>,1);
+gdat_data = gdat(48836,<span class="string">'Ip'</span>);
+<span class="comment">% Note that the return data_request name is 'ip', since lower case is used throughout</span>
+gdat_data.gdat_request
+</pre><pre class="codeoutput">
+ans =
+
+ip
+
+</pre><img vspace="5" hspace="5" src="gdat_tutorial_01.png" alt=""> <h2>a 2D example with Te profiles<a name="5"></a></h2><pre class="codeinput">gdat_data = gdat(48836,<span class="string">'te'</span>); <span class="comment">% return thomson data, thus versus Z (vertical height) of local measurements</span>
+gdat_data = gdat(48836,<span class="string">'te'</span>,<span class="string">'doplot'</span>,1); <span class="comment">% default plot is always versus time, using gdat_data.t</span>
+<span class="comment">% for more specific plots, use gdat_plot(gdat_data,...) function</span>
+</pre><img vspace="5" hspace="5" src="gdat_tutorial_02.png" alt=""> <h2>Explaination of main fields<a name="6"></a></h2><pre class="codeinput">gdat_data = gdat(48836,<span class="string">'te'</span>);
+gdat_data
+<span class="comment">% The following fields are always present:</span>
+<span class="comment">% gdat_data.data  % (as well as .units) providing the data</span>
+<span class="comment">% gdat_data.dim   % (as well as .dimunits) providing the coordinates</span>
+<span class="comment">% gdat_data.t     % corresponding to the time coordinate (copied from dim{timecoord})</span>
+<span class="comment">% gdat_data.x     % all coordinates but time (typically radial if 2D signal or channel number)</span>
+<span class="comment">% gdat_data.shot</span>
+<span class="comment">% gdat_data.gdat_request</span>
+<span class="comment">% gdat_data.gdat_params</span>
+<span class="comment">% gdat_data.data_fullpath  % provides information on tracename origin within the database</span>
+<span class="comment">% gdat_data.gdat_call  % string corresponding to the current call to gdat</span>
+
+<span class="comment">% Some extra fields might be present:</span>
+<span class="comment">% gdat_data.label  % usually present, used as label in plots</span>
+<span class="comment">% gdat_data.error_bar  % error_bars to be used in errorbar plot e.g: errorbar(gdat_data.x,gdat_data.data(:,20),gdat_data.error_bar(:,20),'*-')</span>
+<span class="comment">% gdat_data.mapping_for_tcv  % information used to fetch the data,</span>
+<span class="comment">%                            contains information on the time index, useful for multi-D data</span>
+<span class="comment">%</span>
+</pre><pre class="codeoutput">
+gdat_data = 
+
+               data: [23x49 double]
+              units: 'eV'
+                dim: {2x1 cell}
+           dimunits: {2x1 cell}
+                  t: [49x1 double]
+                  x: [23x1 double]
+               shot: 48836
+       gdat_request: 'te'
+        gdat_params: [1x1 struct]
+      data_fullpath: '\results::thomson:te'
+              label: 'Te'
+          error_bar: [23x49 double]
+    mapping_for_tcv: [1x1 struct]
+          gdat_call: 'gdat(48836,'te'); % nargout = 1'
+
+</pre><h2>Explanation of basic parameters fields of gdat_params<a name="7"></a></h2><pre class="codeinput">gdat_data = gdat(48836,<span class="string">'te'</span>);
+gdat_data.gdat_params <span class="comment">% at this stage contains few elements, will depend on specific data_request</span>
+<span class="comment">%</span>
+<span class="comment">% gdat_params should contain all the information necessary to recall gdat</span>
+<span class="comment">% and get the same information, except the shot number, thus</span>
+<span class="comment">% gdat_data2 = gdat(48836,gdat_data.gdat_params);</span>
+<span class="comment">% should return the same values. This allows to quickly load the similar data from different shot</span>
+shotlist=[48836, 48837, 48839];
+<span class="keyword">for</span> ishot=1:length(shotlist)
+    gdat_data_te{ishot} = gdat(shotlist(ishot),gdat_data.gdat_params);
+<span class="keyword">end</span>
+gdat_plot(gdat_data_te{3});
+</pre><pre class="codeoutput">
+ans = 
+
+    data_request: 'te'
+         machine: 'tcv'
+          doplot: 0
+
+</pre><img vspace="5" hspace="5" src="gdat_tutorial_03.png" alt=""> <p class="footer"><br><a href="http://www.mathworks.com/products/matlab/">Published with MATLAB&reg; R2014a</a><br></p></div><!--
 ##### SOURCE BEGIN #####
 %% gdat tutorial: some basic calls and functionalities
 % gdat calls in fact the main function MACHINE/gdat_machine.m within the gdat folder
@@ -207,7 +276,50 @@ gdat_data.gdat_call % always contains the string so that the same gdat call can
 %% list of data_request names for a specific machine
 gdat_data = gdat('machine','aug');
 gdat_data.gdat_request
-%%
+%% a simple example: get plasma current
+gdat_data = gdat(48836,'ip'); % shot number is for TCV (default machine if run at CRPP)
+gdat_data = gdat(48836,'ip','doplot',1);
+gdat_data = gdat(48836,'Ip');
+% Note that the return data_request name is 'ip', since lower case is used throughout
+gdat_data.gdat_request
+%% a 2D example with Te profiles
+gdat_data = gdat(48836,'te'); % return thomson data, thus versus Z (vertical height) of local measurements
+gdat_data = gdat(48836,'te','doplot',1); % default plot is always versus time, using gdat_data.t
+% for more specific plots, use gdat_plot(gdat_data,...) function
+%% Explaination of main fields
+gdat_data = gdat(48836,'te');
+gdat_data
+% The following fields are always present:
+% gdat_data.data  % (as well as .units) providing the data
+% gdat_data.dim   % (as well as .dimunits) providing the coordinates
+% gdat_data.t     % corresponding to the time coordinate (copied from dim{timecoord})
+% gdat_data.x     % all coordinates but time (typically radial if 2D signal or channel number)
+% gdat_data.shot
+% gdat_data.gdat_request
+% gdat_data.gdat_params
+% gdat_data.data_fullpath  % provides information on tracename origin within the database
+% gdat_data.gdat_call  % string corresponding to the current call to gdat
+
+% Some extra fields might be present:
+% gdat_data.label  % usually present, used as label in plots
+% gdat_data.error_bar  % error_bars to be used in errorbar plot e.g: errorbar(gdat_data.x,gdat_data.data(:,20),gdat_data.error_bar(:,20),'*-')
+% gdat_data.mapping_for_tcv  % information used to fetch the data,
+%                            contains information on the time index, useful for multi-D data
+%
+%% Explanation of basic parameters fields of gdat_params
+gdat_data = gdat(48836,'te');
+gdat_data.gdat_params % at this stage contains few elements, will depend on specific data_request
+%
+% gdat_params should contain all the information necessary to recall gdat
+% and get the same information, except the shot number, thus
+% gdat_data2 = gdat(48836,gdat_data.gdat_params);
+% should return the same values. This allows to quickly load the similar data from different shot
+shotlist=[48836, 48837, 48839];
+for ishot=1:length(shotlist)
+    gdat_data_te{ishot} = gdat(shotlist(ishot),gdat_data.gdat_params);
+end
+gdat_plot(gdat_data_te{3});
+
 
 ##### SOURCE END #####
 --></body></html>
\ No newline at end of file
diff --git a/crpptbx_new/demos/html/gdat_tutorial.png b/crpptbx_new/demos/html/gdat_tutorial.png
new file mode 100644
index 0000000000000000000000000000000000000000..91a9675db6b5f6b806c756b406d99d0519a26177
Binary files /dev/null and b/crpptbx_new/demos/html/gdat_tutorial.png differ
diff --git a/crpptbx_new/demos/html/gdat_tutorial_01.png b/crpptbx_new/demos/html/gdat_tutorial_01.png
new file mode 100644
index 0000000000000000000000000000000000000000..840976996231afe5df15be272270787a59ef9427
Binary files /dev/null and b/crpptbx_new/demos/html/gdat_tutorial_01.png differ
diff --git a/crpptbx_new/demos/html/gdat_tutorial_02.png b/crpptbx_new/demos/html/gdat_tutorial_02.png
new file mode 100644
index 0000000000000000000000000000000000000000..7e7c799d77e967b4f077c93631111cc41e5fc4f6
Binary files /dev/null and b/crpptbx_new/demos/html/gdat_tutorial_02.png differ
diff --git a/crpptbx_new/demos/html/gdat_tutorial_03.png b/crpptbx_new/demos/html/gdat_tutorial_03.png
new file mode 100644
index 0000000000000000000000000000000000000000..3d813140209ff3084c7b8934d8dfe1a556b7da51
Binary files /dev/null and b/crpptbx_new/demos/html/gdat_tutorial_03.png differ