Index: /trunk/SophyaLib/Manual/mkmf
===================================================================
--- /trunk/SophyaLib/Manual/mkmf	(revision 2415)
+++ /trunk/SophyaLib/Manual/mkmf	(revision 2416)
@@ -187,5 +187,5 @@
 
 #-------------------------------------------------------
-all: doc sophya pmixer
+all: doc sophya pmixer piapp
 
 #-------------------------------------------------------
@@ -220,4 +220,13 @@
 	dvips -o sophya.ps sophya.dvi
 
+piapp: copy ${outdir}/latex/piapp.ps
+
+${outdir}/latex/piapp.ps: piapp.tex piahelp.tex defsophya.sty
+	cd ${outdir}/latex/; \
+	latex piapp.tex; \
+	makeindex piapp; \
+	latex piapp; \
+	dvips -o piapp.ps piapp.dvi
+
 pmixer: copy ${outdir}/latex/pmixer.ps
 
Index: /trunk/SophyaLib/Manual/piahelp.tex
===================================================================
--- /trunk/SophyaLib/Manual/piahelp.tex	(revision 2416)
+++ /trunk/SophyaLib/Manual/piahelp.tex	(revision 2416)
@@ -0,0 +1,1881 @@
+% ----- Liste des groupes de Help ----- 
+List of {\bf piapp} on-line Help groups: 
+\begin{itemize} 
+\item {\bf CxxExecutorCmd }  (p. \pageref{CxxExecutorCmd}) 
+\item {\bf Expr. Arithmetic }  (p. \pageref{ExprZZArithmetic}) 
+\item {\bf Expr. Plotting }  (p. \pageref{ExprZZPlotting}) 
+\item {\bf External Modules }  (p. \pageref{ExternalZModules}) 
+\item {\bf FileIO }  (p. \pageref{FileIO}) 
+\item {\bf Fitting }  (p. \pageref{Fitting}) 
+\item {\bf Func Plot }  (p. \pageref{FuncZPlot}) 
+\item {\bf Graphic-Elts }  (p. \pageref{GraphicZElts}) 
+\item {\bf Graphics }  (p. \pageref{Graphics}) 
+\item {\bf Obj. Display }  (p. \pageref{ObjZZDisplay}) 
+\item {\bf Object Management }  (p. \pageref{ObjectZManagement}) 
+\item {\bf Objects }  (p. \pageref{Objects}) 
+\item {\bf PIACmd }  (p. \pageref{PIACmd}) 
+\item {\bf SkyMapCmd }  (p. \pageref{SkyMapCmd}) 
+\item {\bf SophyaCmd }  (p. \pageref{SophyaCmd}) 
+\item {\bf pawCmd }  (p. \pageref{pawCmd}) 
+\end{itemize} 
+\vspace*{10mm} 
+% ----- Liste de toutes les commandes et help item ----- 
+\vspace{5mm} 
+\begin{center} 
+ \rule{2cm}{1mm} List of {\bf piapp} Help items \rule{2cm}{1mm} \\ 
+\vspace{3mm} 
+\begin{tabular}{llllll}  
+Interpreter & p. \pageref{Interpreter}  & ObjectExpressions & p. \pageref{ObjectExpressions}  & PIConsole & p. \pageref{PIConsole}  \\  
+PIDraw3DWdg & p. \pageref{PIDraw3DWdg}  & PIImage & p. \pageref{PIImage}  & PIScDrawWdg & p. \pageref{PIScDrawWdg}  \\  
+RPNEvaluator & p. \pageref{RPNEvaluator}  & Windows & p. \pageref{Windows}  & autoiniranf & p. \pageref{autoiniranf}  \\  
+exitpiapp & p. \pageref{exitpiapp}  & helpfit & p. \pageref{helpfit}  & shell execute & p. \pageref{shellZexecute}  \\  
+\end{tabular} 
+\end{center} 
+\newpage  
+\vspace{6mm} 
+\begin{center} 
+ \rule{2cm}{1mm} \makebox[60mm]{{ \bf CxxExecutorCmd } help group} \rule{2cm}{1mm} \\ 
+\vspace{3mm} 
+\begin{tabular}{llllll} 
+c++args & p. \pageref{cZZargs}  & c++compile & p. \pageref{cZZcompile}  & c++compileopt & p. \pageref{cZZcompileopt}  \\  
+c++create & p. \pageref{cZZcreate}  & c++createfrf & p. \pageref{cZZcreatefrf}  & c++declareomgvar & p. \pageref{cZZdeclareomgvar}  \\  
+c++exec & p. \pageref{cZZexec}  & c++execfrf & p. \pageref{cZZexecfrf}  & c++import & p. \pageref{cZZimport}  \\  
+c++include & p. \pageref{cZZinclude}  & c++link & p. \pageref{cZZlink}  & c++linkopt & p. \pageref{cZZlinkopt}  \\  
+c++mylibs & p. \pageref{cZZmylibs}  & c++prtlevel & p. \pageref{cZZprtlevel}  &   &   \\  
+\end{tabular} 
+\end{center} 
+\vspace{6mm} 
+\begin{center} 
+ \rule{2cm}{1mm} \makebox[60mm]{{ \bf Expr. Arithmetic } help group} \rule{2cm}{1mm} \\ 
+\vspace{3mm} 
+\begin{tabular}{llllll} 
+eval & p. \pageref{eval}  &   &  &  &   \\  
+\end{tabular} 
+\end{center} 
+\vspace{6mm} 
+\begin{center} 
+ \rule{2cm}{1mm} \makebox[60mm]{{ \bf Expr. Plotting } help group} \rule{2cm}{1mm} \\ 
+\vspace{3mm} 
+\begin{tabular}{llllll} 
+ObjectExpressions & p. \pageref{ObjectExpressions}  & exptovec & p. \pageref{exptovec}  & fillgd1 & p. \pageref{fillgd1}  \\  
+fillgd2 & p. \pageref{fillgd2}  & fillmtx & p. \pageref{fillmtx}  & fillnt & p. \pageref{fillnt}  \\  
+fillvec & p. \pageref{fillvec}  & gdfrvec & p. \pageref{gdfrvec}  & ntexpcfile & p. \pageref{ntexpcfile}  \\  
+ntloop & p. \pageref{ntloop}  & plot2d & p. \pageref{plot2d}  & plot2de & p. \pageref{plot2de}  \\  
+plot2dvec & p. \pageref{plot2dvec}  & plot2dw & p. \pageref{plot2dw}  & plot3d & p. \pageref{plot3d}  \\  
+projh1d & p. \pageref{projh1d}  & projh2d & p. \pageref{projh2d}  & projprof & p. \pageref{projprof}  \\  
+\end{tabular} 
+\end{center} 
+\vspace{6mm} 
+\begin{center} 
+ \rule{2cm}{1mm} \makebox[60mm]{{ \bf External Modules } help group} \rule{2cm}{1mm} \\ 
+\vspace{3mm} 
+\begin{tabular}{llllll} 
+call & p. \pageref{call}  & link & p. \pageref{link}  & linkff2 & p. \pageref{linkff2}  \\  
+loadmodule & p. \pageref{loadmodule}  &   &  &  &   \\  
+\end{tabular} 
+\end{center} 
+\vspace{6mm} 
+\begin{center} 
+ \rule{2cm}{1mm} \makebox[60mm]{{ \bf FileIO } help group} \rule{2cm}{1mm} \\ 
+\vspace{3mm} 
+\begin{tabular}{llllll} 
+arrtoascii & p. \pageref{arrtoascii}  & fitsadapt & p. \pageref{fitsadapt}  & mtxfrascii & p. \pageref{mtxfrascii}  \\  
+ntfrascii & p. \pageref{ntfrascii}  & openfits & p. \pageref{openfits}  & openppf & p. \pageref{openppf}  \\  
+print & p. \pageref{print}  & saveall & p. \pageref{saveall}  & savefits & p. \pageref{savefits}  \\  
+saveobjs & p. \pageref{saveobjs}  & saveppf & p. \pageref{saveppf}  & vecfrascii & p. \pageref{vecfrascii}  \\  
+\end{tabular} 
+\end{center} 
+\vspace{6mm} 
+\begin{center} 
+ \rule{2cm}{1mm} \makebox[60mm]{{ \bf Fitting } help group} \rule{2cm}{1mm} \\ 
+\vspace{3mm} 
+\begin{tabular}{llllll} 
+helpfit & p. \pageref{helpfit}  & crfitfil & p. \pageref{crfitfil}  & crfitfun & p. \pageref{crfitfun}  \\  
+fit & p. \pageref{fit}  & fitlin & p. \pageref{fitlin}  & fitw & p. \pageref{fitw}  \\  
+\end{tabular} 
+\end{center} 
+\vspace{6mm} 
+\begin{center} 
+ \rule{2cm}{1mm} \makebox[60mm]{{ \bf Func Plot } help group} \rule{2cm}{1mm} \\ 
+\vspace{3mm} 
+\begin{tabular}{llllll} 
+func & p. \pageref{func}  & func2d & p. \pageref{func2d}  & func2dff & p. \pageref{func2dff}  \\  
+funcff & p. \pageref{funcff}  &   &  &  &   \\  
+\end{tabular} 
+\end{center} 
+\vspace{6mm} 
+\begin{center} 
+ \rule{2cm}{1mm} \makebox[60mm]{{ \bf Graphic-Elts } help group} \rule{2cm}{1mm} \\ 
+\vspace{3mm} 
+\begin{tabular}{llllll} 
+addarc & p. \pageref{addarc}  & addarca & p. \pageref{addarca}  & addarrow & p. \pageref{addarrow}  \\  
+addcirc & p. \pageref{addcirc}  & addctext & p. \pageref{addctext}  & addfarc & p. \pageref{addfarc}  \\  
+addfarca & p. \pageref{addfarca}  & addfcirc & p. \pageref{addfcirc}  & addfpoly & p. \pageref{addfpoly}  \\  
+addfrect & p. \pageref{addfrect}  & addline & p. \pageref{addline}  & addmarker & p. \pageref{addmarker}  \\  
+addpoly & p. \pageref{addpoly}  & addrect & p. \pageref{addrect}  & addtext & p. \pageref{addtext}  \\  
+\end{tabular} 
+\end{center} 
+\vspace{6mm} 
+\begin{center} 
+ \rule{2cm}{1mm} \makebox[60mm]{{ \bf Graphics } help group} \rule{2cm}{1mm} \\ 
+\vspace{3mm} 
+\begin{tabular}{llllll} 
+PIConsole & p. \pageref{PIConsole}  & PIDraw3DWdg & p. \pageref{PIDraw3DWdg}  & PIImage & p. \pageref{PIImage}  \\  
+PIScDrawWdg & p. \pageref{PIScDrawWdg}  & Windows & p. \pageref{Windows}  & addaxelabels & p. \pageref{addaxelabels}  \\  
+addtitle & p. \pageref{addtitle}  & drpanel & p. \pageref{drpanel}  & graphicatt & p. \pageref{graphicatt}  \\  
+imagcmap2eps & p. \pageref{imagcmap2eps}  & imagcmap2ps & p. \pageref{imagcmap2ps}  & newwin & p. \pageref{newwin}  \\  
+psclosefile & p. \pageref{psclosefile}  & psgetfilename & p. \pageref{psgetfilename}  & pssetfilename & p. \pageref{pssetfilename}  \\  
+setaxelabels & p. \pageref{setaxelabels}  & setaxesatt & p. \pageref{setaxesatt}  & setinsetlimits & p. \pageref{setinsetlimits}  \\  
+settitle & p. \pageref{settitle}  & stacknext & p. \pageref{stacknext}  & w2eps & p. \pageref{w2eps}  \\  
+w2ps & p. \pageref{w2ps}  & zone & p. \pageref{zone}  &   &   \\  
+\end{tabular} 
+\end{center} 
+\vspace{6mm} 
+\begin{center} 
+ \rule{2cm}{1mm} \makebox[60mm]{{ \bf Obj. Display } help group} \rule{2cm}{1mm} \\ 
+\vspace{3mm} 
+\begin{tabular}{llllll} 
+contour & p. \pageref{contour}  & disp & p. \pageref{disp}  & gfd2d & p. \pageref{gfd2d}  \\  
+gfd3d & p. \pageref{gfd3d}  & imag & p. \pageref{imag}  & nt2d & p. \pageref{nt2d}  \\  
+nt2dvec & p. \pageref{nt2dvec}  & nt3d & p. \pageref{nt3d}  & ntcont & p. \pageref{ntcont}  \\  
+surf & p. \pageref{surf}  & vecplot & p. \pageref{vecplot}  &   &   \\  
+\end{tabular} 
+\end{center} 
+\vspace{6mm} 
+\begin{center} 
+ \rule{2cm}{1mm} \makebox[60mm]{{ \bf Object Management } help group} \rule{2cm}{1mm} \\ 
+\vspace{3mm} 
+\begin{tabular}{llllll} 
+cd & p. \pageref{cd}  & copy & p. \pageref{copy}  & cp & p. \pageref{cp}  \\  
+del & p. \pageref{del}  & delobjs & p. \pageref{delobjs}  & listdirs & p. \pageref{listdirs}  \\  
+listobjs & p. \pageref{listobjs}  & mkdir & p. \pageref{mkdir}  & mv & p. \pageref{mv}  \\  
+pwd & p. \pageref{pwd}  & rename & p. \pageref{rename}  & rm & p. \pageref{rm}  \\  
+rmdir & p. \pageref{rmdir}  & setdiratt & p. \pageref{setdiratt}  &   &   \\  
+\end{tabular} 
+\end{center} 
+\vspace{6mm} 
+\begin{center} 
+ \rule{2cm}{1mm} \makebox[60mm]{{ \bf Objects } help group} \rule{2cm}{1mm} \\ 
+\vspace{3mm} 
+\begin{tabular}{llllll} 
+line2nt & p. \pageref{line2nt}  & line2vec & p. \pageref{line2vec}  & newgfd & p. \pageref{newgfd}  \\  
+newh1d & p. \pageref{newh1d}  & newh2d & p. \pageref{newh2d}  & newmtx & p. \pageref{newmtx}  \\  
+newnt & p. \pageref{newnt}  & newprof & p. \pageref{newprof}  & newprofe & p. \pageref{newprofe}  \\  
+newvec & p. \pageref{newvec}  & ntcol2var & p. \pageref{ntcol2var}  & ntline2var & p. \pageref{ntline2var}  \\  
+vec2var & p. \pageref{vec2var}  &   &  &  &   \\  
+\end{tabular} 
+\end{center} 
+\vspace{6mm} 
+\begin{center} 
+ \rule{2cm}{1mm} \makebox[60mm]{{ \bf PIACmd } help group} \rule{2cm}{1mm} \\ 
+\vspace{3mm} 
+\begin{tabular}{llllll} 
+Interpreter & p. \pageref{Interpreter}  & RPNEvaluator & p. \pageref{RPNEvaluator}  & autoiniranf & p. \pageref{autoiniranf}  \\  
+exitpiapp & p. \pageref{exitpiapp}  & shell execute & p. \pageref{shellZexecute}  &   &   \\  
+\end{tabular} 
+\end{center} 
+\vspace{6mm} 
+\begin{center} 
+ \rule{2cm}{1mm} \makebox[60mm]{{ \bf SkyMapCmd } help group} \rule{2cm}{1mm} \\ 
+\vspace{3mm} 
+\begin{tabular}{llllll} 
+alm2cl & p. \pageref{alm2cl}  & alm2map & p. \pageref{alm2map}  & cl2llcl & p. \pageref{cl2llcl}  \\  
+cl2map & p. \pageref{cl2map}  & clmean & p. \pageref{clmean}  & clmult & p. \pageref{clmult}  \\  
+clop & p. \pageref{clop}  & clrebin & p. \pageref{clrebin}  & crmapmask & p. \pageref{crmapmask}  \\  
+crmaskfrmap & p. \pageref{crmaskfrmap}  & map2alm & p. \pageref{map2alm}  & map2cl & p. \pageref{map2cl}  \\  
+map2double & p. \pageref{map2double}  & map2float & p. \pageref{map2float}  & map2local & p. \pageref{map2local}  \\  
+map2map & p. \pageref{map2map}  & mapcover & p. \pageref{mapcover}  & mapmult & p. \pageref{mapmult}  \\  
+mapop & p. \pageref{mapop}  & maproj & p. \pageref{maproj}  & mapstat & p. \pageref{mapstat}  \\  
+maskmap & p. \pageref{maskmap}  & settypemap & p. \pageref{settypemap}  & typemap & p. \pageref{typemap}  \\  
+\end{tabular} 
+\end{center} 
+\vspace{6mm} 
+\begin{center} 
+ \rule{2cm}{1mm} \makebox[60mm]{{ \bf SophyaCmd } help group} \rule{2cm}{1mm} \\ 
+\vspace{3mm} 
+\begin{tabular}{llllll} 
+mollgrid & p. \pageref{mollgrid}  & mollgridsph & p. \pageref{mollgridsph}  & powerspec & p. \pageref{powerspec}  \\  
+\end{tabular} 
+\end{center} 
+\vspace{6mm} 
+\begin{center} 
+ \rule{2cm}{1mm} \makebox[60mm]{{ \bf pawCmd } help group} \rule{2cm}{1mm} \\ 
+\vspace{3mm} 
+\begin{tabular}{llllll} 
+h/cadd & p. \pageref{hZcadd}  & h/cmult & p. \pageref{hZcmult}  & h/copy & p. \pageref{hZcopy}  \\  
+h/deriv & p. \pageref{hZderiv}  & h/err & p. \pageref{hZerr}  & h/get\_vec & p. \pageref{hZgetZvec}  \\  
+h/integ & p. \pageref{hZinteg}  & h/oper & p. \pageref{hZoper}  & h/plot/2d & p. \pageref{hZplotZ2d}  \\  
+h/put\_vec & p. \pageref{hZputZvec}  & h/rebin & p. \pageref{hZrebin}  & h/set/cont & p. \pageref{hZsetZcont}  \\  
+h/set/err & p. \pageref{hZsetZerr}  & n/plot & p. \pageref{nZplot}  & n/proj & p. \pageref{nZproj}  \\  
+n/scan & p. \pageref{nZscan}  & reset & p. \pageref{reset}  & v/deriv & p. \pageref{vZderiv}  \\  
+v/integ & p. \pageref{vZinteg}  &   &  &  &   \\  
+\end{tabular} 
+\end{center} 
+% ----- Liste des commandes dans chaque groupe ----- 
+\newpage 
+\subsection{CxxExecutorCmd} \label{CxxExecutorCmd} 
+\noindent 
+\piacommand{c++args} \label{cZZargs} 
+\begin{verbatim} 
+c++args: Define user function arguments for c++exec and c++execfrf
+Usage: c++args arg1 arg2 arg3 ...
+       c++args -? : give current arguments
+       c++args    : reset current arguments
+\end{verbatim} 
+\piacommand{c++compile} \label{cZZcompile} 
+\begin{verbatim} 
+c++compile: compile a file (file.cc -> file.so)
+Usage: c++compile file
+Warning: give "file" or "file.so" to create "file.so" from "file.cc"
+       : to be used before c++link
+\end{verbatim} 
+\piacommand{c++compileopt} \label{cZZcompileopt} 
+\begin{verbatim} 
+c++compileopt: add personnal compile options
+Usage: c++compileopt -g -O5 -IMy_Inc_Dir ...
+       c++compileopt -? : list current additionnal compile options
+       c++compileopt    : reset to no additionnal compile options
+Warning: to be used before c++create c++compile c++exec ...
+\end{verbatim} 
+\piacommand{c++create} \label{cZZcreate} 
+\begin{verbatim} 
+c++create: create a file "file.cc" to be used by spiapp
+Usage: c++create file.cc func c++ user code...
+
+\end{verbatim} 
+\piacommand{c++createfrf} \label{cZZcreatefrf} 
+\begin{verbatim} 
+c++createfrf: create a file "file.cc" to be used by spiapp
+        with a user file code "fileuser.cc"
+        and an optional user function code "fileuserfct.cc"
+Usage: c++createfrf file.cc func fileuser.cc [fileuserfct.cc]
+
+\end{verbatim} 
+\piacommand{c++declareomgvar} \label{cZZdeclareomgvar} 
+\begin{verbatim} 
+c++declareomgvar: Activate/Deactivate ObjectManager variables declaration 
+Usage: c++declareomgvar [false/true] 
+   if true, the ObjectManager variables are declared as $varname 
+   no arguments: display the current status of the flag (default=false
+
+\end{verbatim} 
+\piacommand{c++exec} \label{cZZexec} 
+\begin{verbatim} 
+c++exec: Execute the following c++ user code
+Usage: c++exec c++ user code
+Warning: c++ user code can be found in "TmpDir/cxx_spiapp.h"
+         total generated code can be found in "TmpDir/cxx_spiapp.cc"
+\end{verbatim} 
+\piacommand{c++execfrf} \label{cZZexecfrf} 
+\begin{verbatim} 
+c++execfrf: Execute c++ user_code [user_function_code]
+Usage: c++execfrf fileuser.cc [fileuserfct.cc]
+Warning: total generated code can be found in "TmpDir/cxx_spiapp.cc"
+\end{verbatim} 
+\piacommand{c++import} \label{cZZimport} 
+\begin{verbatim} 
+c++import: Sophya additionnal modules to be use in C++ executor
+Usage: c++import module1 ... : set list of modules to be used by executor
+       c++import all : set all modules known by executor
+       c++import     : reset to no additionnal module
+       c++import -?  : list modules currently used in executor
+       c++import -?? : list of available modules for executor
+Warning: to be used before c++create c++compile c++exec ...
+\end{verbatim} 
+\piacommand{c++include} \label{cZZinclude} 
+\begin{verbatim} 
+c++include: add personnal includes to be used by executor
+Usage: c++include myinc1.h myinc2.h ...
+       c++include -? : list current additionnal include files
+       c++include    : reset to no additionnal include files
+Warning: to be used before c++create c++compile c++exec...
+\end{verbatim} 
+\piacommand{c++link} \label{cZZlink} 
+\begin{verbatim} 
+c++link: link function "func" in file.so to spiapp
+Usage: c++link file.so func
+\end{verbatim} 
+\piacommand{c++linkopt} \label{cZZlinkopt} 
+\begin{verbatim} 
+c++linkopt: add personnal link options
+Usage: c++linkopt -g -O5 ...
+       c++linkopt -? : list current additionnal link options
+       c++linkopt    : reset to no additionnal link options
+Warning: to be used before c++create c++compile c++exec ...
+\end{verbatim} 
+\piacommand{c++mylibs} \label{cZZmylibs} 
+\begin{verbatim} 
+c++mylibs: add personnal libraries
+Usage: c++mylibs -LMy_Lib_Dir -lmylib1 -lmylib2 ...
+       c++mylibs -? : list current additionnal libraries
+       c++mylibs    : reset to no additionnal libraries
+Warning: to be used before c++create c++compile c++exec ...
+\end{verbatim} 
+\piacommand{c++prtlevel} \label{cZZprtlevel} 
+\begin{verbatim} 
+c++prtlevel: Print level
+Usage: c++prtlevel prtlevel
+       prtlevel=0 : minimum printing
+       prtlevel=1 : + compiler/linker output
+       prtlevel=2 : + full infos (default)
+\end{verbatim} 
+\subsection{Expr. Arithmetic} \label{ExprZZArithmetic} 
+\noindent 
+\piacommand{eval} \label{eval} 
+\begin{verbatim} 
+Compute arithmetic expression
+
+ Usage: eval resultvarname arithmetic expression....
+  resultvarname: store result in variable resultvarname
+    - If first character is not alphabetic, just print result
+  arithmetic expression:
+      ex: x + sqrt(y)+z +3.14    (x,y,z are variables)
+      ex: $x + sqrt($y)+$z +3.14 (x,y,z are variables)
+      ex: 360 * M_PI / 180.
+\end{verbatim} 
+\subsection{Expr. Plotting} \label{ExprZZPlotting} 
+\noindent 
+\piahelpitem{ObjectExpressions} \label{ObjectExpressions} 
+\begin{verbatim} 
+Any mathematical expression (math.h) with object variables can be used
+  ------ Object Variable names (double) -------- 
+  (_nl is the table line number or the sequential index)
+- NTuple: ntuple variable names,_nl
+- Histo1D/HProf: i,x,val,err,_nl
+- Histo2D: i,j,x,y,val,err,_nl
+- Vector/Matrix: n,r,c,val,real,imag,mod,phas,_nl
+- TArray: n,x,y,z,t,u,val,real,imag,mod,phas,_nl
+- Image: i,j,x,y,val(=pix),_nl
+- GeneralFitData: x0,ex0 x1,ex1 ...  xn,exn   y,ey   ok  ,_nl
+- LocalMap/SphereThetaPhi/SphereHEALPix: 
+-         i,k,val,real,imag,mod,phas,teta,phi,_nl
+- FITS Binary/ASCII table: fits column names,_nl
+  ------ Other parameters -------- 
+Loop parameters can be specified as I1[:I2[:DI]] for(int i=I1; i<I2; i+=DI)
+The default Cut() expression in true (=1) for all
+
+  Related commands: plot2d plot2de plot2dw plot3d 
+        projh1d projh2d  projprof fillvec fillmtx 
+        fillnt fillgd1 fillgd2 ntloop exptovec ... 
+\end{verbatim} 
+\piacommand{exptovec} \label{exptovec} 
+\begin{verbatim} 
+Creates and Fills a Vector with X=f(Object)
+ Usage: exptovec namevec nameobj f_X() [Cut() graphic_attributes loop_param]
+  Related commands: ntloop fillnt ObjectExpressions ...
+\end{verbatim} 
+\piacommand{fillgd1} \label{fillgd1} 
+\begin{verbatim} 
+Creates and Fills a GeneralFitData with (X=f(Object), Y=g(...), ErrY=h(...))
+ Usage: fillgd1 namegfd nameobj f_X() g_Y() h_ErrY() [Cut() loop_param]
+  Related commands: ntloop fillnt ObjectExpressions ...
+\end{verbatim} 
+\piacommand{fillgd2} \label{fillgd2} 
+\begin{verbatim} 
+Creates and Fills a GeneralFitData with (X=f(Object), Y=g(...), Z=h(...)) ErrZ=k(...)
+ Usage: fillgd1 namegfd nameobj f_X() g_Y() h_Z() k_ErrZ() [Cut() loop_param]
+  Related commands: ntloop fillnt ObjectExpressions ...
+\end{verbatim} 
+\piacommand{fillmtx} \label{fillmtx} 
+\begin{verbatim} 
+Fills a Matrix M(Line=g_Y(Object)+0.5, Col=f_X(Object)+0.5)) =  h_V(Object) 
+ Usage: fillvec namevec nameobj f_X() g_Y() h_V() [Cut() graphic_attributes loop_param]
+  Related commands: fillvec fillnt ObjectExpressions ...
+\end{verbatim} 
+\piacommand{fillnt} \label{fillnt} 
+\begin{verbatim} 
+Creates and Fills an NTuple(x,y,z,t) with (X=f(Object),Y=g(...),Z=h(...),T=k(...))
+ Usage: fillnt nameobj f_X() g_Y() h_Z() k_T() [Cut() nameNt loop_param]
+  Related commands: ntloop plot2d projh1d projh2d projprof 
+  Related commands: fillvec fillmtx ntloop exptovec fillgd1 fillgd2 ObjectExpressions ...
+\end{verbatim} 
+\piacommand{fillvec} \label{fillvec} 
+\begin{verbatim} 
+Fills a Vector V((int)(f_X(Object)+0.5)) =  h_V(Object) 
+ Usage: fillvec namevec nameobj f_X() h_V() [Cut() graphic_attributes loop_param]
+  Related commands: fillmtx fillnt ObjectExpressions ...
+\end{verbatim} 
+\piacommand{gdfrvec} \label{gdfrvec} 
+\begin{verbatim} 
+Fills a GeneralFitData with vectors X,Y,Z,EZ
+ Usage: gdfrvec namegfd X Y
+ Usage: gdfrvec namegfd X Y ! EY
+ Usage: gdfrvec namegfd X Y Z
+ Usage: gdfrvec namegfd X Y Z EZ
+  Related commands: fillgd1 fillgd2 ...
+\end{verbatim} 
+\piacommand{ntexpcfile} \label{ntexpcfile} 
+\begin{verbatim} 
+Creates a C-File with declarations suitable to be used for ntloop
+ Usage: ntexpcfile nameobj CFileName FuncName 
+  Related commands: ntloop
+\end{verbatim} 
+\piacommand{ntloop} \label{ntloop} 
+\begin{verbatim} 
+Loops over an Object NTupleInterface calling a function from a C-file 
+and optionaly fills an NTuple(x,y,z,t) with (X=f(Object),Y=g(...),Z=h(...),T=k(...))
+ Usage: ntloop nameobj CFileName FuncName [NtupleName loop_param]
+  Related commands: fillvec fillmtx fillnt fillgd1 fillgd2 exptovec ObjectExpressions ...
+  Related commands: ntexpcfile fillnt
+\end{verbatim} 
+\piacommand{plot2d} \label{plot2d} 
+\begin{verbatim} 
+Plots (2D) Y=g(Object) vs. X=f(Object) --- Object Variable names (double) :
+ Usage: plot2d nameobj f_X() g_Y() [f_Cut() graphic_attributes loop_param]
+  Related commands: plot2de plot2dw plot3d ObjectExpressions ...
+\end{verbatim} 
+\piacommand{plot2de} \label{plot2de} 
+\begin{verbatim} 
+Plots (2D) Y=g(Object) vs. X=f(Object) with error bars eX/Y=f_ErrX/Y(Object) 
+ Usage: plot2de nameobj f_X() g_Y() f_ErrX() f_ErrY() [f_Cut() graphic_attributes loop_param]
+  Related commands: plot2d plot2dw plot3d ObjectExpressions ...
+\end{verbatim} 
+\piacommand{plot2dvec} \label{plot2dvec} 
+\begin{verbatim} 
+Creates and displays a flow chart from ntuple expressions 
+ Usage: plot2dvec ntuple expx expy expvx expvy [cut graphic_att loop_par]
+\end{verbatim} 
+\piacommand{plot2dw} \label{plot2dw} 
+\begin{verbatim} 
+Plots (2D) Y=g(Object) vs. X=f(Object) with Weight W=h(Object) 
+ Usage: plot2dw nameobj f_X() g_Y() h_Wt() [Cut() graphic_attributes loop_param]
+  Related commands: plot2d plot2dw plot3d ObjectExpressions ...
+\end{verbatim} 
+\piacommand{plot3d} \label{plot3d} 
+\begin{verbatim} 
+Plots (3D) Z=h(Object) vs. Y=g(Object) vs. X=f(Object) vs 
+ Usage: plot3d nameobj f_X() g_Y() h_Z() [Cut() graphic_attributes loop_param]
+  Related commands: plot2d plot2dw plot2de plot3d ObjectExpressions ...
+\end{verbatim} 
+\piacommand{projh1d} \label{projh1d} 
+\begin{verbatim} 
+Projects X=f(Object) with weight WT=h(Object) into a 1D histogram 
+ Usage: projh1d nameh1d nameobj f_X() [h_WT()=1. Cut() graphic_attributes loop_param]
+   Histo1D nameh1d is created if necessary 
+  Related commands: projh2d projprof ObjectExpressions ...
+\end{verbatim} 
+\piacommand{projh2d} \label{projh2d} 
+\begin{verbatim} 
+Projects (X=f(Object),Y=g(Object)) with weight WT=h(Object) into a 2D histogram 
+ Usage: projh2d nameh2d nameobj f_X() g_Y() [h_WT()=1. Cut() graphic_attributes loop_param]
+   Histo2D nameh2d is created if necessary 
+  Related commands: projh1d projprof ObjectExpressions ...
+\end{verbatim} 
+\piacommand{projprof} \label{projprof} 
+\begin{verbatim} 
+Projects (X=f(Object),Y=g(Object)) with weight WT=h(Object) into a profile histogram 
+ Usage: projprof nameprof nameobj f_X() g_Y() [h_WT()=1. Cut() graphic_attributes loop_param]
+   HProf nameprof is created if necessary 
+  Related commands: projh1d projh2d ObjectExpressions ...
+\end{verbatim} 
+\subsection{External Modules} \label{ExternalZModules} 
+\noindent 
+\piacommand{call} \label{call} 
+\begin{verbatim} 
+Dynamically linked user function call 
+ Usage: call userf [arg1 arg2 ...]
+  User function : f(vector<string>& args)
+  Related commands: link
+\end{verbatim} 
+\piacommand{link} \label{link} 
+\begin{verbatim} 
+Dynamic linking of compiled user functions 
+  Usage: link fnameso f1 [f2 f3]
+  fnameso: Shared-object file name, f1,f2,f3 : User function names 
+  Related commands: call loadmodule linkff2
+\end{verbatim} 
+\piacommand{linkff2} \label{linkff2} 
+\begin{verbatim} 
+Dynamic linking of compiled user functions (Set 2)
+  Usage: linkff2 fnameso f1 [f2 f3]
+  fnameso: Shared-object file name, f1,f2,f3 : User function names 
+  Related commands: call link loadmodule
+\end{verbatim} 
+\piacommand{loadmodule} \label{loadmodule} 
+\begin{verbatim} 
+To load and initialize modules 
+  Usage: loadmodule fnameso modulename
+  Related commands: link
+\end{verbatim} 
+\subsection{FileIO} \label{FileIO} 
+\noindent 
+\piacommand{arrtoascii} \label{arrtoascii} 
+\begin{verbatim} 
+Writes an array (TArray<T>) to an ASCII file 
+ Usage: arrtoascii array_name file_name
+  Related commands:  mtxfrascii vecfrascii ntfrascii 
+\end{verbatim} 
+\piacommand{fitsadapt} \label{fitsadapt} 
+\begin{verbatim} 
+fitsadapt: NTuple adaptor for Binary and ASCII Fits table
+Usage: fitsadapt fitsfile [nomobj hdu buflen[,bufsens,lp]]
+ fitsfile : Fits file name
+ nomobj : Object name (needed if file name misleading as C++ variable)
+ hdu : Fits HDU (if <=0 take first binary/ascii table)
+ buflen[,bufsens,lp] : buffer length (sens) for fits reading (default is 100,1,0)
+\end{verbatim} 
+\piacommand{mtxfrascii} \label{mtxfrascii} 
+\begin{verbatim} 
+Reads a matrix from an ASCII file (TMatrix<r_8>)
+ Usage: mtxfrascii mtx_name file_name [CommChar Separator]
+  Related commands: arrtoascii vecfrascii ntfrascii 
+\end{verbatim} 
+\piacommand{ntfrascii} \label{ntfrascii} 
+\begin{verbatim} 
+Fills an existing NTuple from ASCII table file
+ Usage: ntfrascii nt_name file_name [def_init_val]
+  Related commands: ntloop fillnt 
+\end{verbatim} 
+\piacommand{openfits} \label{openfits} 
+\begin{verbatim} 
+Loads a FITS file into an appropriate object 
+ Usage: openfits filename
+  Related commands: savefits openppf
+\end{verbatim} 
+\piacommand{openppf} \label{openppf} 
+\begin{verbatim} 
+Reads all objects from a PPF file 
+ Usage: openppf filename
+  Related commands: saveall openfits
+\end{verbatim} 
+\piacommand{print} \label{print} 
+\begin{verbatim} 
+Prints an object 
+ Usage: print nameobj
+\end{verbatim} 
+\piacommand{saveall} \label{saveall} 
+\begin{verbatim} 
+Saves all objects into a PPF file 
+ Usage: saveall filename
+  Related commands: saveobj openppf savefits
+\end{verbatim} 
+\piacommand{savefits} \label{savefits} 
+\begin{verbatim} 
+Save an object into a FITS file 
+ Usage: savefits nameobj filename
+  Related commands: openfits saveobjs saveall
+\end{verbatim} 
+\piacommand{saveobjs} \label{saveobjs} 
+\begin{verbatim} 
+Saves objects with names matching a pattern into a
+  PPF file (pattern: x?y*) - Alias saveppf
+Usage: saveobjs nameobjpattern filename
+  Related commands: saveppf saveall openppf savefits
+\end{verbatim} 
+\piacommand{saveppf} \label{saveppf} 
+\begin{verbatim} 
+Saves objects with names matching a pattern into a
+  PPF file (pattern: x?y*) - Alias saveppf
+Usage: saveppf nameobjpattern filename
+  Related commands: saveobjs saveall openppf savefits
+\end{verbatim} 
+\piacommand{vecfrascii} \label{vecfrascii} 
+\begin{verbatim} 
+Reads a vector from an ASCII file (TVector<r_8>)
+ Usage: vecfrascii vec_name file_name
+  Related commands: arrtoascii mtxfrascii ntfrascii [CommChar Separator]
+\end{verbatim} 
+\subsection{Fitting} \label{Fitting} 
+\noindent 
+\piahelpitem{helpfit} \label{helpfit} 
+\begin{verbatim} 
+
+//////////////////////////////////////////////////////////////////////    
+| --------------- Fit Lineaire a 1 et 2 dimensions ---------------    
+| Syntaxe:    
+| fitlin nom pnn [o:.aa,bb,cc, o:dd,ee,ff o:gg,hh,jj,kk etc...]    
+| avec:    
+| nom  : cf commentaire ordre ''fit''    
+| pnn  : fit polynome degre nn avec classe Poly (lineaire) 1D ou 2D    
+| o:aa,...,bb : cf commentaires ordre ''fit''    
+|    
+//////////////////////////////////////////////////////////////////////    
+| --------------- Fit d'objets a 1 et 2 dimensions ---------------    
+|                 avec interface d'aide graphique    
+| Syntaxe:    
+| fitw nom func    
+|     [p:p1,p2,...,pn s:s1,s2,...,sn m:m1,m2,...,mn M:M1,mM2,...,Mn f:f1,...,fn]    
+|     [o:.aa,bb,cc, o:dd,ee,ff o:gg,hh,jj,kk etc...]    
+| cf commentaire ordre ''fit''    
+|    
+//////////////////////////////////////////////////////////////////////    
+| --------------- Fit d'objets a 1 et 2 dimensions ---------------    
+| Syntaxe:    
+| fit nom func    
+|     [p:p1,p2,...,pn s:s1,s2,...,sn m:m1,m2,...,mn M:M1,mM2,...,Mn f:f1,...,fn]    
+|     [o:.aa,bb,cc, o:dd,ee,ff o:gg,hh,jj,kk etc...]    
+|----- OBJET -----    
+| nom  : nom de l'objet qui peut etre:    
+|        fit-1D:  Vector,Histo1D,HProf ou GeneraFitData(1D)    
+|        fit-2D:  Matrix,Histo2D,Image<T> ou GeneraFitData(2D)    
+|    
+|----- FUNCTION -----    
+| func : pnn : fit polynome degre nn avec GeneralFit (non-lineaire) 1D ou 2D    
+|      : gnn : fit gaussienne (hauteur) + polynome de degre nn 1D    
+|      : g   : fit gaussienne (hauteur) 1D    
+|      : enn : fit exponentielle + polynome de degre nn 1D    
+|      : e   : fit exponentielle 1D    
+|      : Gnn : fit gaussienne (volume) + polynome de degre nn 1D    
+|      : G   : fit gaussienne (volume) 1D    
+|      :     : fit gaussienne+fond (volume) 2D    
+|      : Gi  : fit gaussienne+fond integree (volume) 2D    
+|      : d   : fit DL de gaussienne+fond (volume) 2D    
+|      : di  : fit DL de gaussienne+fond integree (volume) 2D    
+|      : D   : fit DL de gaussienne+fond avec coeff variable p6 (volume) 2D    
+|      : Di  : fit DL de gaussienne+fond integree avec coeff variable p6 (volume) 2D    
+|      : M   : fit Moffat+fond (expos=p6) (volume) 2D    
+|      : Mi  : fit Moffat+fond integree (expos=p6) (volume) 2D    
+|      : Autre : fonction definie par l'utilisateur (cf commentaires ci apres)    
+|    
+|----- INIT PARAMETRES ET ETAT DU FIT -----    
+| p    : p1,...,pn : valeur d'initialisation des parametres (def=0)    
+| s    : s1,...,sn : valeur des steps de depart (def=1)    
+| m    : m1,...,mn : valeur des minima (def=1)    
+| M    : M1,...,Mn : valeur des maxima (def=-1) (max<=min : pas de limite)    
+| f    : f1,...,fn : si >=1 parametre fixe sinon libre (def=0)    
+| - Remarque: si pi,si,mi ou Mi = '!' la valeur correspondante n'est pas changee    
+|    
+|----- OPTIONS -----    
+| o    : options ''o:Eaa.b,eaa.b,f,r,caa.b,Xaa.b''    
+|      F : initialisation a partir des resultats et de l'etat du fit precedent    
+|          (option non prioritaire sur les definitions p:,s:,m:,M:,f:o:)    
+|      a : initialisation automatique des parametres du fit (si disponible)    
+|          (option non prioritaire sur les definitions p:,s:,m:,M:,f:o:    
+|           et sur l'initialisation pa l'option ''F'')    
+|      f : generation d'un Objet identique contenant la fonction fittee    
+|      r : generation d'un Objet identique contenant les residus    
+|      Xaa.b : aa.b valeur du DXi2 d'arret (def=1.e-3)    
+|      Naa : aa nombre maximum d'iterations (def=100)    
+|      la : niveau ''a'' de print: a=niveau de print Fit1/2D    
+|      da : niveau ''a'' de debug: a=niveau de GeneralFit    
+|      Ii1/i2 : numeros des bins X de l'histos utilises pour le fit [i1,i2]    
+|2D    Jj1/j2 : numeros des bins Y de l'histos utilises pour le fit [j1,j2]    
+|    - Traitement des erreurs :    
+|      Par defaut, l'erreur est celle associee a l'objet (si elle existe),    
+|        elle est mise a 1 sinon.    
+|      haa.b/cc.d : erreur = aa.bb*(erreur associee a l'objet cf ci-dessus)    
+|      Haa.b/cc.d : erreur = aa.b*|val|    
+|      eaa.b/cc.d : erreur = aa.b    
+|      Eaa.b/cc.d : erreur = aa.b*sqrt(|val|)    
+|           aa.b<0 (ou non precise) est equivalent aa.b=1.0    
+|           cc.d non precise est equivalent a cc.d=0    
+|           si cc.d>=0  si erreur>0 erreur = max(erreur,cc.d)    
+|                       si erreur<=0 alors erreur    
+|           si cc.d<0   si erreur>0 erreur = max(erreur,|cc.d|)    
+|                       si erreur<=0 alors erreur=|cc.d|    
+|      xaa.b : demande de centrage: on fit x-aa.b au lieu de x)    
+|      x : demande de centrage: on fit x-xc au lieu de x    
+|          avec xc=abscisse du ''milieu logique'' de l'objet.    
+|          Actif pour  exp+poly 1D, poly 1D    
+|          Pour gauss+poly 1D, xc est le centre de la gaussienne.    
+|2D    yaa.b et y : idem ''xaa.b et x'' mais pour y    
+|    
+//////////////////////////////////////////////////////////////////////    
+| --------------- Def des fcts de fit par l'utilisateur ---------------    
+| Pour definir une fonction parametree utilisateur:    
+| Un exemple de fichier contenant des fonctions a fitter: PIext/userfitfunex.c    
+| > crfitfil nom_fichier nom_fonction nvar npar    
+|     pour creer un squelette de fichier C contenant la fonction a fitter    
+|            nom_fichier : nom du fichier ou est le code de la fonction    
+|                          c'est un fichier C de nom blabla.c    
+|            nom_fonction : nom de la fonction ex: gauss2    
+|            nvar : nombre de variables x[] (1D=1, 2D=2, etc...)    
+|            npar : nombre de parametre p[]    
+|   - La fonction est donc F(x[];p[]), soit par ex:    
+|            double gauss2(double const* x,double const* p)    
+|   - L'utilisateur a la possibilite de donner egalement la fonction    
+|     retournant les derivees de la fonction par rapport aux parametres    
+|            double gauss2_der(double const* x,double const* p,double* dp)    
+|     ou dp[i] = dF(x[];p[])/dp[i]    
+|     Par convention, cette fonction a le meme nom suivi de ''_der''    
+| > crfitfun nom_fichier nom_fonction nvar npar    
+|     Permet de compiler le fichier ''nom_fichier'' et de linker    
+|     la fonction ''nom_fonction''    
+|   - Un meme fichier peut contenir plusieurs fonctions a fitter    
+|    
+//////////////////////////////////////////////////////////////////////    
+\end{verbatim} 
+\piacommand{crfitfil} \label{crfitfil} 
+\begin{verbatim} 
+Creation de fichier C pour function utilisateur du fit
+ Usage: crfitfil file func nvar npar
+  Related commands: fit fitw fitlin crfitfun
+\end{verbatim} 
+\piacommand{crfitfun} \label{crfitfun} 
+\begin{verbatim} 
+Creation et link de function utilisateur pour le fit
+ Usage: crfitfun file func nvar npar
+  Related commands: fit fitw fitlin crfitfil
+\end{verbatim} 
+\piacommand{fit} \label{fit} 
+\begin{verbatim} 
+Fitting function to DataObjects (Histo, Histo2D, Vector, ...)
+ Usage: fit nomobj func [Options]
+ [p:p1,...,pn s:s1,...,sn m:m1,...,mn M:M1,...,Mn o:... o:...]
+  Related commands: fitw fitlin crfitfun crfitfil
+\end{verbatim} 
+\piacommand{fitlin} \label{fitlin} 
+\begin{verbatim} 
+Linear Fitting of Polynoms to DataObjects
+ Usage: fitlin nomobj func [o:... o:...]
+  Related commands: fit fitw crfitfun crfitfil
+\end{verbatim} 
+\piacommand{fitw} \label{fitw} 
+\begin{verbatim} 
+Fitting function to DataObjects with Interactive Window Help
+ Usage: fitw nomobj func [Options]
+ [p:p1,...,pn s:s1,...,sn m:m1,...,mn M:M1,...,Mn o:... o:...]
+  Related commands: fit fitlin crfitfun crfitfil
+\end{verbatim} 
+\subsection{Func Plot} \label{FuncZPlot} 
+\noindent 
+\piacommand{func} \label{func} 
+\begin{verbatim} 
+Displays a function y=f(x) (Fills a vector with function values)
+ Usage: func f(x) xmin xmax [npt graphic_attributes]
+  Related commands: funcff func2d func2dff 
+\end{verbatim} 
+\piacommand{func2d} \label{func2d} 
+\begin{verbatim} 
+Displays a function z=f(x,y) (Fills a matrix with function values)
+ Usage: func2d f(x,y) xmin xmax nptx ymin ymax npty [graphic_attributes]
+  Related commands: func
+\end{verbatim} 
+\piacommand{func2dff} \label{func2dff} 
+\begin{verbatim} 
+Displays a function z=f(x,y) from a C-file (Fills a matrix with function values)
+ Usage: func2dff C-FileName FunctionName xmin xmax nptx ymin ymax npty [graphic_attributes]
+  Related commands: func funcff func2d 
+\end{verbatim} 
+\piacommand{funcff} \label{funcff} 
+\begin{verbatim} 
+Displays a function y=f(x) from a C-file (Fills a vector with function values)
+ Usage: funcff C-FileName FunctionName xmin xmax [npt graphic_attributes]
+  Related commands: func func2d func2dff 
+\end{verbatim} 
+\subsection{Graphic-Elts} \label{GraphicZElts} 
+\noindent 
+\piacommand{addarc} \label{addarc} 
+\begin{verbatim} 
+Adds an arc to the current graphic object
+ defined by 3 points (+ graphic attribute)
+ The Base/AxesDrawer is used to handle added arcs
+ Alt<E> to remove the added element
+  Usage: addarc x1 y1 x2 y2 x3 y3 [GraphicAtt] [fgnc=false/true]
+  if fgnc==true : Normalized 0..1 coordinates specification (def=false)
+  Related commands: addtext addline addarrow addfrect addfrect
+       addcirc addfcirc addfarc addarca addpoly addfpoly graphicatt
+\end{verbatim} 
+\piacommand{addarca} \label{addarca} 
+\begin{verbatim} 
+Adds an arc to the current graphic object
+ defined by the circle (center+radius), start angle and angular extension
+ Angles are specified in degrees
+  Usage: addarca xc yc r a0deg dadeg [GraphicAtt] [fgnc=false/true]
+  if fgnc==true : Normalized 0..1 coordinates specification (def=false)
+  Related commands: addtext addline addfarca addarc ...
+\end{verbatim} 
+\piacommand{addarrow} \label{addarrow} 
+\begin{verbatim} 
+Adds an arrow to the current graphic object
+ at the specified position (+ graphic attribute)
+ The Base/AxesDrawer is used to handle added lines
+ Alt<E> to remove the added element
+  Usage: addarrow x1 y1 x2 y2 [GraphicAtt] [fgnc=false/true]
+  if fgnc==true : Normalized 0..1 coordinates specification (def=false)
+  Related commands: addline addtext addrect addfrect 
+       addmarker addcirc addfcirc addarc addfarc addpoly addfpoly graphicatt
+\end{verbatim} 
+\piacommand{addcirc} \label{addcirc} 
+\begin{verbatim} 
+Adds a circle to the current graphic object
+ with the specified center and radius (+ graphic attribute)
+ The Base/AxesDrawer is used to handle added circles
+ Alt<E> to remove added element
+  Usage: addcirc xcenter ycenter radius [GraphicAtt] [fgnc=false/true]
+  if fgnc==true : Normalized 0..1 coordinates specification (def=false)
+  Related commands: addtext addline addarrow addfrect addfrect
+       addfcirc addarc addfarc addpoly addfpoly graphicatt
+\end{verbatim} 
+\piacommand{addctext} \label{addctext} 
+\begin{verbatim} 
+Adds a composite text string with superscript and subscripts 
+ at the specified position (+ color/font/pos/dir attributes) 
+  Usage: addctext x y Text sUp sDown [ColFontPosAtt] [UpDownFontAtt] [fgnc]
+  if fgnc==true : Normalized 0..1 coordinates specification (def=false)
+  Related commands: addtext addline addrect ...
+      (See command addtext and graphicatt for more details)
+\end{verbatim} 
+\piacommand{addfarc} \label{addfarc} 
+\begin{verbatim} 
+Adds a filled arc to the current graphic object
+ defined by 3 points (+ graphic attribute)
+ The Base/AxesDrawer is used to handle added arcs
+ Alt<E> to remove added element
+  Usage: addarc x1 y1 x2 y2 x3 y3 [GraphicAtt] [fgnc=false/true]
+  if fgnc==true : Normalized 0..1 coordinates specification (def=false)
+  Related commands: addtext addline addarrow addfrect addfrect
+       addcirc addfcirc addfarc addpoly addfpoly graphicatt
+\end{verbatim} 
+\piacommand{addfarca} \label{addfarca} 
+\begin{verbatim} 
+Adds a filled arc to the current graphic object
+ defined by the circle (center+radius), start angle and angular extension
+ Angles are specified in degrees
+  Usage: addfarca xc yc r a0deg dadeg [GraphicAtt] [fgnc=false/true]
+  if fgnc==true : Normalized 0..1 coordinates specification (def=false)
+  Related commands: addtext addline addarca addarc ...
+\end{verbatim} 
+\piacommand{addfcirc} \label{addfcirc} 
+\begin{verbatim} 
+Adds a filled circle to the current graphic object
+ with the specified center and radius (+ graphic attribute)
+ The Base/AxesDrawer is used to handle added circles
+ Alt<E> to remove added element
+  Usage: addcirc xcenter ycenter radius [GraphicAtt] [fgnc=false/true]
+  if fgnc==true : Normalized 0..1 coordinates specification (def=false)
+  Related commands: addtext addline addarrow addfrect addfrect
+       addcirc addarc addfarc addpoly addfpoly graphicatt
+\end{verbatim} 
+\piacommand{addfpoly} \label{addfpoly} 
+\begin{verbatim} 
+Adds a filled polygon to the current graphic object
+  Usage: addploy 'x1,y1 x2,y2 x3,y3 ...' [GraphicAtt] [fgnc=false/true]
+  Coordinates specified as pairs x,y in a single word (use simple or double quotes
+  if fgnc==true : Normalized 0..1 coordinates specification (def=false)
+  Related commands: addtext addline addarrow addfrect addfrect
+       addcirc addfcirc addfarc  graphicatt
+\end{verbatim} 
+\piacommand{addfrect} \label{addfrect} 
+\begin{verbatim} 
+Adds a filled rectangle to the current graphic object
+ between the specified positions (+ graphic attribute)
+ The Base/AxesDrawer is used to handle added rectangle
+ Alt<E> to remove added element
+  Usage: addfrect x1 y1 x2 y2 [GraphicAtt] [fgnc=false/true]
+  if fgnc==true : Normalized 0..1 coordinates specification (def=false)
+  Related commands: addtext addline addarrow addrect
+       addcirc addfcirc addpoly addfpoly graphicatt
+\end{verbatim} 
+\piacommand{addline} \label{addline} 
+\begin{verbatim} 
+Adds a line to the current graphic object
+ at the specified position (+ graphic attribute)
+ The Base/AxesDrawer is used to handle added lines
+ Alt<E> to remove the added element
+  Usage: addline x1 y1 x2 y2 [GraphicAtt] [fgnc=false/true]
+  if fgnc==true : Normalized 0..1 coordinates specification (def=false)
+  Related commands: addarrow addtext addrect addfrect 
+       addmarker addcirc addfcirc addarc addfarc addpoly addfpoly graphicatt
+\end{verbatim} 
+\piacommand{addmarker} \label{addmarker} 
+\begin{verbatim} 
+Adds a marker to the current graphic object
+ at the specified position (+ graphic attribute)
+ The Base/AxesDrawer is used to handle added circles
+ Alt<E> to remove added element
+  Usage: addmarker xpos ypos [GraphicAtt] [fgnc=false/true]
+  if fgnc==true : Normalized 0..1 coordinates specification (def=false)
+  Related commands: addtext addline addarrow addfrect addfrect
+       addcirc addfcirc addarc addfarc addpoly addfpoly graphicatt
+\end{verbatim} 
+\piacommand{addpoly} \label{addpoly} 
+\begin{verbatim} 
+Adds a polyline/polygon to the current graphic object
+  Usage: addploy 'x1,y1 x2,y2 x3,y3 ...' [GraphicAtt] [fgnc=false/true]
+  Coordinates specified as pairs x,y in a single word (use simple or double quotes
+  if fgnc==true : Normalized 0..1 coordinates specification (def=false)
+  Related commands: addtext addline addarrow addfrect addfrect
+       addcirc addfcirc addfarc  graphicatt
+\end{verbatim} 
+\piacommand{addrect} \label{addrect} 
+\begin{verbatim} 
+Adds a rectangle to the current graphic object
+ between the specified positions (+ graphic attribute)
+ The Base/AxesDrawer is used to handle added rectangle
+ Alt<E> to remove added element
+  Usage: addrect x1 y1 x2 y2 [GraphicAtt] [fgnc=false/true]
+  if fgnc==true : Normalized 0..1 coordinates specification (def=false)
+  Related commands: addtext addline addarrow addfrect
+       addcirc addfcirc addarc addfarc addpoly addfpoly graphicatt
+\end{verbatim} 
+\piacommand{addtext} \label{addtext} 
+\begin{verbatim} 
+Adds a text string to the current graphic object
+ at the specified position (+ color/font/pos/dir attributes) 
+ The Base/AxesDrawer is used to handle added text strings
+ Alt<E> to remove the added element
+  Usage: addtext x y TextString [ColFontPosAtt] [fgnc=false/true]
+  (use quotes '' for multi word text strings) 
+  if fgnc==true : Normalized 0..1 coordinates specification (def=false)
+ Text position/direction attribute: 
+      horizleft horizcenter horizright
+      vertbottom vertcenter verttop 
+      textdirhoriz textdirvertup textdirvertdown 
+  Related commands: addctext addline addarrow addrect addfrect
+      addcirc addfcirc addarc addfrac addpoly addfpoly settitle graphicatt
+\end{verbatim} 
+\subsection{Graphics} \label{Graphics} 
+\noindent 
+\piahelpitem{PIConsole} \label{PIConsole} 
+\begin{verbatim} 
+Text output area and command editing window (console) 
+>>>> Mouse controls : 
+o Button-1: Rectangle selection for copy/paste 
+o Button-2: Paste text in the command editing line 
+o Button-3: activate display option menu 
+>>>> Keyboard controls : 
+o <Alt>O : activate display option menu   
+o <Alt>V : Paste text in the command editing line 
+o <Alt>A : Selection of the whole window for copy 
+o <Alt>L : Command history (List of command history buffer) 
+o <Ctl>A : Command editing -> Goto the beginning of line 
+o <Ctl>E : Command editing -> Goto the end of line 
+o <Ctl>K : Command editing -> Clear to the end of line 
+o <Ctl>C : Command editing -> Clear the line 
+o Cursor left,right : Command editing -> Move cursor 
+o Cursor Up,Down : recall command from history buffer 
+o Backspace,Del : Command editing 
+o <Return>,<Enter> : Execute command 
+
+\end{verbatim} 
+\piahelpitem{PIDraw3DWdg} \label{PIDraw3DWdg} 
+\begin{verbatim} 
+Manages display of 3-D objects (drawers)  
+>>>> Mouse controls : 
+o Button-2: Rotates the observer (camera) around object 
+o Shift-Button-2: Rotates object with camera fixed 
+  The object rotation mode can be assigned to Button-2 with <Alt>S 
+o Button-3: Zoom control (Camera distance And/Or view angle) 
+>>>> Keyboard controls : 
+o <Alt>R : Resets the 3-D view and refreshes the display 
+o <Alt>G : Show the PIDrawerTools (Graphic attributes of displayed Drawers) 
+o <Alt>O : = <Alt>G 
+o <Alt>V : Copy/Paste / Text paste at the current position (Drawer 0)
+o <Alt>Z : Removes added graphic elements (handled by BaseDrawer - 0) 
+o <Alt>E : Removes the last added graphic element 
+o <Alt>A : Activate/Deactivate axes drawing 
+o <Alt>S : Activate/Deactivate object rotation mode on Button-2 
+
+\end{verbatim} 
+\piahelpitem{PIImage} \label{PIImage} 
+\begin{verbatim} 
+Manages the display of a 2-D array (P2DArrayAdapter) as an image 
+and controls a zoom widget, as well as a global image view widget 
+>>>> Mouse controls : 
+o Button-1: Display current coordinates and pixel value
+  Position the cursor an refresh the zoom widget
+o Button-2: Defines an image zone and positions the cursor 
+o Button-3: Moves the viewed portion of the array inside the window 
+>>>> Keyboard controls : 
+o <Alt>R : Refresh display 
+o <Alt>O : Shows the PIImageTools (image display parameter controls) 
+o <Alt>G : Show the PIDrawerTools (Graphic attributes of overlayed graphics (Drawers)) 
+o <Alt>V : Copy/Paste / Text paste at the current cursor position 
+o <Alt>C : Copy/Paste / Copies the selected regions content as text in the copy/paste buffer 
+o <Alt>X : Show/Hide the Cut Window 
+o <Alt>Z : Removes added graphic elements (handled by BaseDrawer - 0) 
+o <Alt>E : Removes the last added graphic element 
+o <Alt>+ or <Cntl>+ : Zoom in 
+o <Alt>- or <Cntl>- : Zoom out 
+o Cursor keys : Moves the image cursor 
+
+\end{verbatim} 
+\piahelpitem{PIScDrawWdg} \label{PIScDrawWdg} 
+\begin{verbatim} 
+Manages display of 2-D drawers with interactive zoom 
+>>>> Mouse controls : 
+o Button-1: Display current coordinates 
+o Button-2: Defines a rectangle for zoom 
+o Button-3: Defines a rectangle for Text-Info (<Alt>I) 
+>>>> Keyboard controls : 
+o <Alt>R : Refresh display 
+o <Alt>O : Displays a specific control window (default: PIDrawerTools) 
+           Specific controls for 2-D histograms 
+o <Alt>G : Show the PIDrawerTools (Graphic attributes of displayed Drawers) 
+           Drawer 0 manages the axes, as well as the added text 
+o <Alt>V : Copy/Paste / Text paste at the current position 
+o <Alt>Z : Removes added graphic elements (handled by BaseDrawer - 0) 
+o <Alt>E : Removes the last added graphic element 
+o <Alt>I : Shows (or updates) a text info window on the selected rectangle 
+o <Alt>M : Activate/Deactivate a measurement cursor on Button-1
+o <Alt>L : Deactivate DX,DY print (see below)
+>>>> Mouse + Keyboard controls : 
+o Button-1 + <Alt>K : Set (reset) the reference point for DX,DY print 
+
+\end{verbatim} 
+\piahelpitem{Windows} \label{Windows} 
+\begin{verbatim} 
+Objects can be displayed in different windows, or overlayed on the 
+previous display. The graphics attributes next,win,stack,same control 
+the display window. 
+o GraphicWindow : This is the default mode (gr_att=next)
+  Graphic windows can be divided int zones. Object is displayed 
+  in the next available position, removing a previously displayed 
+  widget if necessary 
+o Window : An object is displayed in its own window (gr_att= win) 
+o StackWindow : multpile widgets can be stacked in a StackWindow (gr_att= stack) 
+  A single widget is displayed a any time. Different widgets in a StackWindow 
+  can be displayed using the stacknext command, as well as the StackTools item 
+  in the Tools menu (from Menubar). An automatic cyclic display mode can also 
+  be activated using the StackTools menu (Blink) 
+o Most objects can be also be displayed overlayed 
+  on the last displayed widget (gr_att= same) 
+o The overlay can be on a selected rectangle of the 
+  last displayed widget (gr_att= inset) - See setinsetlimits
+
+  Related commands: newwin zone stacknext graphicatt setinsetlimits
+\end{verbatim} 
+\piacommand{addaxelabels} \label{addaxelabels} 
+\begin{verbatim} 
+Set the X and Y axis labels for the current 2D graphic object   alias for setaxelabels 
+\end{verbatim} 
+\piacommand{addtitle} \label{addtitle} 
+\begin{verbatim} 
+Set the title string (top title / bottom title) 
+   alias for settitle 
+\end{verbatim} 
+\piacommand{drpanel} \label{drpanel} 
+\begin{verbatim} 
+Creates a new 2D drawing zone for addtext, addline 
+ Usage: drpanel xmin xmax ymin ymax [GrAtt] [Name]
+  Related commands: addtext addline addrect addcirc ...
+\end{verbatim} 
+\piacommand{graphicatt} \label{graphicatt} 
+\begin{verbatim} 
+To change default graphic options 
+  Usage: graphicatt att_list 
+att_list=def back to default values, Example: gratt 'red circlemarker5'
+ ------------------ Graphic attribute list ------------------ 
+>> Colors: defcol black white grey red blue green yellow 
+           magenta cyan turquoise navyblue orange siennared purple 
+           limegreen gold violet violetred blueviolet darkviolet 
+>> Lines:  defline normalline thinline thickline dashedline thindashedline 
+           thickdashedline dottedline thindottedline thickdottedline 
+>> Font Att: deffontatt normalfont boldfont italicfont bolditalicfont  
+             smallfont smallboldfont smallitalicfont smallbolditalicfont 
+             bigfont bigboldfont bigitalicfont bigbolditalicfont 
+             hugefont  hugeboldfont hugeitalicfont hugebolditalicfont 
+>> Font Names: deffont courierfont helveticafont timesfont symbolfont  
+>> Marker: dotmarker<T>  plusmarker<T>  crossmarker<T> circlemarker<T> 
+           fcirclemarker<T> boxmarker<T> fboxmarker<T> trianglemarker<T> 
+           ftrianglemarker<T>  starmarker<T>  fstarmarker<T> 
+   with <T> = 1 3 5 7 .. 15 , Example fboxmarker5 , plusmarker9 ... 
+>> ArrowMarker: basicarrow<T>  trianglearrow<T>  ftrianglearrow<T> 
+                arrowshapedarrow<T> farrowshapedarrow<T> 
+   with <T> = 5 7 .. 15 , Example trianglearrow7 ... 
+>> ColorTables: defcmap  grey32  invgrey32  colrj32  colbr32 
+                grey128  invgrey128  colrj128  colbr128 
+                red32cm  green32cm  blue32cm  yellow32cm 
+                orange32cm cyan32cm violet32cm 
+                midas_pastel midas_heat midas_rainbow3 midas_bluered
+                midas_bluewhite midas_redwhite 
+                multicol16 multicol64 
+   revcmap : This flag reverses ColorMap indexing 
+--- For image displays:    
+>> ZoomFactors      zoomxN zoomx1 zoomx2 zoomx3 ... 
+                    zoom/N zoom/2 zoom/3 zoom/4 ...
+>> imagecenter=ix,iy -> Position the image in widget 
+>> lut=ltyp,min,max -> Sets LUT type and min/max for image display 
+                       (ltyp=lin/log/sqrt/square) 
+>> image axes configuration: invx invy exchxy 
+>> Axes / Axe labels / LogScale / xylimits / defdrrect 
+   See setaxesatt command 
+>> stat/nostat or stats/nostats -> Toggle statistic display flag 
+>> title/notitle or tit/notit -> Toggle Auto AddTitle flag 
+>> DisplayWindow: next same win stack inset 
+   Related commands: setaxesatt setinsetlimits 
+\end{verbatim} 
+\piacommand{imagcmap2eps} \label{imagcmap2eps} 
+\begin{verbatim} 
+imagcmap2eps: Current Image+ColorMap To EncapsulatedPostScript 
+Usage: imagcmap2eps EPSFileName
+\end{verbatim} 
+\piacommand{imagcmap2ps} \label{imagcmap2ps} 
+\begin{verbatim} 
+w2ps: Current Image+ColorMap To PostScript 
+Usage: imagcmap2ps 
+\end{verbatim} 
+\piacommand{newwin} \label{newwin} 
+\begin{verbatim} 
+To Create a New Graphic window, with zones 
+  Window size can be specified 
+    Usage: newwin [nx ny [sizeX sizeY]] 
+  Related commands: zone
+\end{verbatim} 
+\piacommand{psclosefile} \label{psclosefile} 
+\begin{verbatim} 
+psclosefile: close current postscript file 
+Usage: w2psclosefile 
+\end{verbatim} 
+\piacommand{psgetfilename} \label{psgetfilename} 
+\begin{verbatim} 
+psgetfilename: Prints current PostScript file name 
+Usage: psgetfilename 
+\end{verbatim} 
+\piacommand{pssetfilename} \label{pssetfilename} 
+\begin{verbatim} 
+pssetfilename: Sets current PostScript file name
+Usage: pssetfilename FileName 
+\end{verbatim} 
+\piacommand{setaxelabels} \label{setaxelabels} 
+\begin{verbatim} 
+Set the X and Y axis labels for the current 2D graphic object 
+
+  Usage: setaxelabels xLabel yLabel [ColorFntAtt]
+  Related commands: settitle addtext graphicatt
+\end{verbatim} 
+\piacommand{setaxesatt} \label{setaxesatt} 
+\begin{verbatim} 
+To set default axes attributes 
+  Usage: setaxesatt att_list 
+Color/Line/Font attributes and axes attributes 
+>> Axes:  axesnone stdaxes=defaxes=boxaxes boxaxesgrid 
+          fineaxes fineaxesgrid centeredaxes finecenteredaxes 
+          centeredaxesgrid finecenteredaxesgrid 
+          grid nogrid labels nolabels  
+          ticks noticks minorticks nominorticks 
+          extticks intticks extintticks 
+          nbticks=X_NTicks,Y_NTicks  
+          tickslen=MajTickLenFrac,MinTickLenFrac 
+>> Axe labels font size: fixedfontsize/autofontsize=fszf 
+          autofontsize=fsizef: Font size computed automatically 
+          fixedfontsize: Use font size attribute (BaseDrawer) 
+>> LogScale : linx liny logx logy -> Lin/Log Scales for 2D plots 
+>> xylimits=xmin,xmax,ymin,ymax  -> Forces X-Y limits in 2-D plots 
+>> defdrrect=xmin,xmax,ymin,ymax -> Defines drawing rectangle 2-D plots 
+          The rectangle is defined as a fraction of the widget size
+
+\end{verbatim} 
+\piacommand{setinsetlimits} \label{setinsetlimits} 
+\begin{verbatim} 
+Define the display rectangle for drawers added as insets 
+ over existing graphic objects - limits expressed as fraction 
+ graphic object size (0. .. 1.) Xmax at right, YMax top.  Usage: setinsetlimits xmin xmax ymin ymax
+  Related commands: graphicatt /inset
+\end{verbatim} 
+\piacommand{settitle} \label{settitle} 
+\begin{verbatim} 
+Set the title string (top title / bottom title) for the current graphic object
+  Usage: settitle TopTitle [BottomTitle] [fontAtt]
+  Related commands: addtext graphicatt
+\end{verbatim} 
+\piacommand{stacknext} \label{stacknext} 
+\begin{verbatim} 
+Displays the next widget on stack window 
+  Usage: stacknext
+\end{verbatim} 
+\piacommand{w2eps} \label{w2eps} 
+\begin{verbatim} 
+w2eps: Current Window To EncapsulatedPostScript 
+Usage: w2eps EPSFileName
+\end{verbatim} 
+\piacommand{w2ps} \label{w2ps} 
+\begin{verbatim} 
+w2ps: Current Window To PostScript 
+Usage: w2ps 
+\end{verbatim} 
+\piacommand{zone} \label{zone} 
+\begin{verbatim} 
+To Divide the Graphic window 
+  Usage: zone [nx=1 ny=1]
+  Related commands: newwin
+\end{verbatim} 
+\subsection{Obj. Display} \label{ObjZZDisplay} 
+\noindent 
+\piacommand{contour} \label{contour} 
+\begin{verbatim} 
+Creates and displays a ContourDrawer 
+ Usage: contour objectName [graphic_att/specific_opt] 
+ Specific Options 
+    ncont=[number of contours (automatic levels) ] 
+    niv/lev=[values for contours, separated by ','] 
+    lstep=[nomber,first_value,increment for contours ] 
+    bspline : use bspline algo for contour 
+    3spl : use cubic spline algo for contour 
+    labon : put labels for contours 
+\end{verbatim} 
+\piacommand{disp} \label{disp} 
+\begin{verbatim} 
+Displays an object 
+ Usage: disp nameobj [graphic_attributes]
+  Related commands: surf nt2d nt3d vecplot
+\end{verbatim} 
+\piacommand{gfd2d} \label{gfd2d} 
+\begin{verbatim} 
+Displays Points (X-Y) with error-bars from a GeneralFit Data 
+ Usage : gfd2d nameobj numvarx erreur=(x y xy) [graphic_attributes]
+  Related commands: gfd3d nt2d nt3d 
+  ----- OBSOLETE: utilisez nt2d -----
+\end{verbatim} 
+\piacommand{gfd3d} \label{gfd3d} 
+\begin{verbatim} 
+Displays 3D-Points (X-Y-Z) with error-bars from a GeneralFit Data 
+ Usage : gfd3d nameobj numvarx numvary erreur=(x y z xy xz yz xyz) [graphic_attributes]
+  Related commands: gfd2d nt2d nt3d 
+  ----- OBSOLETE: utilisez nt3d -----
+\end{verbatim} 
+\piacommand{imag} \label{imag} 
+\begin{verbatim} 
+Displays an object as an image 
+ Usage: imag nameobj [graphic_attributes]
+  Related commands: disp surf nt2d nt3d vecplot
+\end{verbatim} 
+\piacommand{nt2d} \label{nt2d} 
+\begin{verbatim} 
+Displays Points (X-Y) [with error-bar / Weight / Label ] from an NTuple 
+ Usage : nt2d nameobj varx vary [errx erry wt label graphic_attributes]
+  Related commands: disp  surf  nt3d  gfd2d vecplot
+\end{verbatim} 
+\piacommand{nt2dvec} \label{nt2dvec} 
+\begin{verbatim} 
+Creates and displays a flow chart from ntuple variables
+ Usage: nt2dvec x y vx vy [graphic_att] 
+\end{verbatim} 
+\piacommand{nt3d} \label{nt3d} 
+\begin{verbatim} 
+Displays 3D-Points (X-Y-Z) [with error-bars / Weight / Label ] from an NTuple 
+ Usage : nt3d nameobj varx vary varz [errx erry errz wt label graphic_attributes]
+  Related commands: disp  surf  nt2d gfd3d 
+\end{verbatim} 
+\piacommand{ntcont} \label{ntcont} 
+\begin{verbatim} 
+Creates and displays a ContourDrawer (from a NTuple)
+ Usage: ntcont NTupleName varx vary varz [graphic_att/specific_opt] 
+        specific options 
+    ncont=[number of contours (automatic levels) ] 
+    niv/lev=[values for contours, separated by ','] 
+    lstep=[nomber,first_value,increment for contours ] 
+    bspline : use bspline algo for contour 
+    3spl : use cubic spline algo for contour 
+    labon : put labels for contours 
+\end{verbatim} 
+\piacommand{surf} \label{surf} 
+\begin{verbatim} 
+Displays an object as a 3D surface 
+ Usage: surf nameobj [graphic_attributes]
+  Related commands: disp nt2d nt3d vecplot
+\end{verbatim} 
+\piacommand{vecplot} \label{vecplot} 
+\begin{verbatim} 
+Displays Points (X-Y) with coordinates defined by two vectors 
+ Usage : vecplot nameVecX nameVecY [graphic_attributes]
+  Related commands: disp nt2d 
+\end{verbatim} 
+\subsection{Object Management} \label{ObjectZManagement} 
+\noindent 
+\piacommand{cd} \label{cd} 
+\begin{verbatim} 
+Change current directory
+ Usage: cd [dirname]
+\end{verbatim} 
+\piacommand{copy} \label{copy} 
+\begin{verbatim} 
+Copy objects (Alias cp) 
+  Usage: copy name_from name_to
+  Related commands: cp new...
+\end{verbatim} 
+\piacommand{cp} \label{cp} 
+\begin{verbatim} 
+Copy objects (Alias copy) 
+  Usage: cp name_from name_to
+  Related commands: copy new...
+\end{verbatim} 
+\piacommand{del} \label{del} 
+\begin{verbatim} 
+Deletes an object (Alias: rm) 
+ Usage: del nameobj [nameobj2 ...]
+  Related commands: rm delobjs rename
+\end{verbatim} 
+\piacommand{delobjs} \label{delobjs} 
+\begin{verbatim} 
+Delete a set of objects with names matching a pattern (x?y*)
+ Usage: delobjs nameobjpattern 
+
+  Related commands: del rename
+\end{verbatim} 
+\piacommand{listdirs} \label{listdirs} 
+\begin{verbatim} 
+Prints the list of directories
+ Usage: listdirs [patt=*] 
+ patt : * , ? 
+\end{verbatim} 
+\piacommand{listobjs} \label{listobjs} 
+\begin{verbatim} 
+Prints the list of objects (Alias: ls)
+ Usage: listobjs [patt=*] 
+ patt : /*/x?y* ... 
+\end{verbatim} 
+\piacommand{mkdir} \label{mkdir} 
+\begin{verbatim} 
+Create a directory
+ Usage: mkdir dirname [true]
+ if second argument==true, the directory's KeepOld attribute is set to true
+\end{verbatim} 
+\piacommand{mv} \label{mv} 
+\begin{verbatim} 
+Rename an object (Alias: rename) 
+ Usage: mv nameobj namenew
+  Related commands: rename del delobjs
+\end{verbatim} 
+\piacommand{pwd} \label{pwd} 
+\begin{verbatim} 
+Prints current directory
+ Usage: pwd
+\end{verbatim} 
+\piacommand{rename} \label{rename} 
+\begin{verbatim} 
+Rename an object (Alias: mv) 
+ Usage: rename nameobj namenew
+  Related commands: mv del delobjs
+\end{verbatim} 
+\piacommand{rm} \label{rm} 
+\begin{verbatim} 
+Deletes an object (Alias: del) 
+ Usage: rm nameobj [nameobj2 ...]
+  Related commands: del delobjs rename
+\end{verbatim} 
+\piacommand{rmdir} \label{rmdir} 
+\begin{verbatim} 
+Removes an empty directory
+ Usage: remove dirname
+\end{verbatim} 
+\piacommand{setdiratt} \label{setdiratt} 
+\begin{verbatim} 
+Sets directory attributes
+ Usage: setdiratt dirname KeepOldFlag(=true/false)
+   KeepOldFlag=true Object with the same name is moved to old
+   when adding objects
+\end{verbatim} 
+\subsection{Objects} \label{Objects} 
+\noindent 
+\piacommand{line2nt} \label{line2nt} 
+\begin{verbatim} 
+Fills (append) an NTuple from the line content 
+  Usage: line2nt ntname col0 col1 ... 
+  Related commands: newnt line2vec ntline2var ntcol2var
+\end{verbatim} 
+\piacommand{line2vec} \label{line2vec} 
+\begin{verbatim} 
+Creates a vector from the line 
+  Usage: line2vec vecname v0 v1 v2 ... 
+  Related commands: newvec line2nt
+\end{verbatim} 
+\piacommand{newgfd} \label{newgfd} 
+\begin{verbatim} 
+Creates GeneralFit Data object 
+ Usage: newgfd nvar nalloc [errx(0/1)]
+  Related commands: newh1d  newh2d  newprof[e] newnt 
+\end{verbatim} 
+\piacommand{newh1d} \label{newh1d} 
+\begin{verbatim} 
+Creates a 1D histogramm 
+ Usage: newh1d name xmin xmax nbin
+  Related commands: newh2d  newprof[e] newnt  newgfd 
+\end{verbatim} 
+\piacommand{newh2d} \label{newh2d} 
+\begin{verbatim} 
+Creates a 2D histogramm 
+ Usage: newh2d name xmin xmax nbinx ymin ymax nbiny
+  Related commands: newh1d  newprof[e] newnt  newgfd 
+\end{verbatim} 
+\piacommand{newmtx} \label{newmtx} 
+\begin{verbatim} 
+Creates (and optionaly fills) a matrix 
+  Usage: newmtx name sizeX(Col) sizeY(Lines) [f(i,j) [dopt] ] 
+  Related commands: newvec
+\end{verbatim} 
+\piacommand{newnt} \label{newnt} 
+\begin{verbatim} 
+Creates a ntuple 
+ Usage: newnt name v1 v2 v3 .. vn
+        newnt name nvar
+  Related commands: newh1d  newh2d newprof[e] newgfd 
+\end{verbatim} 
+\piacommand{newprof} \label{newprof} 
+\begin{verbatim} 
+Creates a profile histogramm 
+ Usage: newprof name xmin xmax nbin [ymin ymax]
+  Errors represent the data spread in the X bin 
+  Related commands: newh1d  newh2d newprofe newnt newgfd 
+\end{verbatim} 
+\piacommand{newprofe} \label{newprofe} 
+\begin{verbatim} 
+Creates a profile histogramm 
+ Usage: newprofe name xmin xmax nbin [ymin ymax]
+  Errors represent the error on the data mean in the X bin 
+  Related commands: newh1d  newh2d newprof newnt newgfd 
+\end{verbatim} 
+\piacommand{newvec} \label{newvec} 
+\begin{verbatim} 
+Creates (and optionaly fills) a vector 
+ Usage: newvec name size [f(i) [dopt] ] 
+  Related commands: newmtx line2vec
+\end{verbatim} 
+\piacommand{ntcol2var} \label{ntcol2var} 
+\begin{verbatim} 
+Object NTupleInterface column to an interpreter variable 
+  Usage: ntline2var objname column_number varname [LoopParam start:end[:step] ] 
+  Related commands: vec2var ntline2var
+\end{verbatim} 
+\piacommand{ntline2var} \label{ntline2var} 
+\begin{verbatim} 
+Object NTupleInterface line to an interpreter variable 
+  Usage: ntline2var objname line_number varname 
+  Related commands: vec2var ntcol2var
+\end{verbatim} 
+\piacommand{vec2var} \label{vec2var} 
+\begin{verbatim} 
+Vector content to an interpreter variable varname = 'v0 v1 v2 ...' 
+  Usage: line2vec vecname varname [LoopParam start:end[:step] ]
+  Related commands: line2vec ntline2var
+\end{verbatim} 
+\subsection{PIACmd} \label{PIACmd} 
+\noindent 
+\piahelpitem{Interpreter} \label{Interpreter} 
+\begin{verbatim} 
+>>> (piacmd) Interpreter's keywords : 
+  > set varname string   # To set a variable, $varname 
+  > get newvarname varname # To set a newvariable, equal to $varname 
+  > setol varname patt     # Fills varname with object list 
+  > unset varname          # clear variable definition 
+  > rpneval varname RPNExpression # Reverse Polish Notation evaluation 
+  > varname = 'string string ...' # To set a variable, $varname  
+  > varname = RPNExpression # RPN evaluation / result -> varname 
+  > echo string            # output string 
+  > echo2file filename string # Append the string to the specified file 
+  > alias name string      # define a command alias 
+  > readstdin varname      # reads a line from stdin into $varname 
+  > foreach varname ( string-list ) # Loop 
+  > for varname i1:i2[:di]      # Integer loop  
+  > for varname f1:f2[:df]      # Float loop  
+  > end                         # end loops 
+  > if ( test ) then  # Conditional test : a == != < > <= >= b 
+  > else          # Conditional  
+  > endif         # End of conditional if bloc 
+  > break         # Delete (clears) all test and loop blocs 
+  > return        # Stops command execution from a file 
+  > defscript endscript # Command script definition 
+  > listvars      # List of variable names and values 
+  > listalias     # List of alias names and values 
+  > listcommands  # List of all known commands 
+  > listscripts   # List of all known scripts 
+  > clearcript    # Clear a script definition 
+  > exec filename # Execute commands from file 
+  > help <command_name>  # <command_name> usage info 
+  > helpwindow           # Displays help window 
+  > timingon  timingoff traceon  traceoff 
+
+\end{verbatim} 
+\piahelpitem{RPNEvaluator} \label{RPNEvaluator} 
+\begin{verbatim} 
+ Reverse Polish Notation (HP calculator like) expression evaluation 
+  >> Stack: 
+     ... (4) (3) z=(2) y=(1) x=(0)=Stack.Top() 
+  >> Examples:  
+  - sin(PI/6): pi 6 / sin 
+  - 1*2*...*5: 1 2 3 4 5 product 
+  - x=x+y: x = $x $y * 
+  >>> Stack operations : 
+      print x<>y pop push (duplicate x) 
+  >>> Constants (Cst pushed to stack): 
+      pi e 
+  >>> Arithmetic operators (x,y) --> x@y 
+      + - * / % ( (int)y % (int)x )
+  >>> F(X): x --> F(x) 
+      chs sqrt sq log log10 exp  
+      fabs  floor ceil 
+      cos sin tan acos asin atan deg2rad rad2deg 
+  >>> F(X,Y): (x,y) --> F(x,y) 
+      pow atan2 
+  >>> F(): random number generators 
+      rand (flat 0..1) norand (normal/gaussian) 
+  >>> Stack sum/product/mean/sigma/sigma^2 
+      sum product mean sigma sigma2 sigmean (y->sigma x->mean) 
+
+\end{verbatim} 
+\piahelpitem{autoiniranf} \label{autoiniranf} 
+\begin{verbatim} 
+> Automatic random number generator initialisation
+   by Auto_Ini_Ranf(int lp) 
+   Usage: autoiniranf
+\end{verbatim} 
+\piahelpitem{exitpiapp} \label{exitpiapp} 
+\begin{verbatim} 
+To end the piapp session (Interpreter's command)
+\end{verbatim} 
+\piahelpitem{shell execute} \label{shellZexecute} 
+\begin{verbatim} 
+> shell  command_string  # Execute  shell command
+> cshell command_string  # Execute cshell command
+---Examples:
+  > shell ls
+  > cshell echo '$LD_LIBRARY_PATH'; map2cl -h; ls
+  > shell myfile.csh [arg1] [arg2] [...]
+    (where the first line of "myfile.csh" is "#!/bin/csh")
+
+\end{verbatim} 
+\subsection{SkyMapCmd} \label{SkyMapCmd} 
+\noindent 
+\piacommand{alm2cl} \label{alm2cl} 
+\begin{verbatim} 
+Project alm to cl
+ Usage: alm2cl alm cl
+\end{verbatim} 
+\piacommand{alm2map} \label{alm2map} 
+\begin{verbatim} 
+Generate SkyMap map(double) from Alm
+ Usage: alm2map almmat map(double) nside
+    (see command settypemap)
+\end{verbatim} 
+\piacommand{cl2llcl} \label{cl2llcl} 
+\begin{verbatim} 
+Project cl to l*(l+1)*cl
+ Usage: cl2llcl cl llcl
+\end{verbatim} 
+\piacommand{cl2map} \label{cl2map} 
+\begin{verbatim} 
+Generate SkyMap map(double) from Cl
+ Usage: cl2map clvec map(double) nside [fwhm]
+    (see command settypemap)
+\end{verbatim} 
+\piacommand{clmean} \label{clmean} 
+\begin{verbatim} 
+Compute mean for a cl vector
+ Usage: clmean cl imin,imax [meanvarname]
+   imin,imax  = compute between these indices
+   meanvarname  = variable name to store mean
+\end{verbatim} 
+\piacommand{clmult} \label{clmult} 
+\begin{verbatim} 
+Multiply a cl by a constant
+ Usage: clmult cl val
+\end{verbatim} 
+\piacommand{clop} \label{clop} 
+\begin{verbatim} 
+operation on a cl
+ Usage: clop cl(double) op1 cl1(double) [op2 cl2(double)] [op2 cl3(double)] [...]
+   Do "cl op1= cl1", "cl op2=cl2", ...
+      where op = +,-,*,/
+\end{verbatim} 
+\piacommand{clrebin} \label{clrebin} 
+\begin{verbatim} 
+rebin a cl into an ntuple
+ Usage: clrebin cl ntuple nbin,bin0
+   nbin: rebin by nbin
+   bin0: begin rebinning at bin bin0 (def=0)
+\end{verbatim} 
+\piacommand{crmapmask} \label{crmapmask} 
+\begin{verbatim} 
+Create a map mask(double) (nside) between latitudes lat1,lat2 longitudes lon1,lon2
+ Usage: crmapmask mapmsk(double) nside lat1,lat2 lon1,lon2 [valmsk,valnomsk]
+    mask pixels between [lat1,lat2] ([-90,90] in degrees)
+                and    [lon1,lon2] ([0,360[ in degrees)
+                (for no mask "!")
+    valmsk=value to be written into masked pixels (def=0)
+    valnomsk=value to be written into unmasked pixels (def=1)
+          (see command settypemap)
+\end{verbatim} 
+\piacommand{crmaskfrmap} \label{crmaskfrmap} 
+\begin{verbatim} 
+Create a map mask(double) (nside) relative to an other map(double) pixels values
+ Usage: crmaskfrmap mapmsk(double) nside map(double) v1,v2 [valmsk,valnomsk]
+    mask if v1<mapmsk(i)<v2
+    valmsk=value to be written into masked pixels (def=0)
+    valnomsk=value to be written into unmasked pixels (def=1)
+\end{verbatim} 
+\piacommand{map2alm} \label{map2alm} 
+\begin{verbatim} 
+SkyMap map(double) to Alm
+ Usage: map2alm map(double) almmat [lmax] [niter]
+   lmax: if <=0 or "!" use default (3*nside-1)
+   niter: number of iterations (<=0 or def=3)
+\end{verbatim} 
+\piacommand{map2cl} \label{map2cl} 
+\begin{verbatim} 
+SkyMap map(double) to Cl
+ Usage: map2cl map(double) clvec [lmax] [niter]
+   lmax: if <=0 or "!" use default (3*nside-1)
+   niter: number of iterations (<=0 or def=3)
+\end{verbatim} 
+\piacommand{map2double} \label{map2double} 
+\begin{verbatim} 
+Convert a float map to a double map
+ Usage: map2double map(float)
+\end{verbatim} 
+\piacommand{map2float} \label{map2float} 
+\begin{verbatim} 
+Convert a double map to a float map
+ Usage: map2float map(double)
+\end{verbatim} 
+\piacommand{map2local} \label{map2local} 
+\begin{verbatim} 
+Project a map(double) into a local map(double)
+ Usage: map2local map(double) localmap(double) nx,ny angleX,angleY phi0,theta0 [x0,y0] [angle]
+   nx,ny: number of pixels in x(col),y(row) direction
+          X-axis==phi, Y-axis==theta
+   angleX,angleY: total angle aperture in x,y direction (degrees)
+   phi0,theta0: define origin in phi,theta (degrees)
+   x0,y0: map phi0,theta0 to pixel x0,y0 ("!" or def=middle of the localmap)
+   angle: angle (degrees) of rotation between x-axis of  map-coordinate system
+           and the tangent to parallel on the sphere (def: 0.)
+\end{verbatim} 
+\piacommand{map2map} \label{map2map} 
+\begin{verbatim} 
+Convert a map(double) into an other map type
+ Usage: map2map map(double) type [nside]
+   type= H for Healpix
+         T for ThetaPhi
+   if nside <=1 use nside from map
+\end{verbatim} 
+\piacommand{mapcover} \label{mapcover} 
+\begin{verbatim} 
+Print the covering of a map(double)
+ Usage: mapcover map(double) v1,v2 [varname]
+    v1,v2: good pixels have v1<=val<=v2 (def=0.99,1.01)
+          (use default (0.99,1.01): "!")
+    $varname: percent of sky covering
+\end{verbatim} 
+\piacommand{mapmult} \label{mapmult} 
+\begin{verbatim} 
+Multiply a map(double) by a constant
+ Usage: mapmult map(double) cste
+\end{verbatim} 
+\piacommand{mapop} \label{mapop} 
+\begin{verbatim} 
+operation on a map(double)
+ Usage: mapop map(double) op1 map1(double) [op2 map2(double)] [op2 map3(double)] [...]
+   Do "map op1= map1", "map op2=map2", ...
+      where op = +,-,*,/
+\end{verbatim} 
+\piacommand{maproj} \label{maproj} 
+\begin{verbatim} 
+Project a map(double) into an other one
+ Usage: maproj map(double) mapproj(double) [nside]
+   Create mapproj(nside) and project map into mapproj
+   (use "maproj map mapproj" to make a copy)
+\end{verbatim} 
+\piacommand{mapstat} \label{mapstat} 
+\begin{verbatim} 
+Statistics from a map(double)
+ Usage: mapstat map(double) [msk(double)] [meanvarname] [sigmavarname]
+   msk = mask sphere used as weight
+     if msk(i)<=0 do not use that pixel
+     if msk(i)>0  use that pixel with weight msk(i)
+   msk = "!" means no mask sphere
+   meanvarname  = variable name to store mean
+   sigmavarname = variable name to store sigma
+   ("!" means do not store)
+\end{verbatim} 
+\piacommand{maskmap} \label{maskmap} 
+\begin{verbatim} 
+Mask a map(double) with a mask map(double)
+ Usage: maskmap map msk
+    operation is map(i) *= msk(theta,phi)
+\end{verbatim} 
+\piacommand{settypemap} \label{settypemap} 
+\begin{verbatim} 
+Set le type de map(double) par default
+ Usage: settypemap type
+   type= H for Healpix (default)
+         T for ThetaPhi
+\end{verbatim} 
+\piacommand{typemap} \label{typemap} 
+\begin{verbatim} 
+Imprime le type de map
+ Usage: typemap map
+\end{verbatim} 
+\subsection{SophyaCmd} \label{SophyaCmd} 
+\noindent 
+\piacommand{mollgrid} \label{mollgrid} 
+\begin{verbatim} 
+Creates a spherical coordinate grid in Molleweide projection 
+ Usage: mollgrid [Nb_Parallel Nb_Meridien graphic_att] 
+\end{verbatim} 
+\piacommand{mollgridsph} \label{mollgridsph} 
+\begin{verbatim} 
+Creates a spherical coordinate grid in Molleweide projection 
+ Usage: mollgridsph NameSphericalMap [Nb_Parallel Nb_Meridien graphic_att] 
+\end{verbatim} 
+\piacommand{powerspec} \label{powerspec} 
+\begin{verbatim} 
+FFT on a vector -> Plots power spectrum 
+ Usage: fftp vecName vecFFT [graphic_att] 
+\end{verbatim} 
+\subsection{pawCmd} \label{pawCmd} 
+\noindent 
+\piacommand{h/cadd} \label{hZcadd} 
+\begin{verbatim} 
+Add a constant to an histogram, a vector or a matrix
+ h/cadd namehisto val
+  Related commands: h/cmult h/oper
+\end{verbatim} 
+\piacommand{h/cmult} \label{hZcmult} 
+\begin{verbatim} 
+Multiply an histogram, a vector or a matrix by a constant
+ h/cmult namehisto val
+  Related commands: h/cadd h/oper
+\end{verbatim} 
+\piacommand{h/copy} \label{hZcopy} 
+\begin{verbatim} 
+Copy content of object1 into object2
+ objects are Vector,Matrix,Histo,Histo2D
+ h/copy namefrom nametocopy [i1[:i2]] [j1[:j2]] [ic1[:jc1]]
+   copy obj1Dfrom(i1->i2) into obj1Dto(ic1->)
+   copy obj2Dfrom(i1,j1->i2,j2) into obj2Dto(ic1,jc1->)
+ Warning: elements from i1 to i2 included are copied
+ If obj1Dto does not exist, is is created with size i2-i1+1
+    or obj2Dto with size i2-i1+1,j2-j1+1
+ The adressed content of obj?Dfrom is overwritten
+ The non-adressed content of obj?Dfrom is left unchanged
+  Related commands: copy
+\end{verbatim} 
+\piacommand{h/deriv} \label{hZderiv} 
+\begin{verbatim} 
+Derivate a 1D histogram
+ h/deriv nameh1d
+  Related commands: h/integ v/integ v/deriv
+\end{verbatim} 
+\piacommand{h/err} \label{hZerr} 
+\begin{verbatim} 
+Set Histo,Histo2D error to function of bin content value
+ h/err namehisto expr_func
+  Related commands: h/set/err
+\end{verbatim} 
+\piacommand{h/get\_vec} \label{hZgetZvec} 
+\begin{verbatim} 
+Get content of histogram 1D profile or 2D into vector (matrix)
+ h/get_vec nameh1d namevector [cont,err2,absc] [proj]
+ h/get_vec nameh2d namematrix [cont,err2,absc]
+   cont : get histogramme content
+   err2 : get histogramme error^2
+   absc : get histogramme low bin abscissa (1D only)
+     proj :
+            show  : show available projections for Histo2D
+            px    : get X projection
+            py    : get Y projection
+            bx n  : get X band number n
+            by n  : get Y band number n
+            sx n  : get X slice number n
+            sy n  : get Y slice number n
+  Related commands: h/put_vec
+\end{verbatim} 
+\piacommand{h/integ} \label{hZinteg} 
+\begin{verbatim} 
+Integrate a 1D histogram
+ h/integ nameh1d [norm]
+ norm<=0 means no normalisation (def norm=1)
+  Related commands: h/deriv v/integ v/deriv
+\end{verbatim} 
+\piacommand{h/oper} \label{hZoper} 
+\begin{verbatim} 
+Operation on histograms vectors or matrices
+ h/oper @ h1 h2 hres
+        hres = h1 @ h2   with @ = (+,-,*,/)
+ For vectors and matrices, operations are elements by elements
+  Related commands: h/cadd h/cmult
+\end{verbatim} 
+\piacommand{h/plot/2d} \label{hZplotZ2d} 
+\begin{verbatim} 
+Specific plot for 2D histogrammes
+ h/plot/2d nameh2d show        : infos on 2D histogramme
+ h/plot/2d nameh2d h    [dopt] : plot 2D histogramme
+ h/plot/2d nameh2d px   [dopt] : plot X projection
+ h/plot/2d nameh2d py   [dopt] : plot Y projection
+ h/plot/2d nameh2d bx n [dopt] : plot X band number n
+ h/plot/2d nameh2d by n [dopt] : plot Y band number n
+ h/plot/2d nameh2d sx n [dopt] : plot X slice number n
+ h/plot/2d nameh2d sy n [dopt] : plot Y slice number n
+                      n < 0 means Show Info
+\end{verbatim} 
+\piacommand{h/put\_vec} \label{hZputZvec} 
+\begin{verbatim} 
+Put content of vector (matrix) into content of histogram 1D or 2D
+ h/put_vec nameh1d namevector [cont,err2]
+ h/put_vec nameh2d namematrix [cont,err2]
+     cont : put into histogramme content
+     err2 : put into histogramme error^2
+  Related commands: h/get_vec
+\end{verbatim} 
+\piacommand{h/rebin} \label{hZrebin} 
+\begin{verbatim} 
+Rebin a 1D histogram or profile
+ h/rebin nameh1d nbin
+\end{verbatim} 
+\piacommand{h/set/cont} \label{hZsetZcont} 
+\begin{verbatim} 
+Set Histo,Histo2D content for range of bins or range of values
+ h/set/cont namehisto setvalue i1[:i2]  [j1[:j2]]
+     set content to setvalue for bin range i1:i2  j1:j2
+ h/set/cont namehisto setvalue v v1:v2
+     set content to setvalue for content values range v1:v2
+ h/set/cont namehisto setvalue e e1:e2
+     set content to setvalue for error values range v1:v2
+  Related commands: h/set/err
+\end{verbatim} 
+\piacommand{h/set/err} \label{hZsetZerr} 
+\begin{verbatim} 
+Set Histo,Histo2D errors for range of bins or range of values
+ h/set/err namehisto setvalue i1[:i2]  [j1[:j2]]
+     set error to setvalue for bin range i1:i2  j1:j2
+ h/set/err namehisto setvalue v v1:v2
+     set error to setvalue for content values range v1:v2
+ h/set/err namehisto setvalue e e1:e2
+     set error to setvalue for error values range v1:v2
+  Related commands: h/set/cont
+\end{verbatim} 
+\piacommand{n/plot} \label{nZplot} 
+\begin{verbatim} 
+Plot NTuple variables a la paw (alias n/pl)
+ n/plot nameobj.x_exp [cut] [w_exp] [loop] [gratt]
+ n/plot nameobj.y_exp%x_exp [cut] [loop] [gratt]
+ n/plot nameobj.z_exp%y_exp%x_exp [cut] [loop] [gratt]
+        for default use ! , loop=i1[:i2[:di]]
+  Related commands: plot2dw plot3d
+\end{verbatim} 
+\piacommand{n/proj} \label{nZproj} 
+\begin{verbatim} 
+Project NTuple in histogram (1D or 2D) a la paw
+ n/proj nameproj nameobj.x_exp [cut] [w_exp] [loop] [gratt]
+ n/proj nameproj nameobj.y_exp%x_exp [cut] [w_exp] [loop] [gratt]
+        for default use ! , loop=i1[:i2[:di]]
+  Related commands: projh1d projh2d projprof exptovec
+\end{verbatim} 
+\piacommand{n/scan} \label{nZscan} 
+\begin{verbatim} 
+Scan NTuple a la paw
+ n/scan nameobj[.exp1%exp2%exp3] cut loop
+               [-f:filename] [list_of_variables]
+  loop : iev1[:iev2[:diev]] or !
+  cut  : cut expression or 1. or !
+  list_of_variables : default is all variables
+                    : var1 var2 var3 ... varn
+                    : var1 : var2   (from var1 to var2)
+                    :  : var2   (from first variable to var2)
+                    : var1 :    (from var1 to last variable)
+                  ex: "v1 : v3 v7 v4 : v6 v2 v9 :"
+ exp1%exp2%exp3 :
+           if given add exp1,exp2,exp3 to the variable list
+ -f:filename : write into "filename", Default is to stdout
+\end{verbatim} 
+\piacommand{reset} \label{reset} 
+\begin{verbatim} 
+Reset histograms vectors or matrix
+ reset nameobj
+\end{verbatim} 
+\piacommand{v/deriv} \label{vZderiv} 
+\begin{verbatim} 
+Derivate a TVector / vector
+ v/deriv namevec [deriv_option]
+ deriv_option -1 replace v[i] with v[i]-v[i-1]
+               0 replace v[i] with (v[i+1]-v[i-1])/2 (default)
+              +1 replace v[i] with v[i+1]-v[i]
+  Related commands: h/integ h/deriv v/integ
+\end{verbatim} 
+\piacommand{v/integ} \label{vZinteg} 
+\begin{verbatim} 
+Integrate a TVector / vector
+ v/integ namevec [norm]
+ norm<=0 means no normalisation (def norm=0)
+  Related commands: h/integ h/deriv v/deriv
+\end{verbatim} 
