source: Sophya/trunk/SophyaLib/Manual/piahelp.tex@ 3847

Last change on this file since 3847 was 3839, checked in by ansari, 15 years ago

MAJ sophya.tex pour V2.2 en cours, Reza 09/08/2010

File size: 96.5 KB
Line 
1% ----- Liste des groupes de Help -----
2List of {\bf piapp} on-line Help groups:
3\begin{itemize}
4\item {\bf Commander } (p. \pageref{Commander})
5\item {\bf CxxExecutorCmd } (p. \pageref{CxxExecutorCmd})
6\item {\bf Expr. Arithmetic } (p. \pageref{ExprZZArithmetic})
7\item {\bf Expr. Plotting } (p. \pageref{ExprZZPlotting})
8\item {\bf External Modules } (p. \pageref{ExternalZModules})
9\item {\bf FFT } (p. \pageref{FFT})
10\item {\bf FileIO } (p. \pageref{FileIO})
11\item {\bf Fitting } (p. \pageref{Fitting})
12\item {\bf Func Plot } (p. \pageref{FuncZPlot})
13\item {\bf Graphic-Elts } (p. \pageref{GraphicZElts})
14\item {\bf GraphicExport } (p. \pageref{GraphicExport})
15\item {\bf Graphics } (p. \pageref{Graphics})
16\item {\bf Obj. Display } (p. \pageref{ObjZZDisplay})
17\item {\bf Object Management } (p. \pageref{ObjectZManagement})
18\item {\bf Objects } (p. \pageref{Objects})
19\item {\bf PIACmd } (p. \pageref{PIACmd})
20\item {\bf SkyMapCmd } (p. \pageref{SkyMapCmd})
21\item {\bf SophyaCmd } (p. \pageref{SophyaCmd})
22\item {\bf pawCmd } (p. \pageref{pawCmd})
23\end{itemize}
24\vspace*{10mm}
25% ----- Liste de toutes les commandes et help item -----
26\vspace{5mm}
27\begin{center}
28 \rule{2cm}{1mm} List of {\bf piapp} Help items \rule{2cm}{1mm} \\
29\vspace{3mm}
30\begin{tabular}{llllll}
31CExpEvaluator & p. \pageref{CExpEvaluator} & Commander & p. \pageref{Commander} & ObjectExpressions & p. \pageref{ObjectExpressions} \\
32PIConsole & p. \pageref{PIConsole} & PIDraw3DWdg & p. \pageref{PIDraw3DWdg} & PIImage & p. \pageref{PIImage} \\
33PIScDrawWdg & p. \pageref{PIScDrawWdg} & RPNEvaluator & p. \pageref{RPNEvaluator} & Windows & p. \pageref{Windows} \\
34autoiniranf & p. \pageref{autoiniranf} & exitpiapp & p. \pageref{exitpiapp} & helpfit & p. \pageref{helpfit} \\
35helpwindow & p. \pageref{helpwindow} & shell execute & p. \pageref{shellZexecute} & stop & p. \pageref{stop} \\
36\end{tabular}
37\end{center}
38\newpage
39\vspace{6mm}
40\begin{center}
41 \rule{2cm}{0.5mm} \makebox[60mm]{{ \bf Commander } help group} \rule{2cm}{0.5mm} \\
42\vspace{3mm}
43\begin{tabular}{llllll}
44CExpEvaluator & p. \pageref{CExpEvaluator} & Commander & p. \pageref{Commander} & RPNEvaluator & p. \pageref{RPNEvaluator} \\
45autoiniranf & p. \pageref{autoiniranf} & shell execute & p. \pageref{shellZexecute} & & \\
46\end{tabular}
47\end{center}
48\vspace{6mm}
49\begin{center}
50 \rule{2cm}{0.5mm} \makebox[60mm]{{ \bf CxxExecutorCmd } help group} \rule{2cm}{0.5mm} \\
51\vspace{3mm}
52\begin{tabular}{llllll}
53c++args & p. \pageref{cZZargs} & c++compile & p. \pageref{cZZcompile} & c++compileopt & p. \pageref{cZZcompileopt} \\
54c++create & p. \pageref{cZZcreate} & c++createfrf & p. \pageref{cZZcreatefrf} & c++declareomgvar & p. \pageref{cZZdeclareomgvar} \\
55c++exec & p. \pageref{cZZexec} & c++execfrf & p. \pageref{cZZexecfrf} & c++import & p. \pageref{cZZimport} \\
56c++include & p. \pageref{cZZinclude} & c++link & p. \pageref{cZZlink} & c++linkopt & p. \pageref{cZZlinkopt} \\
57c++mylibs & p. \pageref{cZZmylibs} & c++prtlevel & p. \pageref{cZZprtlevel} & & \\
58\end{tabular}
59\end{center}
60\vspace{6mm}
61\begin{center}
62 \rule{2cm}{0.5mm} \makebox[60mm]{{ \bf Expr. Arithmetic } help group} \rule{2cm}{0.5mm} \\
63\vspace{3mm}
64\begin{tabular}{llllll}
65eval & p. \pageref{eval} & & & & \\
66\end{tabular}
67\end{center}
68\vspace{6mm}
69\begin{center}
70 \rule{2cm}{0.5mm} \makebox[60mm]{{ \bf Expr. Plotting } help group} \rule{2cm}{0.5mm} \\
71\vspace{3mm}
72\begin{tabular}{llllll}
73ObjectExpressions & p. \pageref{ObjectExpressions} & expmeansig & p. \pageref{expmeansig} & exptovec & p. \pageref{exptovec} \\
74fillgd1 & p. \pageref{fillgd1} & fillgd2 & p. \pageref{fillgd2} & fillmtx & p. \pageref{fillmtx} \\
75fillnt & p. \pageref{fillnt} & fillvec & p. \pageref{fillvec} & gdfrvec & p. \pageref{gdfrvec} \\
76ntexpcfile & p. \pageref{ntexpcfile} & ntloop & p. \pageref{ntloop} & plot2d & p. \pageref{plot2d} \\
77plot2dc & p. \pageref{plot2dc} & plot2de & p. \pageref{plot2de} & plot2dvec & p. \pageref{plot2dvec} \\
78plot2dw & p. \pageref{plot2dw} & plot3d & p. \pageref{plot3d} & plot3dw & p. \pageref{plot3dw} \\
79projh1d & p. \pageref{projh1d} & projh2d & p. \pageref{projh2d} & projprof & p. \pageref{projprof} \\
80\end{tabular}
81\end{center}
82\vspace{6mm}
83\begin{center}
84 \rule{2cm}{0.5mm} \makebox[60mm]{{ \bf External Modules } help group} \rule{2cm}{0.5mm} \\
85\vspace{3mm}
86\begin{tabular}{llllll}
87call & p. \pageref{call} & link & p. \pageref{link} & linkff2 & p. \pageref{linkff2} \\
88loadmodule & p. \pageref{loadmodule} & & & & \\
89\end{tabular}
90\end{center}
91\vspace{6mm}
92\begin{center}
93 \rule{2cm}{0.5mm} \makebox[60mm]{{ \bf FFT } help group} \rule{2cm}{0.5mm} \\
94\vspace{3mm}
95\begin{tabular}{llllll}
96fftback & p. \pageref{fftback} & fftfilter & p. \pageref{fftfilter} & fftforw & p. \pageref{fftforw} \\
97fftfuncfilter & p. \pageref{fftfuncfilter} & & & & \\
98\end{tabular}
99\end{center}
100\vspace{6mm}
101\begin{center}
102 \rule{2cm}{0.5mm} \makebox[60mm]{{ \bf FileIO } help group} \rule{2cm}{0.5mm} \\
103\vspace{3mm}
104\begin{tabular}{llllll}
105arrtoascii & p. \pageref{arrtoascii} & fitsadapt & p. \pageref{fitsadapt} & mtxfrascii & p. \pageref{mtxfrascii} \\
106ntfrascii & p. \pageref{ntfrascii} & openfits & p. \pageref{openfits} & openppf & p. \pageref{openppf} \\
107print & p. \pageref{print} & rdfitsarr & p. \pageref{rdfitsarr} & readfits & p. \pageref{readfits} \\
108saveall & p. \pageref{saveall} & savefits & p. \pageref{savefits} & savelist & p. \pageref{savelist} \\
109saveobjs & p. \pageref{saveobjs} & saveppf & p. \pageref{saveppf} & scanfits & p. \pageref{scanfits} \\
110swfitstable & p. \pageref{swfitstable} & vecfrascii & p. \pageref{vecfrascii} & writefits & p. \pageref{writefits} \\
111\end{tabular}
112\end{center}
113\vspace{6mm}
114\begin{center}
115 \rule{2cm}{0.5mm} \makebox[60mm]{{ \bf Fitting } help group} \rule{2cm}{0.5mm} \\
116\vspace{3mm}
117\begin{tabular}{llllll}
118helpfit & p. \pageref{helpfit} & crfitfil & p. \pageref{crfitfil} & crfitfun & p. \pageref{crfitfun} \\
119fit & p. \pageref{fit} & fitlin & p. \pageref{fitlin} & fitw & p. \pageref{fitw} \\
120\end{tabular}
121\end{center}
122\vspace{6mm}
123\begin{center}
124 \rule{2cm}{0.5mm} \makebox[60mm]{{ \bf Func Plot } help group} \rule{2cm}{0.5mm} \\
125\vspace{3mm}
126\begin{tabular}{llllll}
127func & p. \pageref{func} & func2d & p. \pageref{func2d} & func2dff & p. \pageref{func2dff} \\
128funcff & p. \pageref{funcff} & & & & \\
129\end{tabular}
130\end{center}
131\vspace{6mm}
132\begin{center}
133 \rule{2cm}{0.5mm} \makebox[60mm]{{ \bf Graphic-Elts } help group} \rule{2cm}{0.5mm} \\
134\vspace{3mm}
135\begin{tabular}{llllll}
136addarc & p. \pageref{addarc} & addarca & p. \pageref{addarca} & addarrow & p. \pageref{addarrow} \\
137addaxelabels & p. \pageref{addaxelabels} & addcirc & p. \pageref{addcirc} & addctext & p. \pageref{addctext} \\
138addfarc & p. \pageref{addfarc} & addfarca & p. \pageref{addfarca} & addfcirc & p. \pageref{addfcirc} \\
139addfoval & p. \pageref{addfoval} & addfpoly & p. \pageref{addfpoly} & addfrect & p. \pageref{addfrect} \\
140addline & p. \pageref{addline} & addmarker & p. \pageref{addmarker} & addoval & p. \pageref{addoval} \\
141addpoly & p. \pageref{addpoly} & addrect & p. \pageref{addrect} & addtext & p. \pageref{addtext} \\
142addtitle & p. \pageref{addtitle} & setaxelabels & p. \pageref{setaxelabels} & settitle & p. \pageref{settitle} \\
143\end{tabular}
144\end{center}
145\vspace{6mm}
146\begin{center}
147 \rule{2cm}{0.5mm} \makebox[60mm]{{ \bf GraphicExport } help group} \rule{2cm}{0.5mm} \\
148\vspace{3mm}
149\begin{tabular}{llllll}
150imagcmap2eps & p. \pageref{imagcmap2eps} & imagcmap2ps & p. \pageref{imagcmap2ps} & psclosefile & p. \pageref{psclosefile} \\
151psgetfilename & p. \pageref{psgetfilename} & pssetfilename & p. \pageref{pssetfilename} & w2eps & p. \pageref{w2eps} \\
152w2ps & p. \pageref{w2ps} & wdg2rgb & p. \pageref{wdg2rgb} & win2rgb & p. \pageref{win2rgb} \\
153\end{tabular}
154\end{center}
155\vspace{6mm}
156\begin{center}
157 \rule{2cm}{0.5mm} \makebox[60mm]{{ \bf Graphics } help group} \rule{2cm}{0.5mm} \\
158\vspace{3mm}
159\begin{tabular}{llllll}
160PIConsole & p. \pageref{PIConsole} & PIDraw3DWdg & p. \pageref{PIDraw3DWdg} & PIImage & p. \pageref{PIImage} \\
161PIScDrawWdg & p. \pageref{PIScDrawWdg} & Windows & p. \pageref{Windows} & drpanel & p. \pageref{drpanel} \\
162graphicatt & p. \pageref{graphicatt} & newwin & p. \pageref{newwin} & setaxesatt & p. \pageref{setaxesatt} \\
163setdefafsz & p. \pageref{setdefafsz} & setinsetlimits & p. \pageref{setinsetlimits} & stacknext & p. \pageref{stacknext} \\
164zone & p. \pageref{zone} & & & & \\
165\end{tabular}
166\end{center}
167\vspace{6mm}
168\begin{center}
169 \rule{2cm}{0.5mm} \makebox[60mm]{{ \bf Obj. Display } help group} \rule{2cm}{0.5mm} \\
170\vspace{3mm}
171\begin{tabular}{llllll}
172bargraph & p. \pageref{bargraph} & contour & p. \pageref{contour} & disp & p. \pageref{disp} \\
173gfd2d & p. \pageref{gfd2d} & gfd3d & p. \pageref{gfd3d} & imag & p. \pageref{imag} \\
174imagnav & p. \pageref{imagnav} & nt2d & p. \pageref{nt2d} & nt2dci & p. \pageref{nt2dci} \\
175nt2dcn & p. \pageref{nt2dcn} & nt2dvec & p. \pageref{nt2dvec} & nt3d & p. \pageref{nt3d} \\
176ntcont & p. \pageref{ntcont} & pirgbdisp & p. \pageref{pirgbdisp} & surf & p. \pageref{surf} \\
177textdrawer & p. \pageref{textdrawer} & vecplot & p. \pageref{vecplot} & & \\
178\end{tabular}
179\end{center}
180\vspace{6mm}
181\begin{center}
182 \rule{2cm}{0.5mm} \makebox[60mm]{{ \bf Object Management } help group} \rule{2cm}{0.5mm} \\
183\vspace{3mm}
184\begin{tabular}{llllll}
185cd & p. \pageref{cd} & copy & p. \pageref{copy} & cp & p. \pageref{cp} \\
186del & p. \pageref{del} & delobjs & p. \pageref{delobjs} & listdirs & p. \pageref{listdirs} \\
187listobjs & p. \pageref{listobjs} & ls & p. \pageref{ls} & mkdir & p. \pageref{mkdir} \\
188mv & p. \pageref{mv} & pwd & p. \pageref{pwd} & rename & p. \pageref{rename} \\
189rm & p. \pageref{rm} & rmdir & p. \pageref{rmdir} & setdiratt & p. \pageref{setdiratt} \\
190\end{tabular}
191\end{center}
192\vspace{6mm}
193\begin{center}
194 \rule{2cm}{0.5mm} \makebox[60mm]{{ \bf Objects } help group} \rule{2cm}{0.5mm} \\
195\vspace{3mm}
196\begin{tabular}{llllll}
197line2nt & p. \pageref{line2nt} & line2vec & p. \pageref{line2vec} & newdt & p. \pageref{newdt} \\
198newgfd & p. \pageref{newgfd} & newh1d & p. \pageref{newh1d} & newh2d & p. \pageref{newh2d} \\
199newmtx & p. \pageref{newmtx} & newnt & p. \pageref{newnt} & newprof & p. \pageref{newprof} \\
200newprofe & p. \pageref{newprofe} & newvec & p. \pageref{newvec} & ntcol2var & p. \pageref{ntcol2var} \\
201ntline2var & p. \pageref{ntline2var} & objaoper & p. \pageref{objaoper} & vec2var & p. \pageref{vec2var} \\
202\end{tabular}
203\end{center}
204\vspace{6mm}
205\begin{center}
206 \rule{2cm}{0.5mm} \makebox[60mm]{{ \bf PIACmd } help group} \rule{2cm}{0.5mm} \\
207\vspace{3mm}
208\begin{tabular}{llllll}
209exitpiapp & p. \pageref{exitpiapp} & helpwindow & p. \pageref{helpwindow} & stop & p. \pageref{stop} \\
210\end{tabular}
211\end{center}
212\vspace{6mm}
213\begin{center}
214 \rule{2cm}{0.5mm} \makebox[60mm]{{ \bf SkyMapCmd } help group} \rule{2cm}{0.5mm} \\
215\vspace{3mm}
216\begin{tabular}{llllll}
217alm2cl & p. \pageref{alm2cl} & alm2map & p. \pageref{alm2map} & cl2llcl & p. \pageref{cl2llcl} \\
218cl2map & p. \pageref{cl2map} & clmean & p. \pageref{clmean} & clmult & p. \pageref{clmult} \\
219clop & p. \pageref{clop} & clrebin & p. \pageref{clrebin} & crmapmask & p. \pageref{crmapmask} \\
220crmaskfrmap & p. \pageref{crmaskfrmap} & map2alm & p. \pageref{map2alm} & map2cl & p. \pageref{map2cl} \\
221map2double & p. \pageref{map2double} & map2float & p. \pageref{map2float} & map2local & p. \pageref{map2local} \\
222map2map & p. \pageref{map2map} & mapcover & p. \pageref{mapcover} & mapmult & p. \pageref{mapmult} \\
223mapop & p. \pageref{mapop} & maproj & p. \pageref{maproj} & mapstat & p. \pageref{mapstat} \\
224maskmap & p. \pageref{maskmap} & resol2szidx & p. \pageref{resol2szidx} & settypemap & p. \pageref{settypemap} \\
225szidx2resol & p. \pageref{szidx2resol} & typemap & p. \pageref{typemap} & & \\
226\end{tabular}
227\end{center}
228\vspace{6mm}
229\begin{center}
230 \rule{2cm}{0.5mm} \makebox[60mm]{{ \bf SophyaCmd } help group} \rule{2cm}{0.5mm} \\
231\vspace{3mm}
232\begin{tabular}{llllll}
233errorellipse & p. \pageref{errorellipse} & mollgrid & p. \pageref{mollgrid} & setprjmoldefval & p. \pageref{setprjmoldefval} \\
234\end{tabular}
235\end{center}
236\vspace{6mm}
237\begin{center}
238 \rule{2cm}{0.5mm} \makebox[60mm]{{ \bf pawCmd } help group} \rule{2cm}{0.5mm} \\
239\vspace{3mm}
240\begin{tabular}{llllll}
241h/2d/geth & p. \pageref{hZ2dZgeth} & h/cadd & p. \pageref{hZcadd} & h/cmult & p. \pageref{hZcmult} \\
242h/copy & p. \pageref{hZcopy} & h/deriv & p. \pageref{hZderiv} & h/err & p. \pageref{hZerr} \\
243h/get\_vec & p. \pageref{hZgetZvec} & h/integ & p. \pageref{hZinteg} & h/oper & p. \pageref{hZoper} \\
244h/plot/2d & p. \pageref{hZplotZ2d} & h/put\_vec & p. \pageref{hZputZvec} & h/rebin & p. \pageref{hZrebin} \\
245h/set/cont & p. \pageref{hZsetZcont} & h/set/err & p. \pageref{hZsetZerr} & herr/mean & p. \pageref{herrZmean} \\
246herr/variance & p. \pageref{herrZvariance} & n/assoc/col & p. \pageref{nZassocZcol} & n/copy & p. \pageref{nZcopy} \\
247n/merge & p. \pageref{nZmerge} & n/merge/col & p. \pageref{nZmergeZcol} & n/pl & p. \pageref{nZpl} \\
248n/plot & p. \pageref{nZplot} & n/proj & p. \pageref{nZproj} & n/read & p. \pageref{nZread} \\
249n/scan & p. \pageref{nZscan} & reset & p. \pageref{reset} & v/deriv & p. \pageref{vZderiv} \\
250v/integ & p. \pageref{vZinteg} & v/sort & p. \pageref{vZsort} & & \\
251\end{tabular}
252\end{center}
253% ----- Liste des commandes dans chaque groupe -----
254\newpage
255\subsection{Commander} \label{Commander}
256Basic (generic) interpreter (class SOPHYA::Commander) builtin commands
257 \\[2mm] \noindent
258\piahelpitem{CExpEvaluator} \label{CExpEvaluator}
259\begin{verbatim}
260> Evaluation of C-like expression (used in V = C-like-Expression)
261 >>> Arithmetic operators, parenthesis ( + - * / )
262 >>> Functions : sqrt fabs floor hypot
263 ... exp log log10 pow ; sinh cosh tanh
264 ... sin cos tan asin acos atan atan2
265 ... rand01() randpm1() gaurand()
266 >>> Constants : Pi = M_PI E = M_E
267 Example: x = 5.*(2.+sin(0.3*Pi))
268\end{verbatim}
269\piahelpitem{Commander} \label{Commander}
270\begin{verbatim}
271>>> (Commander) Interpreter's keywords :
272 > set varname string # To set a variable, $varname
273 > unset varname # clear variable definition
274 > rpneval varname RPNExpression # Reverse Polish Notation evaluation
275 > varname = ArithmeticExpression # C-like Expression evaluation
276 > varname = 'String' # Set variable vname
277 > var2words varname wordvarname [sep] # to break varname into words
278 > echo string # output string
279 > echo2file filename string # Append the string to the specified file
280 > alias name string # define a command alias
281 > foreach varname ( string-list ) # Loop
282 > for varname i1:i2[:di] # Integer loop
283 > for varname f1:f2[:df] # Float loop
284 > forinfile varname FileName # Loop over lines in file
285 > end # end loops
286 > if ( test ) then # Conditional test : a == != < > <= >= b
287 > else # Conditional
288 > endif # End of conditional if bloc
289 > break # Delete (clears) all test and loop blocs
290 > return # Stops command execution from a file
291 > defscript endscript # Command script definition
292 > listvars # List of variable names and values
293 > listalias # List of alias names and values
294 > listcommands # List of all known commands
295 > listscripts # List of all known scripts
296 > clearcript # Clear a script definition
297 > thrlist # List of command execution threads (& as the last character)
298 > clearthrlist # Removes finished threads from the list
299 > killthr Id # Try to stop a given thread (ThrId=id) by sending SIGUSR1
300 > cancelthr Id # Try to cancel a given thread (ThrId=id)
301 > waitthr # Waits until all active threads have finished (join())
302 > exec filename # Execute commands from file
303 > help <command_name> # <command_name> usage info
304 > sleep nsec # sleep nsec seconds
305 > readstdin varname # reads a line from stdin into $varname
306 > timingon timingoff traceon traceoff
307
308\end{verbatim}
309\piahelpitem{RPNEvaluator} \label{RPNEvaluator}
310\begin{verbatim}
311 Reverse Polish Notation (HP calculator like) expression evaluation
312 >> Stack:
313 ... (4) (3) z=(2) y=(1) x=(0)=Stack.Top()
314 >> Examples:
315 - sin(PI/6): pi 6 / sin
316 - 1*2*...*5: 1 2 3 4 5 product
317 - x=x+y: x = $x $y *
318 >>> Stack operations :
319 print x<>y pop push (duplicate x)
320 >>> Constants (Cst pushed to stack):
321 pi e
322 >>> Arithmetic operators (x,y) --> x@y
323 + - * / % ( (int)y % (int)x )
324 >>> F(X): x --> F(x)
325 chs sqrt sq log log10 exp
326 fabs floor ceil
327 cos sin tan acos asin atan deg2rad rad2deg
328 >>> F(X,Y): (x,y) --> F(x,y)
329 pow atan2
330 >>> F(): random number generators
331 rand (flat 0..1) norand (normal/gaussian)
332 >>> Stack sum/product/mean/sigma/sigma^2
333 sum product mean sigma sigma2 sigmean (y->sigma x->mean)
334
335\end{verbatim}
336\piahelpitem{autoiniranf} \label{autoiniranf}
337\begin{verbatim}
338> Automatic random number generator initialisation
339 by AutoInitRand(int lp)
340 Usage: autoiniranf
341\end{verbatim}
342\piahelpitem{shell execute} \label{shellZexecute}
343\begin{verbatim}
344> shell command_string # Execute shell command
345> cshell command_string # Execute cshell command
346---Examples:
347 > shell ls
348 > cshell echo '$LD_LIBRARY_PATH'; map2cl -h; ls
349 > shell myfile.csh [arg1] [arg2] [...]
350 (where the first line of "myfile.csh" is "#!/bin/csh")
351
352\end{verbatim}
353\subsection{CxxExecutorCmd} \label{CxxExecutorCmd}
354Commands for c++ codelt on the fly compilation and execution
355 \\[2mm] \noindent
356\piacommand{c++args} \label{cZZargs}
357\begin{verbatim}
358c++args: Define user function arguments for c++exec and c++execfrf
359Usage: c++args arg1 arg2 arg3 ...
360 c++args -? : give current arguments
361 c++args : reset current arguments
362\end{verbatim}
363\piacommand{c++compile} \label{cZZcompile}
364\begin{verbatim}
365c++compile: compile a file (file.cc -> file.so)
366Usage: c++compile file
367Warning: give "file" or "file.so" to create "file.so" from "file.cc"
368 : to be used before c++link
369\end{verbatim}
370\piacommand{c++compileopt} \label{cZZcompileopt}
371\begin{verbatim}
372c++compileopt: add personnal compile options
373Usage: c++compileopt -g -O5 -IMy_Inc_Dir ...
374 c++compileopt -? : list current additionnal compile options
375 c++compileopt : reset to no additionnal compile options
376Warning: to be used before c++create c++compile c++exec ...
377\end{verbatim}
378\piacommand{c++create} \label{cZZcreate}
379\begin{verbatim}
380c++create: create a file "file.cc" to be used by spiapp
381Usage: c++create file.cc func c++ user code...
382
383\end{verbatim}
384\piacommand{c++createfrf} \label{cZZcreatefrf}
385\begin{verbatim}
386c++createfrf: create a file "file.cc" to be used by spiapp
387 with a user file code "fileuser.cc"
388 and an optional user function code "fileuserfct.cc"
389Usage: c++createfrf file.cc func fileuser.cc [fileuserfct.cc]
390
391\end{verbatim}
392\piacommand{c++declareomgvar} \label{cZZdeclareomgvar}
393\begin{verbatim}
394c++declareomgvar: Activate/Deactivate ObjectManager variables declaration
395Usage: c++declareomgvar [false/true]
396 if true, the ObjectManager variables are declared as $varname
397 no arguments: display the current status of the flag (default=false
398
399\end{verbatim}
400\piacommand{c++exec} \label{cZZexec}
401\begin{verbatim}
402c++exec: Execute the following c++ user code
403Usage: c++exec c++ user code
404Warning: c++ user code can be found in "TmpDir/cxx_spiapp.h"
405 total generated code can be found in "TmpDir/cxx_spiapp.cc"
406\end{verbatim}
407\piacommand{c++execfrf} \label{cZZexecfrf}
408\begin{verbatim}
409c++execfrf: Execute c++ user_code [user_function_code]
410Usage: c++execfrf fileuser.cc [fileuserfct.cc]
411Warning: total generated code can be found in "TmpDir/cxx_spiapp.cc"
412\end{verbatim}
413\piacommand{c++import} \label{cZZimport}
414\begin{verbatim}
415c++import: Sophya additionnal modules to be use in C++ executor
416Usage: c++import module1 ... : set list of modules to be used by executor
417 c++import all : set all modules known by executor
418 c++import : reset to no additionnal module
419 c++import -? : list modules currently used in executor
420 c++import -?? : list of available modules for executor
421Warning: to be used before c++create c++compile c++exec ...
422\end{verbatim}
423\piacommand{c++include} \label{cZZinclude}
424\begin{verbatim}
425c++include: add personnal includes to be used by executor
426Usage: c++include myinc1.h myinc2.h ...
427 c++include -? : list current additionnal include files
428 c++include : reset to no additionnal include files
429Warning: to be used before c++create c++compile c++exec...
430\end{verbatim}
431\piacommand{c++link} \label{cZZlink}
432\begin{verbatim}
433c++link: link function "func" in file.so to spiapp
434Usage: c++link file.so func
435\end{verbatim}
436\piacommand{c++linkopt} \label{cZZlinkopt}
437\begin{verbatim}
438c++linkopt: add personnal link options
439Usage: c++linkopt -g -O5 ...
440 c++linkopt -? : list current additionnal link options
441 c++linkopt : reset to no additionnal link options
442Warning: to be used before c++create c++compile c++exec ...
443\end{verbatim}
444\piacommand{c++mylibs} \label{cZZmylibs}
445\begin{verbatim}
446c++mylibs: add personnal libraries
447Usage: c++mylibs -LMy_Lib_Dir -lmylib1 -lmylib2 ...
448 c++mylibs -? : list current additionnal libraries
449 c++mylibs : reset to no additionnal libraries
450Warning: to be used before c++create c++compile c++exec ...
451\end{verbatim}
452\piacommand{c++prtlevel} \label{cZZprtlevel}
453\begin{verbatim}
454c++prtlevel: Print level
455Usage: c++prtlevel prtlevel
456 prtlevel=0 : minimum printing
457 prtlevel=1 : + compiler/linker output
458 prtlevel=2 : + full infos (default)
459\end{verbatim}
460\subsection{Expr. Arithmetic} \label{ExprZZArithmetic}
461\noindent
462\piacommand{eval} \label{eval}
463\begin{verbatim}
464Compute arithmetic expression
465
466 Usage: eval resultvarname arithmetic expression....
467 resultvarname: store result in variable resultvarname
468 - If first character is not alphabetic, just print result
469 arithmetic expression:
470 ex: x + sqrt(y)+z +3.14 (x,y,z are variables)
471 ex: $x + sqrt($y)+$z +3.14 (x,y,z are variables)
472 ex: 360 * M_PI / 180.
473\end{verbatim}
474\subsection{Expr. Plotting} \label{ExprZZPlotting}
475Compute and plot various (c-syntax) expressions of objects
476Objects are seen as list of structures (n-tuples)
477See ObjectExpressions help item for a list of structure
478fields for the different classes managed by piapp
479 \\[2mm] \noindent
480\piahelpitem{ObjectExpressions} \label{ObjectExpressions}
481\begin{verbatim}
482Any mathematical expression (math.h) with object variables can be used
483 ------ Object Variable names (double) --------
484 (_nl is the table line number or the sequential index)
485- NTuple: ntuple variable names,_nl
486- Histo1D/HProf: i,x,val,err,nb,_nl
487- Histo2D: i,j,x,y,val,err,_nl
488- HistoErr: i,x,val,err2,nb,_nl
489- Histo2DErr: i,j,x,y,val,err2,nb,_nl
490- Vector/Matrix/Image: n,r,c,val,real,imag,mod,phas,_nl
491- TArray: n,x,y,z,t,u,val,real,imag,mod,phas,_nl
492- GeneralFitData: x0,ex0 x1,ex1 ... xn,exn y,ey ok ,_nl
493- SphereThetaPhi/SphereHEALPix/SphereECP/LocalMap:
494- i,k,val,real,imag,mod,phas,teta,phi,_nl
495- FITS Binary/ASCII table: fits column names,_nl
496 ------ Other parameters --------
497Loop parameters can be specified as I1[:I2[:DI]] for(int i=I1; i<I2; i+=DI)
498The default Cut() expression in true (=1) for all
499
500 Related commands: plot2d plot2de plot2dw plot3d plot3dw
501 projh1d projh2d projprof fillvec fillmtx
502 fillnt fillgd1 fillgd2 ntloop exptovec ...
503\end{verbatim}
504\piacommand{expmeansig} \label{expmeansig}
505\begin{verbatim}
506Computes Mean/Sigma (+Min/Max) for an expression X=f(Object)
507 Usage: expmeansig nameobj f_X() [Cut() loop_param]
508 Related commands: exptovec ntloop fillnt ObjectExpressions ...
509\end{verbatim}
510\piacommand{exptovec} \label{exptovec}
511\begin{verbatim}
512Creates and Fills a Vector with X=f(Object)
513 Usage: exptovec namevec nameobj f_X() [Cut() graphic_attributes loop_param]
514 Related commands: ntloop fillnt ObjectExpressions ...
515\end{verbatim}
516\piacommand{fillgd1} \label{fillgd1}
517\begin{verbatim}
518Creates and Fills a GeneralFitData with (X=f(Object), Y=g(...), ErrY=h(...))
519 Usage: fillgd1 namegfd nameobj f_X() g_Y() h_ErrY() [Cut() loop_param]
520 Related commands: ntloop fillnt ObjectExpressions ...
521\end{verbatim}
522\piacommand{fillgd2} \label{fillgd2}
523\begin{verbatim}
524Creates and Fills a GeneralFitData with (X=f(Object), Y=g(...), Z=h(...)) ErrZ=k(...)
525 Usage: fillgd1 namegfd nameobj f_X() g_Y() h_Z() k_ErrZ() [Cut() loop_param]
526 Related commands: ntloop fillnt ObjectExpressions ...
527\end{verbatim}
528\piacommand{fillmtx} \label{fillmtx}
529\begin{verbatim}
530Fills a Matrix M(Line=g_Y(Object)+0.5, Col=f_X(Object)+0.5)) = h_V(Object)
531 Usage: fillmtx namevec nameobj f_X() g_Y() h_V() [Cut() graphic_attributes loop_param]
532 Related commands: fillvec fillnt ObjectExpressions ...
533\end{verbatim}
534\piacommand{fillnt} \label{fillnt}
535\begin{verbatim}
536Creates and Fills an NTuple(x,y,z,t) with (X=f(Object),Y=g(...),Z=h(...),T=k(...))
537 Usage: fillnt nameobj f_X() g_Y() h_Z() k_T() [Cut() nameNt loop_param]
538 Related commands: ntloop plot2d projh1d projh2d projprof
539 Related commands: fillvec fillmtx ntloop exptovec fillgd1 fillgd2 ObjectExpressions ...
540\end{verbatim}
541\piacommand{fillvec} \label{fillvec}
542\begin{verbatim}
543Fills a Vector V((int)(f_X(Object)+0.5)) = h_V(Object)
544 Usage: fillvec namevec nameobj f_X() h_V() [Cut() graphic_attributes loop_param]
545 Related commands: fillmtx fillnt ObjectExpressions ...
546\end{verbatim}
547\piacommand{gdfrvec} \label{gdfrvec}
548\begin{verbatim}
549Fills a GeneralFitData with vectors X,Y,Z,EZ
550 Usage: gdfrvec namegfd X Y
551 Usage: gdfrvec namegfd X Y ! EY
552 Usage: gdfrvec namegfd X Y Z
553 Usage: gdfrvec namegfd X Y Z EZ
554 Related commands: fillgd1 fillgd2 ...
555\end{verbatim}
556\piacommand{ntexpcfile} \label{ntexpcfile}
557\begin{verbatim}
558Creates a C-File with declarations suitable to be used for ntloop
559 Usage: ntexpcfile nameobj CFileName FuncName
560 Related commands: ntloop
561\end{verbatim}
562\piacommand{ntloop} \label{ntloop}
563\begin{verbatim}
564Loops over an Object NTupleInterface calling a function from a C-file
565and optionaly fills an NTuple(x,y,z,t) with (X=f(Object),Y=g(...),Z=h(...),T=k(...))
566 Usage: ntloop nameobj CFileName FuncName [NtupleName loop_param]
567 Related commands: fillvec fillmtx fillnt fillgd1 fillgd2 exptovec ObjectExpressions ...
568 Related commands: ntexpcfile fillnt
569\end{verbatim}
570\piacommand{plot2d} \label{plot2d}
571\begin{verbatim}
572Plots (2D) Y=g(Object) vs. X=f(Object) --- Object Variable names (double) :
573 Usage: plot2d nameobj f_X() g_Y() [f_Cut() graphic_attributes loop_param]
574 Related commands: plot2de plot2dw plot3d plot3dw ObjectExpressions ...
575\end{verbatim}
576\piacommand{plot2dc} \label{plot2dc}
577\begin{verbatim}
578Plots (2D) Y=g(Object) vs. X=f(Object) with Color ColIndex=h(Object)
579 Usage: plot2dc nameobj f_X() g_Y() h_Col() [Cut() graphic_attributes loop_param]
580 Related commands: plot2d plot2dw plot3d ObjectExpressions ...
581\end{verbatim}
582\piacommand{plot2de} \label{plot2de}
583\begin{verbatim}
584Plots (2D) Y=g(Object) vs. X=f(Object) with error bars eX/Y=f_ErrX/Y(Object)
585 Usage: plot2de nameobj f_X() g_Y() f_ErrX() f_ErrY() [f_Cut() graphic_attributes loop_param]
586 Related commands: plot2d plot2dw plot3d ObjectExpressions ...
587\end{verbatim}
588\piacommand{plot2dvec} \label{plot2dvec}
589\begin{verbatim}
590Creates and displays a flow chart from ntuple expressions
591 Usage: plot2dvec ntuple expx expy expvx expvy [cut graphic_att loop_par]
592\end{verbatim}
593\piacommand{plot2dw} \label{plot2dw}
594\begin{verbatim}
595Plots (2D) Y=g(Object) vs. X=f(Object) with Weight W=h(Object)
596 Usage: plot2dw nameobj f_X() g_Y() h_Wt() [Cut() graphic_attributes loop_param]
597 Related commands: plot2d plot2dc plot3d ObjectExpressions ...
598\end{verbatim}
599\piacommand{plot3d} \label{plot3d}
600\begin{verbatim}
601Plots (3D) Z=h(Object) vs. Y=g(Object) vs. X=f(Object)
602 Usage: plot3d nameobj f_X() g_Y() h_Z() [Cut() graphic_attributes loop_param]
603 Related commands: plot2d plot2de plot3dw ObjectExpressions ...
604\end{verbatim}
605\piacommand{plot3dw} \label{plot3dw}
606\begin{verbatim}
607Plots (3D) Z=h(Object) vs. Y=g(Object) vs. X=f(Object) with Weight W=k(Object)
608 Usage: plot3d nameobj f_X() g_Y() h_Z() k_Wt() [Cut() graphic_attributes loop_param]
609 Related commands: plot2d plot2dw plot3d ObjectExpressions ...
610\end{verbatim}
611\piacommand{projh1d} \label{projh1d}
612\begin{verbatim}
613Projects X=f(Object) with weight WT=h(Object) into a 1D histogram
614 Usage: projh1d nameh1d nameobj f_X() [h_WT()=1. Cut() graphic_attributes loop_param]
615 Histo1D nameh1d is created if necessary
616 Related commands: projh2d projprof ObjectExpressions ...
617\end{verbatim}
618\piacommand{projh2d} \label{projh2d}
619\begin{verbatim}
620Projects (X=f(Object),Y=g(Object)) with weight WT=h(Object) into a 2D histogram
621 Usage: projh2d nameh2d nameobj f_X() g_Y() [h_WT()=1. Cut() graphic_attributes loop_param]
622 Histo2D nameh2d is created if necessary
623 Related commands: projh1d projprof ObjectExpressions ...
624\end{verbatim}
625\piacommand{projprof} \label{projprof}
626\begin{verbatim}
627Projects (X=f(Object),Y=g(Object)) with weight WT=h(Object) into a profile histogram
628 Usage: projprof nameprof nameobj f_X() g_Y() [h_WT()=1. Cut() graphic_attributes loop_param]
629 HProf nameprof is created if necessary
630 Related commands: projh1d projh2d ObjectExpressions ...
631\end{verbatim}
632\subsection{External Modules} \label{ExternalZModules}
633Dynmamic shared library load (DLL) and external (add-on) module management
634 \\[2mm] \noindent
635\piacommand{call} \label{call}
636\begin{verbatim}
637Dynamically linked user function call
638 Usage: call userf [arg1 arg2 ...]
639 User function : f(vector<string>& args)
640 Related commands: link
641\end{verbatim}
642\piacommand{link} \label{link}
643\begin{verbatim}
644Dynamic linking of compiled user functions
645 Usage: link fnameso f1 [f2 f3]
646 fnameso: Shared-object file name, f1,f2,f3 : User function names
647 Related commands: call loadmodule linkff2
648\end{verbatim}
649\piacommand{linkff2} \label{linkff2}
650\begin{verbatim}
651Dynamic linking of compiled user functions (Set 2)
652 Usage: linkff2 fnameso f1 [f2 f3]
653 fnameso: Shared-object file name, f1,f2,f3 : User function names
654 Related commands: call link loadmodule
655\end{verbatim}
656\piacommand{loadmodule} \label{loadmodule}
657\begin{verbatim}
658To load and initialize modules
659 Usage: loadmodule fnameso modulename
660 Related commands: link
661\end{verbatim}
662\subsection{FFT} \label{FFT}
663\noindent
664\piacommand{fftback} \label{fftback}
665\begin{verbatim}
666FFT on a vector -> computes backward Fourier transform
667 Usage: fftback vecSpec vecSig [graphic_att] [C/Z]
668 vecSig = FFTBackward(vecSpec)
669 vecSpec: Input data vector of type complex<r_8>
670 vecSig: Output Data vector of type r_8 (default)
671 or complex<r_8> if C/Z specified or
672 vecSpec computed by fftforw on a complex vector
673 See also : fftforw fftfilter fftfuncfilter
674\end{verbatim}
675\piacommand{fftfilter} \label{fftfilter}
676\begin{verbatim}
677Filter (multiply) vecSpec (vector complex<r_8>) by Filter (vector<r_8>)
678 Usage: fftfilter vecSpec FilterVec vecFiltSpec [graphic_att]
679 vecFiltSpec(i) = vecSpec(i) * complex(FilterVec(i),0)
680 See also : fftforw fftbackw fftfuncfilter
681\end{verbatim}
682\piacommand{fftforw} \label{fftforw}
683\begin{verbatim}
684FFT on a vector -> computes forward Fourier transform
685 Usage: fftforw vecSig vecSpec [graphic_att]
686 vecSpec = FFTForward(vecSig)
687 vecSig: Input data vector of type r_8 or complex<r_8>
688 vecSpec: Output data vector of type complex<r_8>
689 See also : fftback fftfilter fftfuncfilter
690\end{verbatim}
691\piacommand{fftfuncfilter} \label{fftfuncfilter}
692\begin{verbatim}
693Filter (multiply) vecSpec (vector complex<r_8>) by FilterFunc(i)
694 Usage: fftfilter vecSpec FilterFunc vecFiltSpec [graphic_att]
695 vecFiltSpec(i) = vecSpec(i) * complex(FilterFunc(i),0)
696 See also : fftforw fftbackw fftfilter
697\end{verbatim}
698\subsection{FileIO} \label{FileIO}
699\noindent
700\piacommand{arrtoascii} \label{arrtoascii}
701\begin{verbatim}
702Writes an array (TArray<T>) to an ASCII file
703 Usage: arrtoascii array_name file_name
704 Related commands: mtxfrascii vecfrascii ntfrascii
705\end{verbatim}
706\piacommand{fitsadapt} \label{fitsadapt}
707\begin{verbatim}
708fitsadapt: NTuple adaptor for Binary and ASCII Fits table
709Usage: fitsadapt fitsfile [nomobj hdu buflen[,bufsens,lp]]
710 fitsfile : Fits file name
711 nomobj : Object name (needed if file name misleading as C++ variable)
712 hdu : Fits HDU (if <=0 take first binary/ascii table)
713 buflen[,bufsens,lp] : buffer length (sens) for fits reading (default is 100,1,0)
714 See also scanfits writefits readfits
715\end{verbatim}
716\piacommand{mtxfrascii} \label{mtxfrascii}
717\begin{verbatim}
718Reads a matrix from an ASCII file (TMatrix<r_8>)
719 Usage: mtxfrascii mtx_name file_name [CommChar Separator]
720 Related commands: arrtoascii vecfrascii ntfrascii
721\end{verbatim}
722\piacommand{ntfrascii} \label{ntfrascii}
723\begin{verbatim}
724Fills an existing NTuple or DataTable from ASCII table file
725 Usage: ntfrascii nt_name file_name [def_init_val]
726 Related commands: ntloop fillnt
727\end{verbatim}
728\piacommand{openfits} \label{openfits}
729\begin{verbatim}
730openfits: alias for readfits
731
732\end{verbatim}
733\piacommand{openppf} \label{openppf}
734\begin{verbatim}
735Reads all or some objects from a PPF file
736 Usage: (1) openppf filename
737 Or (2) openppf -s filename (2)
738 Or (3) openppf filename objname1 [ objname2 ...]
739 The first form reads all objects at NameTags,
740 or all objects if the file has no NameTags.
741 The third reads only the objects with the specified nametags
742 Related commands: saveppf saveall savelist
743\end{verbatim}
744\piacommand{print} \label{print}
745\begin{verbatim}
746Prints an object
747 Usage: print nameobj [prtlev]
748 prtlev = 0,1,2... default: prtlev=0
749\end{verbatim}
750\piacommand{rdfitsarr} \label{rdfitsarr}
751\begin{verbatim}
752rdfitsarr: Read a single IMAGE HDU of a fits file as an array
753Usage: rdfitsarr FileName [arrType=D] [num_hdu=1] [arrName] [compd]
754 ArrType= I/L/F/D: Array data type (int_4, int_8, r_4, r_8)
755 compd : call array.CompactTrailingDimensions()
756See also readfits
757\end{verbatim}
758\piacommand{readfits} \label{readfits}
759\begin{verbatim}
760readfits: Read one or all HDU's of a fits file
761Usage: readfits [-nobsz] FileName [num_hdu]
762 num_hdu=1,..,NbHDU (uses FitsManager)
763 -nobsz: Ignore HDU BSCALE/BZERO values -> BSCALE=1, BZERO=0
764See also rdfitsarr scanfits writefits fitsadapt swfitstable
765\end{verbatim}
766\piacommand{saveall} \label{saveall}
767\begin{verbatim}
768Saves all objects into a PPF file
769 Usage: saveall filename
770 Related commands: saveobj savelist openppf
771\end{verbatim}
772\piacommand{savefits} \label{savefits}
773\begin{verbatim}
774savefits: alias for writefits
775
776\end{verbatim}
777\piacommand{savelist} \label{savelist}
778\begin{verbatim}
779
780 Usage: savelist objname1 [objname2 ...] filename
781 Related commands: saveobj openppf
782\end{verbatim}
783\piacommand{saveobjs} \label{saveobjs}
784\begin{verbatim}
785Saves objects with names matching a pattern into a
786 PPF file (pattern: x?y*) - Alias saveppf
787Usage: saveobjs nameobjpattern filename
788 Related commands: saveppf savelist saveall openppf
789\end{verbatim}
790\piacommand{saveppf} \label{saveppf}
791\begin{verbatim}
792Saves objects with names matching a pattern into a
793 PPF file (pattern: x?y*) - Alias saveppf
794Usage: saveppf nameobjpattern filename
795 Related commands: saveobjs savelist saveall openppf
796\end{verbatim}
797\piacommand{scanfits} \label{scanfits}
798\begin{verbatim}
799scanfits: scan fits files and print information on each HDU
800Usage: scanfits FileName [slev=0...3]
801slev=1,3: header keywords , slev=2,3: try to read each HDU
802See also: readfits writefits fitsadapt
803\end{verbatim}
804\piacommand{swfitstable} \label{swfitstable}
805\begin{verbatim}
806swfitstable: Creates/read an SwFitsDataTable from a fits file
807 SwFitsDataTable is a table which uses the BINARY-TBL
808 of the fits file as swap space - useful for large tables
809Usage: swfitstable FileName [num_hdu=2] [segsize=512]
810See also: readfits scanfits
811\end{verbatim}
812\piacommand{vecfrascii} \label{vecfrascii}
813\begin{verbatim}
814Reads a vector from an ASCII file (TVector<r_8>)
815 Usage: vecfrascii vec_name file_name
816 Related commands: arrtoascii mtxfrascii ntfrascii [CommChar Separator]
817\end{verbatim}
818\piacommand{writefits} \label{writefits}
819\begin{verbatim}
820writefits: Write objects to a fits file
821Usage: writefits nameobj/pattern FileName
822See also: scanfits readfits fitsadapt
823\end{verbatim}
824\subsection{Fitting} \label{Fitting}
825\noindent
826\piahelpitem{helpfit} \label{helpfit}
827\begin{verbatim}
828
829//////////////////////////////////////////////////////////////////////
830| --------------- Fit Lineaire a 1 et 2 dimensions ---------------
831| Syntaxe:
832| fitlin nom pnn [o:.aa,bb,cc, o:dd,ee,ff o:gg,hh,jj,kk etc...]
833| avec:
834| nom : cf commentaire ordre ''fit''
835| pnn : fit polynome degre nn avec classe Poly (lineaire) 1D ou 2D
836| o:aa,...,bb : cf commentaires ordre ''fit''
837|
838//////////////////////////////////////////////////////////////////////
839| --------------- Fit d'objets a 1 et 2 dimensions ---------------
840| avec interface d'aide graphique
841| Syntaxe:
842| fitw nom func
843| [p:p1,p2,...,pn s:s1,s2,...,sn m:m1,m2,...,mn M:M1,mM2,...,Mn f:f1,...,fn]
844| [o:.aa,bb,cc, o:dd,ee,ff o:gg,hh,jj,kk etc...]
845| cf commentaire ordre ''fit''
846|
847//////////////////////////////////////////////////////////////////////
848| --------------- Fit d'objets a 1 et 2 dimensions ---------------
849| Syntaxe:
850| fit nom func
851| [p:p1,p2,...,pn s:s1,s2,...,sn m:m1,m2,...,mn M:M1,mM2,...,Mn f:f1,...,fn]
852| [o:.aa,bb,cc, o:dd,ee,ff o:gg,hh,jj,kk etc...]
853|----- OBJET -----
854| nom : nom de l'objet qui peut etre:
855| fit-1D: Vector,Histo1D,HProf ou GeneraFitData(1D)
856| fit-2D: Matrix,Histo2D,Image<T> ou GeneraFitData(2D)
857|
858|----- FUNCTION -----
859| func : pnn : fit polynome degre nn avec GeneralFit (non-lineaire) 1D ou 2D
860| : gnn : fit gaussienne (hauteur) + polynome de degre nn 1D
861| : g : fit gaussienne (hauteur) 1D
862| : enn : fit exponentielle + polynome de degre nn 1D
863| : e : fit exponentielle 1D
864| : Gnn : fit gaussienne (volume) + polynome de degre nn 1D
865| : G : fit gaussienne (volume) 1D
866| : : fit gaussienne+fond (volume) 2D
867| : Gi : fit gaussienne+fond integree (volume) 2D
868| : d : fit DL de gaussienne+fond (volume) 2D
869| : di : fit DL de gaussienne+fond integree (volume) 2D
870| : D : fit DL de gaussienne+fond avec coeff variable p6 (volume) 2D
871| : Di : fit DL de gaussienne+fond integree avec coeff variable p6 (volume) 2D
872| : M : fit Moffat+fond (expos=p6) (volume) 2D
873| : Mi : fit Moffat+fond integree (expos=p6) (volume) 2D
874| : Autre : fonction definie par l'utilisateur (cf commentaires ci apres)
875|
876|----- INIT PARAMETRES ET ETAT DU FIT -----
877| p : p1,...,pn : valeur d'initialisation des parametres (def=0)
878| s : s1,...,sn : valeur des steps de depart (def=1)
879| m : m1,...,mn : valeur des minima (def=1)
880| M : M1,...,Mn : valeur des maxima (def=-1) (max<=min : pas de limite)
881| f : f1,...,fn : si >=1 parametre fixe sinon libre (def=0)
882| - Remarque: si pi,si,mi ou Mi = '!' la valeur correspondante n'est pas changee
883|
884|----- OPTIONS -----
885| o : options ''o:Eaa.b,eaa.b,f,r,caa.b,Xaa.b''
886| F : initialisation a partir des resultats et de l'etat du fit precedent
887| (option non prioritaire sur les definitions p:,s:,m:,M:,f:o:)
888| a : initialisation automatique des parametres du fit (si disponible)
889| (option non prioritaire sur les definitions p:,s:,m:,M:,f:o:
890| et sur l'initialisation pa l'option ''F'')
891| f : generation d'un Objet identique contenant la fonction fittee
892| r : generation d'un Objet identique contenant les residus
893| Xaa.b : aa.b valeur du DXi2 d'arret (def=1.e-3)
894| Naa : aa nombre maximum d'iterations (def=100)
895| la : niveau ''a'' de print: a=niveau de print Fit1/2D
896| da : niveau ''a'' de debug: a=niveau de GeneralFit
897| Ii1/i2 : numeros des bins X de l'histos utilises pour le fit [i1,i2]
898|2D Jj1/j2 : numeros des bins Y de l'histos utilises pour le fit [j1,j2]
899| - Traitement des erreurs :
900| Par defaut, l'erreur est celle associee a l'objet (si elle existe),
901| elle est mise a 1 sinon.
902| haa.b/cc.d : erreur = aa.bb*(erreur associee a l'objet cf ci-dessus)
903| Haa.b/cc.d : erreur = aa.b*|val|
904| eaa.b/cc.d : erreur = aa.b
905| Eaa.b/cc.d : erreur = aa.b*sqrt(|val|)
906| aa.b<0 (ou non precise) est equivalent aa.b=1.0
907| cc.d non precise est equivalent a cc.d=0
908| si cc.d>=0 si erreur>0 erreur = max(erreur,cc.d)
909| si erreur<=0 alors erreur
910| si cc.d<0 si erreur>0 erreur = max(erreur,|cc.d|)
911| si erreur<=0 alors erreur=|cc.d|
912| xaa.b : demande de centrage: on fit x-aa.b au lieu de x)
913| x : demande de centrage: on fit x-xc au lieu de x
914| avec xc=abscisse du ''milieu logique'' de l'objet.
915| Actif pour exp+poly 1D, poly 1D
916| Pour gauss+poly 1D, xc est le centre de la gaussienne.
917|2D yaa.b et y : idem ''xaa.b et x'' mais pour y
918|
919//////////////////////////////////////////////////////////////////////
920| --------------- Def des fcts de fit par l'utilisateur ---------------
921| Pour definir une fonction parametree utilisateur:
922| Un exemple de fichier contenant des fonctions a fitter: PIext/userfitfunex.c
923| > crfitfil nom_fichier nom_fonction nvar npar
924| pour creer un squelette de fichier C contenant la fonction a fitter
925| nom_fichier : nom du fichier ou est le code de la fonction
926| c'est un fichier C de nom blabla.c
927| nom_fonction : nom de la fonction ex: gauss2
928| nvar : nombre de variables x[] (1D=1, 2D=2, etc...)
929| npar : nombre de parametre p[]
930| - La fonction est donc F(x[];p[]), soit par ex:
931| double gauss2(double const* x,double const* p)
932| - L'utilisateur a la possibilite de donner egalement la fonction
933| retournant les derivees de la fonction par rapport aux parametres
934| double gauss2_der(double const* x,double const* p,double* dp)
935| ou dp[i] = dF(x[];p[])/dp[i]
936| Par convention, cette fonction a le meme nom suivi de ''_der''
937| > crfitfun nom_fichier nom_fonction nvar npar
938| Permet de compiler le fichier ''nom_fichier'' et de linker
939| la fonction ''nom_fonction''
940| - Un meme fichier peut contenir plusieurs fonctions a fitter
941|
942//////////////////////////////////////////////////////////////////////
943\end{verbatim}
944\piacommand{crfitfil} \label{crfitfil}
945\begin{verbatim}
946Creation de fichier C pour function utilisateur du fit
947 Usage: crfitfil file func nvar npar
948 Related commands: fit fitw fitlin crfitfun
949\end{verbatim}
950\piacommand{crfitfun} \label{crfitfun}
951\begin{verbatim}
952Creation et link de function utilisateur pour le fit
953 Usage: crfitfun file func nvar npar
954 Related commands: fit fitw fitlin crfitfil
955\end{verbatim}
956\piacommand{fit} \label{fit}
957\begin{verbatim}
958Fitting function to DataObjects (Histo, Histo2D, Vector, ...)
959 Usage: fit nomobj func [Options]
960 [p:p1,...,pn s:s1,...,sn m:m1,...,mn M:M1,...,Mn o:... o:...]
961 Related commands: fitw fitlin crfitfun crfitfil
962\end{verbatim}
963\piacommand{fitlin} \label{fitlin}
964\begin{verbatim}
965Linear Fitting of Polynoms to DataObjects
966 Usage: fitlin nomobj func [o:... o:...]
967 Related commands: fit fitw crfitfun crfitfil
968\end{verbatim}
969\piacommand{fitw} \label{fitw}
970\begin{verbatim}
971Fitting function to DataObjects with Interactive Window Help
972 Usage: fitw nomobj func [Options]
973 [p:p1,...,pn s:s1,...,sn m:m1,...,mn M:M1,...,Mn o:... o:...]
974 Related commands: fit fitlin crfitfun crfitfil
975\end{verbatim}
976\subsection{Func Plot} \label{FuncZPlot}
977\noindent
978\piacommand{func} \label{func}
979\begin{verbatim}
980Displays a function y=f(x) (Fills a vector with function values)
981 Usage: func f(x) xmin xmax [npt graphic_attributes]
982 Related commands: funcff func2d func2dff
983\end{verbatim}
984\piacommand{func2d} \label{func2d}
985\begin{verbatim}
986Displays a function z=f(x,y) (Fills a matrix with function values)
987 Usage: func2d f(x,y) xmin xmax nptx ymin ymax npty [graphic_attributes]
988 Related commands: func
989\end{verbatim}
990\piacommand{func2dff} \label{func2dff}
991\begin{verbatim}
992Displays a function z=f(x,y) from a C-file (Fills a matrix with function values)
993 Usage: func2dff C-FileName FunctionName xmin xmax nptx ymin ymax npty [graphic_attributes]
994 Related commands: func funcff func2d
995\end{verbatim}
996\piacommand{funcff} \label{funcff}
997\begin{verbatim}
998Displays a function y=f(x) from a C-file (Fills a vector with function values)
999 Usage: funcff C-FileName FunctionName xmin xmax [npt graphic_attributes]
1000 Related commands: func func2d func2dff
1001\end{verbatim}
1002\subsection{Graphic-Elts} \label{GraphicZElts}
1003Simple graphic objects (lines, circles, text...) creation and display
1004 \\[2mm] \noindent
1005\piacommand{addarc} \label{addarc}
1006\begin{verbatim}
1007Adds an arc to the current graphic object
1008 defined by 3 points (+ graphic attribute)
1009 The Base/AxesDrawer is used to handle added arcs
1010 Alt<E> to remove the added element
1011 Usage: addarc x1 y1 x2 y2 x3 y3 [GraphicAtt] [fgnc=false/true]
1012 if fgnc==true : Normalized 0..1 coordinates specification (def=false)
1013 Related commands: addtext addline addarrow addfrect addfrect
1014 addcirc addfcirc addfarc addarca addpoly addfpoly graphicatt
1015\end{verbatim}
1016\piacommand{addarca} \label{addarca}
1017\begin{verbatim}
1018Adds an arc to the current graphic object
1019 defined by the circle (center+radius), start angle and angular extension
1020 Angles are specified in degrees
1021 Usage: addarca xc yc r a0deg dadeg [GraphicAtt] [fgnc=false/true]
1022 if fgnc==true : Normalized 0..1 coordinates specification (def=false)
1023 Related commands: addtext addline addfarca addarc ...
1024\end{verbatim}
1025\piacommand{addarrow} \label{addarrow}
1026\begin{verbatim}
1027Adds an arrow to the current graphic object
1028 at the specified position (+ graphic attribute)
1029 The Base/AxesDrawer is used to handle added lines
1030 Alt<E> to remove the added element
1031 Usage: addarrow x1 y1 x2 y2 [GraphicAtt] [fgnc=false/true]
1032 if fgnc==true : Normalized 0..1 coordinates specification (def=false)
1033 Related commands: addline addtext addrect addfrect
1034 addmarker addcirc addfcirc addarc addfarc addpoly addfpoly graphicatt
1035\end{verbatim}
1036\piacommand{addaxelabels} \label{addaxelabels}
1037\begin{verbatim}
1038Set the X and Y axis labels for the current 2D graphic object alias for setaxelabels
1039\end{verbatim}
1040\piacommand{addcirc} \label{addcirc}
1041\begin{verbatim}
1042Adds a circle to the current graphic object
1043 with the specified center and radius (+ graphic attribute)
1044 The Base/AxesDrawer is used to handle added circles
1045 Alt<E> to remove added element
1046 Usage: addcirc xcenter ycenter radius [GraphicAtt] [fgnc=false/true]
1047 if fgnc==true : Normalized 0..1 coordinates specification (def=false)
1048 Related commands: addtext addline addarrow addfrect addfrect
1049 addfcirc addarc addfarc addpoly addfpoly graphicatt
1050\end{verbatim}
1051\piacommand{addctext} \label{addctext}
1052\begin{verbatim}
1053Adds a composite text string with superscript and subscripts
1054 at the specified position (+ color/font/pos/dir attributes)
1055 Usage: addctext x y Text sUp sDown [ColFontPosAtt] [UpDownFontAtt] [fgnc]
1056 if fgnc==true : Normalized 0..1 coordinates specification (def=false)
1057 Related commands: addtext addline addrect ...
1058 (See command addtext and graphicatt for more details)
1059\end{verbatim}
1060\piacommand{addfarc} \label{addfarc}
1061\begin{verbatim}
1062Adds a filled arc to the current graphic object
1063 defined by 3 points (+ graphic attribute)
1064 The Base/AxesDrawer is used to handle added arcs
1065 Alt<E> to remove added element
1066 Usage: addarc x1 y1 x2 y2 x3 y3 [GraphicAtt] [fgnc=false/true]
1067 if fgnc==true : Normalized 0..1 coordinates specification (def=false)
1068 Related commands: addtext addline addarrow addfrect addfrect
1069 addcirc addfcirc addfarc addpoly addfpoly graphicatt
1070\end{verbatim}
1071\piacommand{addfarca} \label{addfarca}
1072\begin{verbatim}
1073Adds a filled arc to the current graphic object
1074 defined by the circle (center+radius), start angle and angular extension
1075 Angles are specified in degrees
1076 Usage: addfarca xc yc r a0deg dadeg [GraphicAtt] [fgnc=false/true]
1077 if fgnc==true : Normalized 0..1 coordinates specification (def=false)
1078 Related commands: addtext addline addarca addarc ...
1079\end{verbatim}
1080\piacommand{addfcirc} \label{addfcirc}
1081\begin{verbatim}
1082Adds a filled circle to the current graphic object
1083 with the specified center and radius (+ graphic attribute)
1084 The Base/AxesDrawer is used to handle added circles
1085 Alt<E> to remove added element
1086 Usage: addcirc xcenter ycenter radius [GraphicAtt] [fgnc=false/true]
1087 if fgnc==true : Normalized 0..1 coordinates specification (def=false)
1088 Related commands: addtext addline addarrow addfrect addfrect
1089 addcirc addarc addfarc addpoly addfpoly graphicatt
1090\end{verbatim}
1091\piacommand{addfoval} \label{addfoval}
1092\begin{verbatim}
1093Adds a filled oval (ellipse) to the current graphic object
1094 centered on xc,yc - semi-axis ds,dy (+ graphic attribute)
1095 The Base/AxesDrawer is used to handle added rectangle
1096 Alt<E> to remove added element
1097 Usage: addfoval xc yc dx dy [GraphicAtt] [fgnc=false/true]
1098 if fgnc==true : Normalized 0..1 coordinates specification (def=false)
1099 Related commands: addoval addline addarrow addfrect addcirc addfcirc
1100 addcirc addfcirc addarc addfarc addpoly addfpoly graphicatt
1101\end{verbatim}
1102\piacommand{addfpoly} \label{addfpoly}
1103\begin{verbatim}
1104Adds a filled polygon to the current graphic object
1105 Usage: addploy 'x1,y1 x2,y2 x3,y3 ...' [GraphicAtt] [fgnc=false/true]
1106 Coordinates specified as pairs x,y in a single word (use simple or double quotes
1107 if fgnc==true : Normalized 0..1 coordinates specification (def=false)
1108 Related commands: addtext addline addarrow addfrect addfrect
1109 addcirc addfcirc addfarc graphicatt
1110\end{verbatim}
1111\piacommand{addfrect} \label{addfrect}
1112\begin{verbatim}
1113Adds a filled rectangle to the current graphic object
1114 between the specified positions (+ graphic attribute)
1115 The Base/AxesDrawer is used to handle added rectangle
1116 Alt<E> to remove added element
1117 Usage: addfrect x1 y1 x2 y2 [GraphicAtt] [fgnc=false/true]
1118 if fgnc==true : Normalized 0..1 coordinates specification (def=false)
1119 Related commands: addtext addline addarrow addrect
1120 addcirc addfcirc addpoly addfpoly graphicatt
1121\end{verbatim}
1122\piacommand{addline} \label{addline}
1123\begin{verbatim}
1124Adds a line to the current graphic object
1125 at the specified position (+ graphic attribute)
1126 The Base/AxesDrawer is used to handle added lines
1127 Alt<E> to remove the added element
1128 Usage: addline x1 y1 x2 y2 [GraphicAtt] [fgnc=false/true]
1129 if fgnc==true : Normalized 0..1 coordinates specification (def=false)
1130 Related commands: addarrow addtext addrect addfrect
1131 addmarker addcirc addfcirc addarc addfarc addpoly addfpoly graphicatt
1132\end{verbatim}
1133\piacommand{addmarker} \label{addmarker}
1134\begin{verbatim}
1135Adds a marker to the current graphic object
1136 at the specified position (+ graphic attribute)
1137 The Base/AxesDrawer is used to handle added circles
1138 Alt<E> to remove added element
1139 Usage: addmarker xpos ypos [GraphicAtt] [fgnc=false/true]
1140 if fgnc==true : Normalized 0..1 coordinates specification (def=false)
1141 Related commands: addtext addline addarrow addfrect addfrect
1142 addcirc addfcirc addarc addfarc addpoly addfpoly graphicatt
1143\end{verbatim}
1144\piacommand{addoval} \label{addoval}
1145\begin{verbatim}
1146Adds an oval (ellipse) to the current graphic object
1147 centered on xc,yc - semi-axis ds,dy (+ graphic attribute)
1148 The Base/AxesDrawer is used to handle added rectangle
1149 Alt<E> to remove added element
1150 Usage: addoval xc yc dx dy [GraphicAtt] [fgnc=false/true]
1151 if fgnc==true : Normalized 0..1 coordinates specification (def=false)
1152 Related commands: addfoval addline addarrow addfrect addcirc addfcirc
1153 addcirc addfcirc addarc addfarc addpoly addfpoly graphicatt
1154\end{verbatim}
1155\piacommand{addpoly} \label{addpoly}
1156\begin{verbatim}
1157Adds a polyline/polygon to the current graphic object
1158 Usage: addploy 'x1,y1 x2,y2 x3,y3 ...' [GraphicAtt] [fgnc=false/true]
1159 Coordinates specified as pairs x,y in a single word (use simple or double quotes
1160 if fgnc==true : Normalized 0..1 coordinates specification (def=false)
1161 Related commands: addtext addline addarrow addfrect addfrect
1162 addcirc addfcirc addfarc graphicatt
1163\end{verbatim}
1164\piacommand{addrect} \label{addrect}
1165\begin{verbatim}
1166Adds a rectangle to the current graphic object
1167 between the specified positions (+ graphic attribute)
1168 The Base/AxesDrawer is used to handle added rectangle
1169 Alt<E> to remove added element
1170 Usage: addrect x1 y1 x2 y2 [GraphicAtt] [fgnc=false/true]
1171 if fgnc==true : Normalized 0..1 coordinates specification (def=false)
1172 Related commands: addtext addline addarrow addfrect
1173 addcirc addfcirc addarc addfarc addpoly addfpoly graphicatt
1174\end{verbatim}
1175\piacommand{addtext} \label{addtext}
1176\begin{verbatim}
1177Adds a text string to the current graphic object
1178 at the specified position (+ color/font/pos/dir attributes)
1179 The Base/AxesDrawer is used to handle added text strings
1180 Alt<E> to remove the added element
1181 Usage: addtext x y TextString [ColFontPosAtt] [fgnc=false/true]
1182 (use quotes '' for multi word text strings)
1183 if fgnc==true : Normalized 0..1 coordinates specification (def=false)
1184 Text position/direction attribute:
1185 horizleft horizcenter horizright
1186 vertbottom vertcenter verttop
1187 textdirhoriz textdirvertup textdirvertdown
1188 Related commands: addctext addline addarrow addrect addfrect
1189 addcirc addfcirc addarc addfrac addpoly addfpoly settitle graphicatt
1190\end{verbatim}
1191\piacommand{addtitle} \label{addtitle}
1192\begin{verbatim}
1193Set the title string (top title / bottom title)
1194 alias for settitle
1195\end{verbatim}
1196\piacommand{setaxelabels} \label{setaxelabels}
1197\begin{verbatim}
1198Set the X and Y axis labels for the current 2D graphic object
1199
1200 Usage: setaxelabels xLabel yLabel [ColorFntAtt]
1201 Related commands: settitle addtext graphicatt
1202\end{verbatim}
1203\piacommand{settitle} \label{settitle}
1204\begin{verbatim}
1205Set the title string (top title / bottom title) for the current graphic object
1206 Usage: settitle TopTitle [BottomTitle] [fontAtt]
1207 Related commands: addtext graphicatt
1208\end{verbatim}
1209\subsection{GraphicExport} \label{GraphicExport}
1210Commands to export graphics (widget/windows in postscript or PI-RGB image files
1211 \\[2mm] \noindent
1212\piacommand{imagcmap2eps} \label{imagcmap2eps}
1213\begin{verbatim}
1214imagcmap2eps: Current Image+ColorMap To EncapsulatedPostScript
1215Usage: imagcmap2eps EPSFileName
1216\end{verbatim}
1217\piacommand{imagcmap2ps} \label{imagcmap2ps}
1218\begin{verbatim}
1219w2ps: Current Image+ColorMap To PostScript
1220Usage: imagcmap2ps
1221\end{verbatim}
1222\piacommand{psclosefile} \label{psclosefile}
1223\begin{verbatim}
1224psclosefile: close current postscript file
1225Usage: w2psclosefile
1226\end{verbatim}
1227\piacommand{psgetfilename} \label{psgetfilename}
1228\begin{verbatim}
1229psgetfilename: Prints current PostScript file name
1230Usage: psgetfilename
1231\end{verbatim}
1232\piacommand{pssetfilename} \label{pssetfilename}
1233\begin{verbatim}
1234pssetfilename: Sets current PostScript file name
1235Usage: pssetfilename FileName
1236\end{verbatim}
1237\piacommand{w2eps} \label{w2eps}
1238\begin{verbatim}
1239w2eps: Current Window To EncapsulatedPostScript
1240Usage: w2eps EPSFileName
1241\end{verbatim}
1242\piacommand{w2ps} \label{w2ps}
1243\begin{verbatim}
1244w2ps: Current Window To PostScript
1245Usage: w2ps
1246\end{verbatim}
1247\piacommand{wdg2rgb} \label{wdg2rgb}
1248\begin{verbatim}
1249 Export the current widget to a PI-RGB file (.rgb)
1250 Usage : wdg2rgb PI-RGB_FileName (.rgb)
1251 Related commands: pirgbdisp win2rgb
1252\end{verbatim}
1253\piacommand{win2rgb} \label{win2rgb}
1254\begin{verbatim}
1255 Export the current window to a PI-RGB file (.rgb)
1256 Usage : win2rgb PI-RGB_FileName (.rgb)
1257 Related commands: pirgbdisp wdg2rgb
1258\end{verbatim}
1259\subsection{Graphics} \label{Graphics}
1260Basic graphics and object display commands
1261 \\[2mm] \noindent
1262\piahelpitem{PIConsole} \label{PIConsole}
1263\begin{verbatim}
1264Text output area and command editing window (console)
1265>>>> Mouse controls :
1266o Button-1: Rectangle selection for copy/paste
1267o Button-2: Paste text in the command editing line
1268o Button-3: activate display option menu
1269>>>> Keyboard controls :
1270o <Alt>O : activate display option menu
1271o <Alt>V : Paste text in the command editing line
1272o <Alt>A : Selection of the whole window for copy
1273o <Alt>L : Command history (List of command history buffer)
1274o <Ctl>A : Command editing -> Goto the beginning of line
1275o <Ctl>E : Command editing -> Goto the end of line
1276o <Ctl>K : Command editing -> Clear to the end of line
1277o <Ctl>C : Stop/break command execution by PIACmd/Commander
1278o Cursor left,right : Command editing -> Move cursor
1279o Cursor Up,Down : recall command from history buffer
1280o Backspace,Del : Command editing
1281o <Return>,<Enter> : Execute command
1282
1283\end{verbatim}
1284\piahelpitem{PIDraw3DWdg} \label{PIDraw3DWdg}
1285\begin{verbatim}
1286Manages display of 3-D objects (drawers)
1287>>>> Mouse controls :
1288o Button-2: Rotates the observer (camera) around object
1289o Shift-Button-2: Rotates object with camera fixed
1290 The object rotation mode can be assigned to Button-2 with <Alt>S
1291o Button-3: Zoom control (Camera distance And/Or view angle)
1292>>>> Keyboard controls :
1293o <Alt>R : Resets the 3-D view and refreshes the display
1294o <Alt>O : Displays a specific control window (default: PIDrawerTools)
1295 (2-D histograms, contour plot ...)
1296o <Alt>G : Show the PIDrawerTools (Graphic attributes of displayed Drawers)
1297 Drawer 0 manages the axes, as well as the added text
1298o <Alt>D : Shows the drawer manipulation pop-up menu
1299o <Alt>V : Copy/Paste / Text paste at the current position (Drawer 0)
1300o <Alt>Z : Removes added graphic elements (handled by BaseDrawer - 0)
1301o <Alt>E : Removes the last added graphic element
1302o <Alt>A : Activate/Deactivate axes drawing
1303o <Alt>S : Activate/Deactivate object rotation mode on Button-2
1304
1305\end{verbatim}
1306\piahelpitem{PIImage} \label{PIImage}
1307\begin{verbatim}
1308Manages the display of a 2-D array (P2DArrayAdapter) as an image
1309and controls a zoom widget, as well as a global image view widget
1310>>>> Mouse controls :
1311o Button-1: Display current coordinates and pixel value
1312 Position the cursor an refresh the zoom widget
1313o Button-2: Defines an image zone and positions the cursor
1314o Button-3: Moves the viewed portion of the array inside the window
1315>>>> Keyboard controls :
1316o <Alt>R : Refresh display
1317o <Alt>O : Shows the PIImageTools (image display parameter controls)
1318o <Alt>G : Show the PIDrawerTools (Graphic attributes of overlayed graphics (Drawers))
1319o <Alt>D : Shows the drawer manipulation pop-up menu
1320o <Alt>V : Copy/Paste / Text paste at the current cursor position
1321o <Alt>C : Copy/Paste / Copies the selected regions content as text in the copy/paste buffer
1322o <Alt>X : Show/Hide the Cut Window
1323o <Alt>Z : Removes added graphic elements (handled by BaseDrawer - 0)
1324o <Alt>E : Removes the last added graphic element
1325o <Alt>+ or <Cntl>+ : Zoom in
1326o <Alt>- or <Cntl>- : Zoom out
1327o Cursor keys : Moves the image cursor
1328
1329\end{verbatim}
1330\piahelpitem{PIScDrawWdg} \label{PIScDrawWdg}
1331\begin{verbatim}
1332Manages display of 2-D drawers with interactive zoom
1333>>>> Mouse controls :
1334o Button-1: Display current coordinates
1335o Button-2: Defines a rectangle for zoom
1336o Button-3: Defines a rectangle for Text-Info (<Alt>I)
1337>>>> Keyboard controls :
1338o <Alt>R : Refresh display
1339o <Alt>O : Displays a specific control window (default: PIDrawerTools)
1340 (2-D histograms, contour plot ...)
1341o <Alt>G : Show the PIDrawerTools (Graphic attributes of displayed Drawers)
1342 Drawer 0 manages the axes, as well as the added text
1343o <Alt>D : Shows the drawer manipulation pop-up menu
1344o <Alt>V : Copy/Paste / Text paste at the current position
1345o <Alt>Z : Removes added graphic elements (handled by BaseDrawer - 0)
1346o <Alt>E : Removes the last added graphic element
1347o <Alt>I : Shows (or updates) a text info window on the selected rectangle
1348o <Alt>M : Activate/Deactivate a measurement cursor on Button-1
1349o <Alt>L : Deactivate DX,DY print (see below)
1350>>>> Mouse + Keyboard controls :
1351o Button-1 + <Alt>K : Set (reset) the reference point for DX,DY print
1352
1353\end{verbatim}
1354\piahelpitem{Windows} \label{Windows}
1355\begin{verbatim}
1356Objects can be displayed in different windows, or overlayed on the
1357previous display. The graphics attributes next,win,stack,same control
1358the display window.
1359o GraphicWindow : This is the default mode (gr_att=next)
1360 Graphic windows can be divided int zones. Object is displayed
1361 in the next available position, removing a previously displayed
1362 widget if necessary
1363o Window : An object is displayed in its own window (gr_att= win)
1364o StackWindow : multpile widgets can be stacked in a StackWindow (gr_att= stack)
1365 A single widget is displayed a any time. Different widgets in a StackWindow
1366 can be displayed using the stacknext command, as well as the StackTools item
1367 in the Tools menu (from Menubar). An automatic cyclic display mode can also
1368 be activated using the StackTools menu (Blink)
1369o Most objects can be also be displayed overlayed
1370 on the last displayed widget (gr_att= same)
1371 or by specifying a widget name samew=Widgetname
1372o The widget/window name can be specified (gr_att wname=Name)
1373o The overlay can be on a selected rectangle of the last
1374 displayed widget (gr_att: inset or inset=fxmin,fxmax,fymin,fymax)
1375
1376 Related commands: newwin zone stacknext graphicatt setinsetlimits
1377\end{verbatim}
1378\piacommand{drpanel} \label{drpanel}
1379\begin{verbatim}
1380Creates a new 2D drawing zone for addtext, addline
1381 Usage: drpanel xmin xmax ymin ymax [GrAtt] [Name]
1382 Related commands: addtext addline addrect addcirc ...
1383\end{verbatim}
1384\piacommand{graphicatt} \label{graphicatt}
1385\begin{verbatim}
1386To change default graphic options
1387 Usage: graphicatt att_list
1388att_list=def back to default values, Example: gratt 'red circlemarker5'
1389 ------------------ Graphic attribute list ------------------
1390>> Colors: defcol black white grey red blue green yellow
1391 magenta cyan turquoise navyblue orange siennared purple
1392 limegreen gold violet violetred blueviolet darkviolet
1393 or "color=name" "fgcolor=name" "bgcolor=name" ex: "color=red"
1394>> Lines: defline normalline thinline thickline dashedline thindashedline
1395 thickdashedline dottedline thindottedline thickdottedline
1396 or "line=type,width" ex: "line=dotted,7"
1397>> Fonts:
1398 > Att: deffontatt normalfont boldfont italicfont bolditalicfont
1399 smallfont smallboldfont smallitalicfont smallbolditalicfont
1400 bigfont bigboldfont bigitalicfont bigbolditalicfont
1401 hugefont hugeboldfont hugeitalicfont hugebolditalicfont
1402 > Names: deffont courierfont helveticafont timesfont symbolfont
1403 or "font=name,type,size" ex: "font=courrier,bolditalic,10"
1404>> Marker: dotmarker<T> plusmarker<T> crossmarker<T> circlemarker<T>
1405 fcirclemarker<T> boxmarker<T> fboxmarker<T> trianglemarker<T>
1406 ftrianglemarker<T> starmarker<T> fstarmarker<T>
1407 with <T> = 1 3 5 7 .. 15 , Example fboxmarker5 , plusmarker9 ...
1408 or "marker=type,size" ex: "marker=plus,10"
1409>> ArrowMarker: basicarrow<T> trianglearrow<T> ftrianglearrow<T>
1410 arrowshapedarrow<T> farrowshapedarrow<T>
1411 with <T> = 5 7 .. 15 , Example trianglearrow7 ...
1412 or "arrow=type,size" ex: "arrow=arrowshaped,10"
1413------ Specific options for image displays:
1414>> ColorTables: defcmap grey32 invgrey32 colrj32 colbr32
1415 grey128 invgrey128 colrj128 colbr128
1416 red32cm green32cm blue32cm yellow32cm
1417 orange32cm cyan32cm violet32cm
1418 midas_pastel midas_heat midas_rainbow3 midas_bluered
1419 midas_bluewhite midas_redwhite
1420 multicol16 multicol64 rgb216cm rgb512cm rgb4096cm
1421>> revcmap : reverse colorMap
1422>> ZoomFactors : zoomxN ex: zoomx1 zoomx2 zoomx3 ...
1423 zoom/N ex: zoom/2 zoom/3 zoom/4 ...
1424>> imagecenter=ix,iy : Position the image in widget
1425>> lut=ltyp,min,max : Sets LUT type and min/max
1426 (ltyp=lin/log/sqrt/square/rgb)
1427>> autolut=alt[,ns[,min,max]] : AutoLut method selection
1428 (alt=minmax/meansig/hispeak/histail/hisrng)
1429>> invx,invy,exchxy : image axes configuration
1430>> cdreal,cdimag,cdphase,cdmod,cdmod2 (default=cdmod): Displayed value
1431 for complex arrays (real/imaginary part, phase, module, module^2)
1432--- General purpose options:
1433>> stat,stats / nsta,nstat,nostat,nostats : Toggle statistic display
1434>> title,tit / notitle,notit -> Toggle automatic title display
1435>> Choose display window: next same win stack inset
1436>> for Axes / Axe labels / LogScale / xylimits / defdrrect
1437 see setaxesatt command
1438
1439 Related commands: setaxesatt setinsetlimits
1440\end{verbatim}
1441\piacommand{newwin} \label{newwin}
1442\begin{verbatim}
1443To Create a New Graphic window, with zones
1444 Window size can be specified
1445 Usage: newwin [nx ny [sizeX sizeY]]
1446 Related commands: zone
1447\end{verbatim}
1448\piacommand{setaxesatt} \label{setaxesatt}
1449\begin{verbatim}
1450To set default axes attributes
1451 Usage: setaxesatt att_list
1452Color/Line/Font attributes and axes attributes
1453>> Axes: axesnone stdaxes=defaxes=boxaxes boxaxesgrid
1454 fineaxes fineaxesgrid centeredaxes finecenteredaxes
1455 centeredaxesgrid finecenteredaxesgrid
1456 axescenter=x0,y0 (only with centered axes, default "axescenter=")
1457 grid nogrid labels nolabels
1458 ticks noticks minorticks nominorticks
1459 extticks intticks extintticks
1460 nbticks=X_NTicks,Y_NTicks
1461 tickslen=MajTickLenFrac,MinTickLenFrac
1462>> Axe labels font size: fixedfontsize/autofontsize=fszf
1463 autofontsize=fsizef: Font size computed automatically
1464 fixedfontsize: Use font size attribute (BaseDrawer)
1465>> Scale type: linx liny logx logy -> Lin/Log Scales for 2D plots
1466>> AxeDirection: Reverse X/Y axe drawing direction
1467 revax revay axelr axedu (or axerl/axeud -> revax/revay)
1468>> xylimits=xmin,xmax,ymin,ymax -> Forces X-Y limits in 2-D plots
1469>> defdrrect=xmin,xmax,ymin,ymax -> Defines drawing rectangle 2-D plots
1470 The rectangle is defined as a fraction of the widget size
1471
1472\end{verbatim}
1473\piacommand{setdefafsz} \label{setdefafsz}
1474\begin{verbatim}
1475Define the Global Default value for PIDrawer AutoFontSize Fraction
1476 Usage: setdefafsz value
1477 0<value<1 : default PIDrawer font size, as a fraction of the widget size
1478 Its value can be set by the PIDEFAFSZFRAC environment variable
1479 See also graphic attributes : fixedfontsize autofontsize=frac
1480\end{verbatim}
1481\piacommand{setinsetlimits} \label{setinsetlimits}
1482\begin{verbatim}
1483Define the display rectangle for drawers added as insets
1484 over existing graphic objects - limits expressed as fraction
1485 graphic object size (0. .. 1.) Xmax at right, YMax top
1486 Usage: setinsetlimits xmin xmax ymin ymax
1487 Related commands: graphicatt /inset
1488\end{verbatim}
1489\piacommand{stacknext} \label{stacknext}
1490\begin{verbatim}
1491Displays the next widget on stack window
1492 Usage: stacknext
1493\end{verbatim}
1494\piacommand{zone} \label{zone}
1495\begin{verbatim}
1496To Divide the Graphic window
1497 Usage: zone [nx=1 ny=1]
1498 Related commands: newwin
1499\end{verbatim}
1500\subsection{Obj. Display} \label{ObjZZDisplay}
1501Most useful commands to view and display objects
1502 \\[2mm] \noindent
1503\piacommand{bargraph} \label{bargraph}
1504\begin{verbatim}
1505Bar-Graph view of a sequence of values
1506 Usage: bargraph ValueVarName [gr_opt]
1507 or bargraph ValueVarName LabelVarName ColPosVarName [gr_opt]
1508 ValueVarName,LabelVarName,ColPosVarName are PIACmd interpreter
1509 variable name (vectors)
1510 - ValueVarName: Sequence of values to be represented
1511 - LabelVarName: Corresponding labels
1512 - ColPosVarName: Corresponding colors or color,position pairs
1513 Use a dash (-) or ! as placeholder for LabelVarName/ColPosVarName
1514 Specific graphic options: fill/nofill packfrac=value
1515 horizontalbars/verticalbars barvaluelabel/nobarvaluelabel
1516 Related commands: disp nt2d vecplot ...
1517\end{verbatim}
1518\piacommand{contour} \label{contour}
1519\begin{verbatim}
1520Creates and displays a ContourDrawer
1521 Usage: contour objectName [graphic_att/specific_opt]
1522 Specific Options
1523 ncont=[number of contours (automatic levels) ]
1524 niv/lev=[values for contours, separated by ',']
1525 lstep=[nomber,first_value,increment for contours ]
1526 bspline : use bspline algo for contour
1527 3spl : use cubic spline algo for contour
1528 labon : put labels for contours
1529\end{verbatim}
1530\piacommand{disp} \label{disp}
1531\begin{verbatim}
1532Displays an object
1533 Usage: disp nameobj [graphic_attributes]
1534 Related commands: surf nt2d nt3d vecplot
1535\end{verbatim}
1536\piacommand{gfd2d} \label{gfd2d}
1537\begin{verbatim}
1538Displays Points (X-Y) with error-bars from a GeneralFit Data
1539 Usage : gfd2d nameobj numvarx erreur=(x y xy) [graphic_attributes]
1540 Related commands: gfd3d nt2d nt3d
1541 ----- OBSOLETE: utilisez nt2d -----
1542\end{verbatim}
1543\piacommand{gfd3d} \label{gfd3d}
1544\begin{verbatim}
1545Displays 3D-Points (X-Y-Z) with error-bars from a GeneralFit Data
1546 Usage : gfd3d nameobj numvarx numvary erreur=(x y z xy xz yz xyz) [graphic_attributes]
1547 Related commands: gfd2d nt2d nt3d
1548 ----- OBSOLETE: utilisez nt3d -----
1549\end{verbatim}
1550\piacommand{imag} \label{imag}
1551\begin{verbatim}
1552Displays an object as an image
1553 Usage: imag nameobj [graphic_attributes]
1554 Related commands: disp imagnav surf nt2d nt3d vecplot
1555\end{verbatim}
1556\piacommand{imagnav} \label{imagnav}
1557\begin{verbatim}
1558Displays an object as an image with the ImageNavigator viewer
1559Usage: imagnav nameobj [graphic_attributes]
1560 Related commands: disp imag surf nt2d nt3d vecplot
1561\end{verbatim}
1562\piacommand{nt2d} \label{nt2d}
1563\begin{verbatim}
1564Displays Points (X-Y) [with error-bar / Weight / Label ] from an NTuple
1565 Usage : nt2d nameobj varx vary [errx erry wt label graphic_attributes]
1566 Related commands: disp surf nt2dcn nt2dci nt3d gfd2d vecplot
1567\end{verbatim}
1568\piacommand{nt2dci} \label{nt2dci}
1569\begin{verbatim}
1570 with colors specified by a column content (as color index)
1571 Usage : nt2dci nameobj color varx vary [errx erry wt label graphic_attributes]
1572 Related commands: disp surf nt2d nt2dci nt3d gfd2d vecplot
1573\end{verbatim}
1574\piacommand{nt2dcn} \label{nt2dcn}
1575\begin{verbatim}
1576 with colors specified by a column content (as color names)
1577 Usage : nt2dcn nameobj color varx vary [errx erry wt label graphic_attributes]
1578 Related commands: disp surf nt2d nt2dci nt3d gfd2d vecplot
1579\end{verbatim}
1580\piacommand{nt2dvec} \label{nt2dvec}
1581\begin{verbatim}
1582Creates and displays a flow chart from ntuple variables
1583 Usage: nt2dvec x y vx vy [graphic_att]
1584\end{verbatim}
1585\piacommand{nt3d} \label{nt3d}
1586\begin{verbatim}
1587Displays 3D-Points (X-Y-Z) [with error-bars / Weight / Label ] from an NTuple
1588 Usage : nt3d nameobj varx vary varz [errx erry errz wt label graphic_attributes]
1589 Related commands: disp surf nt2d gfd3d
1590\end{verbatim}
1591\piacommand{ntcont} \label{ntcont}
1592\begin{verbatim}
1593Creates and displays a ContourDrawer (from a NTuple)
1594 Usage: ntcont NTupleName varx vary varz [graphic_att/specific_opt]
1595 specific options
1596 ncont=[number of contours (automatic levels) ]
1597 niv/lev=[values for contours, separated by ',']
1598 lstep=[nomber,first_value,increment for contours ]
1599 bspline : use bspline algo for contour
1600 3spl : use cubic spline algo for contour
1601 labon : put labels for contours
1602\end{verbatim}
1603\piacommand{pirgbdisp} \label{pirgbdisp}
1604\begin{verbatim}
1605Read and display RGB-image object (PIPixRGBArray) from file
1606 Usage : pirgbdisp PI-RGB_FileName [gr_opt]
1607 gr_opt (def=rgb216cm):zoom, rgb4096cm rgb32768cm lut=rgb[,min,max]
1608 Related commands: win2rgb wdg2rgb
1609\end{verbatim}
1610\piacommand{surf} \label{surf}
1611\begin{verbatim}
1612Displays an object as a 3D surface
1613 Usage: surf nameobj [graphic_attributes]
1614 Related commands: disp nt2d nt3d vecplot
1615\end{verbatim}
1616\piacommand{textdrawer} \label{textdrawer}
1617\begin{verbatim}
1618Multi line text darwer
1619 Usage : textdrawer LinesVarName AttVarName [gr_opt]
1620 LinesVarName,AttVarName are PIACmd interpreter variables
1621 - LinesVarName: Lines to be displayed
1622 - AttVarName: Corresponding font/marker/color attributes
1623 Use a dash (-) or ! as placeholder for AttVarName
1624 Specific graphic options: frame/noframe
1625 Related commands: disp ...
1626\end{verbatim}
1627\piacommand{vecplot} \label{vecplot}
1628\begin{verbatim}
1629Displays Points (X-Y) with coordinates defined by two vectors
1630 Usage : vecplot nameVecX nameVecY [graphic_attributes]
1631 Related commands: disp nt2d
1632\end{verbatim}
1633\subsection{Object Management} \label{ObjectZManagement}
1634\noindent
1635\piacommand{cd} \label{cd}
1636\begin{verbatim}
1637Change current directory
1638 Usage: cd [dirname]
1639\end{verbatim}
1640\piacommand{copy} \label{copy}
1641\begin{verbatim}
1642Copy objects (Alias cp)
1643 Usage: copy name_from name_to
1644 Related commands: cp new...
1645\end{verbatim}
1646\piacommand{cp} \label{cp}
1647\begin{verbatim}
1648Copy objects (Alias copy)
1649 Usage: cp name_from name_to
1650 Related commands: copy new...
1651\end{verbatim}
1652\piacommand{del} \label{del}
1653\begin{verbatim}
1654Deletes an object (Alias: rm)
1655 Usage: del nameobj [nameobj2 ...]
1656 Related commands: rm delobjs rename
1657\end{verbatim}
1658\piacommand{delobjs} \label{delobjs}
1659\begin{verbatim}
1660Delete a set of objects with names matching a pattern (x?y*)
1661 Usage: delobjs nameobjpattern
1662
1663 Related commands: del rename
1664\end{verbatim}
1665\piacommand{listdirs} \label{listdirs}
1666\begin{verbatim}
1667Prints the list of directories
1668 Usage: listdirs [patt=*]
1669 patt : * , ?
1670\end{verbatim}
1671\piacommand{listobjs} \label{listobjs}
1672\begin{verbatim}
1673Prints the list of objects (Alias: ls)
1674 Usage: listobjs [patt=*]
1675 Or listobjs patt VarName
1676 Obj. name pattern patt in the form abc?x* or /*/x?y ...
1677\end{verbatim}
1678\piacommand{ls} \label{ls}
1679\begin{verbatim}
1680 Alias for listobjs
1681 Usage: ls [patt=*] [VarName]
1682\end{verbatim}
1683\piacommand{mkdir} \label{mkdir}
1684\begin{verbatim}
1685Create a directory
1686 Usage: mkdir dirname [true]
1687 if second argument==true, the directory's KeepOld attribute is set to true
1688\end{verbatim}
1689\piacommand{mv} \label{mv}
1690\begin{verbatim}
1691Rename an object (Alias: rename)
1692 Usage: mv nameobj namenew
1693 Related commands: rename del delobjs
1694\end{verbatim}
1695\piacommand{pwd} \label{pwd}
1696\begin{verbatim}
1697Prints current directory
1698 Usage: pwd
1699\end{verbatim}
1700\piacommand{rename} \label{rename}
1701\begin{verbatim}
1702Rename an object (Alias: mv)
1703 Usage: rename nameobj namenew
1704 Related commands: mv del delobjs
1705\end{verbatim}
1706\piacommand{rm} \label{rm}
1707\begin{verbatim}
1708Deletes an object (Alias: del)
1709 Usage: rm nameobj [nameobj2 ...]
1710 Related commands: del delobjs rename
1711\end{verbatim}
1712\piacommand{rmdir} \label{rmdir}
1713\begin{verbatim}
1714Removes an empty directory
1715 Usage: remove dirname
1716\end{verbatim}
1717\piacommand{setdiratt} \label{setdiratt}
1718\begin{verbatim}
1719Sets directory attributes
1720 Usage: setdiratt dirname KeepOldFlag(=true/false)
1721 KeepOldFlag=true Object with the same name is moved to old
1722 when adding objects
1723\end{verbatim}
1724\subsection{Objects} \label{Objects}
1725\noindent
1726\piacommand{line2nt} \label{line2nt}
1727\begin{verbatim}
1728Fills (append) an NTuple from the line content
1729 Usage: line2nt ntname col0 col1 ...
1730 Related commands: newnt line2vec ntline2var ntcol2var
1731\end{verbatim}
1732\piacommand{line2vec} \label{line2vec}
1733\begin{verbatim}
1734Creates a vector from the line
1735 Usage: line2vec vecname v0 v1 v2 ...
1736 Related commands: newvec line2nt
1737\end{verbatim}
1738\piacommand{newdt} \label{newdt}
1739\begin{verbatim}
1740Creates a datatable
1741 Usage: newdt name v1:t1 v2:t2 v3:t3 .. vn:tn
1742 newdt name nvar
1743 vi : variable name
1744 ti : variable type
1745 r8,r4 for 8 and 4 bytes float
1746 i8,i4 for 8 and 4 bytes signed integer
1747 s for string
1748 Related commands: newnt newh1d newh2d newprof[e] newgfd
1749\end{verbatim}
1750\piacommand{newgfd} \label{newgfd}
1751\begin{verbatim}
1752Creates GeneralFit Data object
1753 Usage: newgfd nvar nalloc [errx(0/1)]
1754 Related commands: newh1d newh2d newprof[e] newdt newnt
1755\end{verbatim}
1756\piacommand{newh1d} \label{newh1d}
1757\begin{verbatim}
1758Creates a 1D histogramm
1759 Usage: newh1d name xmin xmax nbin
1760 Related commands: newh2d newprof[e] newdt newnt newgfd
1761\end{verbatim}
1762\piacommand{newh2d} \label{newh2d}
1763\begin{verbatim}
1764Creates a 2D histogramm
1765 Usage: newh2d name xmin xmax nbinx ymin ymax nbiny
1766 Related commands: newh1d newprof[e] newdt newnt newgfd
1767\end{verbatim}
1768\piacommand{newmtx} \label{newmtx}
1769\begin{verbatim}
1770Creates (and optionaly fills) a matrix
1771 Usage: newmtx name sizeX(Col) sizeY(Lines) [f(i,j) [dopt] ]
1772 Related commands: newvec
1773\end{verbatim}
1774\piacommand{newnt} \label{newnt}
1775\begin{verbatim}
1776Creates a ntuple
1777 Usage: newnt name v1 v2 v3 .. vn
1778 newnt name nvar
1779 Related commands: newdt newh1d newh2d newprof[e] newgfd
1780\end{verbatim}
1781\piacommand{newprof} \label{newprof}
1782\begin{verbatim}
1783Creates a profile histogramm
1784 Usage: newprof name xmin xmax nbin [ymin ymax]
1785 Errors represent the data spread in the X bin
1786 Related commands: newh1d newh2d newprofe newdt newnt newgfd
1787\end{verbatim}
1788\piacommand{newprofe} \label{newprofe}
1789\begin{verbatim}
1790Creates a profile histogramm
1791 Usage: newprofe name xmin xmax nbin [ymin ymax]
1792 Errors represent the error on the data mean in the X bin
1793 Related commands: newh1d newh2d newprof newdt newnt newgfd
1794\end{verbatim}
1795\piacommand{newvec} \label{newvec}
1796\begin{verbatim}
1797Creates (and optionaly fills) a vector
1798 Usage: newvec name size [f(i) [dopt] ]
1799 Related commands: newmtx line2vec
1800\end{verbatim}
1801\piacommand{ntcol2var} \label{ntcol2var}
1802\begin{verbatim}
1803Object NTupleInterface column to an interpreter variable
1804 Usage: ntline2var objname column_number varname [LoopParam start:end[:step] ]
1805 Related commands: vec2var ntline2var
1806\end{verbatim}
1807\piacommand{ntline2var} \label{ntline2var}
1808\begin{verbatim}
1809Object NTupleInterface line to an interpreter variable
1810 Usage: ntline2var objname line_number varname
1811 Related commands: vec2var ntcol2var
1812\end{verbatim}
1813\piacommand{objaoper} \label{objaoper}
1814\begin{verbatim}
1815Perform an operation through the object adapter NObjMgrAdapter::PerformOperation()
1816 Usage: objaoper objname operation [arg1 ...]
1817 Examples of defined operations :
1818 Matrices: row indx_row , col indx_col
1819 Arrays: slicexy indx_Z , slicexz indx_Y, sliceyz indxX
1820
1821\end{verbatim}
1822\piacommand{vec2var} \label{vec2var}
1823\begin{verbatim}
1824Vector content to an interpreter variable varname = 'v0 v1 v2 ...'
1825 Usage: line2vec vecname varname [LoopParam start:end[:step] ]
1826 Related commands: line2vec ntline2var
1827\end{verbatim}
1828\subsection{PIACmd} \label{PIACmd}
1829piapp interpreter (class PIACmd) additional builtin commands
1830 \\[2mm] \noindent
1831\piahelpitem{exitpiapp} \label{exitpiapp}
1832\begin{verbatim}
1833To end the piapp session
1834\end{verbatim}
1835\piahelpitem{helpwindow} \label{helpwindow}
1836\begin{verbatim}
1837To display the Help window
1838\end{verbatim}
1839\piahelpitem{stop} \label{stop}
1840\begin{verbatim}
1841To stop (break) interpreter (PIACmd/Commander) execution
1842\end{verbatim}
1843\subsection{SkyMapCmd} \label{SkyMapCmd}
18444 Pi spherical, local maps manipulation commands
1845and spherical harmonics analysis Ylm.
1846 This is mainly Based on SOPHYA SkyMap and Samba modules.
1847 \\[2mm] \noindent
1848\piacommand{alm2cl} \label{alm2cl}
1849\begin{verbatim}
1850Project alm to cl
1851 Usage: alm2cl alm cl
1852\end{verbatim}
1853\piacommand{alm2map} \label{alm2map}
1854\begin{verbatim}
1855Generate SkyMap map(double) from Alm
1856 Usage: alm2map almmat map(double) nside
1857 (see command settypemap)
1858\end{verbatim}
1859\piacommand{cl2llcl} \label{cl2llcl}
1860\begin{verbatim}
1861Project cl to l*(l+1)*cl
1862 Usage: cl2llcl cl llcl
1863\end{verbatim}
1864\piacommand{cl2map} \label{cl2map}
1865\begin{verbatim}
1866Generate SkyMap map(double) from Cl
1867 Usage: cl2map clvec map(double) nside [fwhm]
1868 (see command settypemap)
1869\end{verbatim}
1870\piacommand{clmean} \label{clmean}
1871\begin{verbatim}
1872Compute mean for a cl vector
1873 Usage: clmean cl imin,imax [meanvarname]
1874 imin,imax = compute between these indices
1875 meanvarname = variable name to store mean
1876\end{verbatim}
1877\piacommand{clmult} \label{clmult}
1878\begin{verbatim}
1879Multiply a cl by a constant
1880 Usage: clmult cl val
1881\end{verbatim}
1882\piacommand{clop} \label{clop}
1883\begin{verbatim}
1884operation on a cl
1885 Usage: clop cl(double) op1 cl1(double) [op2 cl2(double)] [op2 cl3(double)] [...]
1886 Do "cl op1= cl1", "cl op2=cl2", ...
1887 where op = +,-,*,/
1888\end{verbatim}
1889\piacommand{clrebin} \label{clrebin}
1890\begin{verbatim}
1891rebin a cl into an ntuple
1892 Usage: clrebin cl ntuple nbin,bin0
1893 nbin: rebin by nbin
1894 bin0: begin rebinning at bin bin0 (def=0)
1895\end{verbatim}
1896\piacommand{crmapmask} \label{crmapmask}
1897\begin{verbatim}
1898Create a map mask(double) (nside) between latitudes lat1,lat2 longitudes lon1,lon2
1899 Usage: crmapmask mapmsk(double) nside lat1,lat2 lon1,lon2 [valmsk,valnomsk]
1900 mask pixels between [lat1,lat2] ([-90,90] in degrees)
1901 and [lon1,lon2] ([0,360[ in degrees)
1902 (for no mask "!")
1903 valmsk=value to be written into masked pixels (def=0)
1904 valnomsk=value to be written into unmasked pixels (def=1)
1905 (see command settypemap)
1906\end{verbatim}
1907\piacommand{crmaskfrmap} \label{crmaskfrmap}
1908\begin{verbatim}
1909Create a map mask(double) (nside) relative to an other map(double) pixels values
1910 Usage: crmaskfrmap mapmsk(double) nside map(double) v1,v2 [valmsk,valnomsk]
1911 mask if v1<mapmsk(i)<v2
1912 valmsk=value to be written into masked pixels (def=0)
1913 valnomsk=value to be written into unmasked pixels (def=1)
1914\end{verbatim}
1915\piacommand{map2alm} \label{map2alm}
1916\begin{verbatim}
1917SkyMap map(double) to Alm
1918 Usage: map2alm map(double) almmat [lmax] [niter]
1919 lmax: if <=0 or "!" use default (3*nside-1)
1920 niter: number of iterations (<=0 or def=3)
1921\end{verbatim}
1922\piacommand{map2cl} \label{map2cl}
1923\begin{verbatim}
1924SkyMap map(double) to Cl
1925 Usage: map2cl map(double) clvec [lmax] [niter]
1926 lmax: if <=0 or "!" use default (3*nside-1)
1927 niter: number of iterations (<=0 or def=3)
1928\end{verbatim}
1929\piacommand{map2double} \label{map2double}
1930\begin{verbatim}
1931Convert a float map to a double map
1932 Usage: map2double map(float)
1933\end{verbatim}
1934\piacommand{map2float} \label{map2float}
1935\begin{verbatim}
1936Convert a double map to a float map
1937 Usage: map2float map(double)
1938\end{verbatim}
1939\piacommand{map2local} \label{map2local}
1940\begin{verbatim}
1941Project a map(double) into a local map(double)
1942 Usage: map2local map(double) localmap(double) nx,ny angleX,angleY phi0,theta0 [x0,y0] [angle]
1943 nx,ny: number of pixels in x(col),y(row) direction
1944 X-axis==phi, Y-axis==theta
1945 angleX,angleY: total angle aperture in x,y direction (degrees)
1946 phi0,theta0: define origin in phi,theta (degrees)
1947 x0,y0: map phi0,theta0 to pixel x0,y0 ("!" or def=middle of the localmap)
1948 angle: angle (degrees) of rotation between x-axis of map-coordinate system
1949 and the tangent to parallel on the sphere (def: 0.)
1950\end{verbatim}
1951\piacommand{map2map} \label{map2map}
1952\begin{verbatim}
1953Convert a map(double) into an other map type
1954 Usage: map2map map(double) type [nside]
1955 type= H for Healpix
1956 T for ThetaPhi
1957 if nside <=1 use nside from map
1958\end{verbatim}
1959\piacommand{mapcover} \label{mapcover}
1960\begin{verbatim}
1961Print the covering of a map(double)
1962 Usage: mapcover map(double) v1,v2 [varname]
1963 v1,v2: good pixels have v1<=val<=v2 (def=0.99,1.01)
1964 (use default (0.99,1.01): "!")
1965 $varname: percent of sky covering
1966\end{verbatim}
1967\piacommand{mapmult} \label{mapmult}
1968\begin{verbatim}
1969Multiply a map(double) by a constant
1970 Usage: mapmult map(double) cste
1971\end{verbatim}
1972\piacommand{mapop} \label{mapop}
1973\begin{verbatim}
1974operation on a map(double)
1975 Usage: mapop map(double) op1 map1(double) [op2 map2(double)] [op2 map3(double)] [...]
1976 Do "map op1= map1", "map op2=map2", ...
1977 where op = +,-,*,/
1978\end{verbatim}
1979\piacommand{maproj} \label{maproj}
1980\begin{verbatim}
1981Project a map(double) into an other one
1982 Usage: maproj map(double) mapproj(double) [nside]
1983 Create mapproj(nside) and project map into mapproj
1984 (use "maproj map mapproj" to make a copy)
1985\end{verbatim}
1986\piacommand{mapstat} \label{mapstat}
1987\begin{verbatim}
1988Statistics from a map(double)
1989 Usage: mapstat map(double) [msk(double)] [meanvarname] [sigmavarname]
1990 msk = mask sphere used as weight
1991 if msk(i)<=0 do not use that pixel
1992 if msk(i)>0 use that pixel with weight msk(i)
1993 msk = "!" means no mask sphere
1994 meanvarname = variable name to store mean
1995 sigmavarname = variable name to store sigma
1996 ("!" means do not store)
1997\end{verbatim}
1998\piacommand{maskmap} \label{maskmap}
1999\begin{verbatim}
2000Mask a map(double) with a mask map(double)
2001 Usage: maskmap map msk
2002 operation is map(i) *= msk(theta,phi)
2003\end{verbatim}
2004\piacommand{resol2szidx} \label{resol2szidx}
2005\begin{verbatim}
2006Compute SizeIndex value (=nside for HEALPix) for a
2007 given resolution, (resol in arcminutes)
2008 Usage: resol2szidx resol
2009\end{verbatim}
2010\piacommand{settypemap} \label{settypemap}
2011\begin{verbatim}
2012Set le type de map(double) par default
2013 Usage: settypemap type
2014 type= H for Healpix (default)
2015 T for ThetaPhi
2016\end{verbatim}
2017\piacommand{szidx2resol} \label{szidx2resol}
2018\begin{verbatim}
2019Compute resolution for a given SizeIndex (=nside for HEALPix)
2020 Usage: szidx2resol szidx_m
2021\end{verbatim}
2022\piacommand{typemap} \label{typemap}
2023\begin{verbatim}
2024Imprime le type de map
2025 Usage: typemap map
2026\end{verbatim}
2027\subsection{SophyaCmd} \label{SophyaCmd}
2028\noindent
2029\piacommand{errorellipse} \label{errorellipse}
2030\begin{verbatim}
2031 Adds an error ellipse, specified by its center (xc,yc)
2032 and error matrix (covariance) parameters SigX^2,SigY^2,Covar
2033 A global scaling parameters scale , graphic attributes and
2034 nomber of points can optionnaly be specified
2035 if the -fill flag specified, plots a filled ellipse
2036
2037\end{verbatim}
2038\piacommand{mollgrid} \label{mollgrid}
2039\begin{verbatim}
2040Creates a spherical coordinate grid in Molleweide projection
2041 Usage: mollgrid [Nb_Parallel] [Nb_Meridien] [graphic_att]
2042\end{verbatim}
2043\piacommand{setprjmoldefval} \label{setprjmoldefval}
2044\begin{verbatim}
2045Set default value for Molleweide projection of spherical maps (outside maps)
2046 Usage: setprjmoldefval OutOfMapValue
2047\end{verbatim}
2048\subsection{pawCmd} \label{pawCmd}
2049CERN PAW like expression plotting commands
2050 \\[2mm] \noindent
2051\piacommand{h/2d/geth} \label{hZ2dZgeth}
2052\begin{verbatim}
2053Get histo projections, bandes and slices
2054 h/2d/geth nameh2d : infos on 2D histogramme projections
2055 h/2d/geth h nameh2d px : copy X projection into histo h
2056 h/2d/geth h nameh2d py : copy Y projection into histo h
2057 h/2d/geth h nameh2d bx n : copy X band number n into histo h
2058 h/2d/geth h nameh2d by n : copy Y band number n into histo h
2059 h/2d/geth h nameh2d sx n : copy X slice number n into histo h
2060 h/2d/geth h nameh2d sy n : copy Y slice number n into histo h
2061 Related commands: h/plot/2d
2062\end{verbatim}
2063\piacommand{h/cadd} \label{hZcadd}
2064\begin{verbatim}
2065Add a constant to an histogram, a vector or a matrix
2066 h/cadd namehisto val
2067 Related commands: h/cmult h/oper
2068\end{verbatim}
2069\piacommand{h/cmult} \label{hZcmult}
2070\begin{verbatim}
2071Multiply an histogram, a vector or a matrix by a constant
2072 h/cmult namehisto val
2073 Related commands: h/cadd h/oper
2074\end{verbatim}
2075\piacommand{h/copy} \label{hZcopy}
2076\begin{verbatim}
2077Copy content of object1 into object2
2078 objects are Vector,Matrix,Histo,Histo2D
2079 h/copy namefrom nametocopy [i1[:i2]] [j1[:j2]] [ic1[:jc1]]
2080 copy obj1Dfrom(i1->i2) into obj1Dto(ic1->)
2081 copy obj2Dfrom(i1,j1->i2,j2) into obj2Dto(ic1,jc1->)
2082 Warning: elements from i1 to i2 included are copied
2083 If obj1Dto does not exist, is is created with size i2-i1+1
2084 or obj2Dto with size i2-i1+1,j2-j1+1
2085 The adressed content of obj?Dfrom is overwritten
2086 The non-adressed content of obj?Dfrom is left unchanged
2087 Related commands: copy
2088\end{verbatim}
2089\piacommand{h/deriv} \label{hZderiv}
2090\begin{verbatim}
2091Derivate a 1D histogram
2092 h/deriv nameh1d
2093 Related commands: h/integ v/integ v/deriv
2094\end{verbatim}
2095\piacommand{h/err} \label{hZerr}
2096\begin{verbatim}
2097Set Histo,Histo2D error to function of bin content value
2098 h/err namehisto expr_func
2099 Related commands: h/set/err
2100\end{verbatim}
2101\piacommand{h/get\_vec} \label{hZgetZvec}
2102\begin{verbatim}
2103Get content of histogram 1D profile or 2D into vector (matrix)
2104 h/get_vec nameh1d namevector [cont,err2,absc] [proj]
2105 h/get_vec nameh2d namematrix [cont,err2,absc]
2106 cont : get histogramme content
2107 err2 : get histogramme error^2
2108 absc : get histogramme low bin abscissa (1D only)
2109 proj :
2110 show : show available projections for Histo2D
2111 px : get X projection
2112 py : get Y projection
2113 bx n : get X band number n
2114 by n : get Y band number n
2115 sx n : get X slice number n
2116 sy n : get Y slice number n
2117 Related commands: h/put_vec
2118\end{verbatim}
2119\piacommand{h/integ} \label{hZinteg}
2120\begin{verbatim}
2121Integrate a 1D histogram
2122 h/integ nameh1d [norm]
2123 norm<=0 means no normalisation (def norm=1)
2124 Related commands: h/deriv v/integ v/deriv
2125\end{verbatim}
2126\piacommand{h/oper} \label{hZoper}
2127\begin{verbatim}
2128Operation on histograms vectors or matrices
2129 h/oper @ h1 h2 hres
2130 hres = h1 @ h2 with @ = (+,-,*,/)
2131 For vectors and matrices, operations are elements by elements
2132 Related commands: h/cadd h/cmult
2133\end{verbatim}
2134\piacommand{h/plot/2d} \label{hZplotZ2d}
2135\begin{verbatim}
2136Specific plot for 2D histogrammes
2137 h/plot/2d nameh2d show : infos on 2D histogramme projections
2138 h/plot/2d nameh2d h [dopt] : plot 2D histogramme
2139 h/plot/2d nameh2d px [dopt] : plot X projection
2140 h/plot/2d nameh2d py [dopt] : plot Y projection
2141 h/plot/2d nameh2d bx n [dopt] : plot X band number n
2142 h/plot/2d nameh2d by n [dopt] : plot Y band number n
2143 h/plot/2d nameh2d sx n [dopt] : plot X slice number n
2144 h/plot/2d nameh2d sy n [dopt] : plot Y slice number n
2145 n < 0 means Show Info
2146\end{verbatim}
2147\piacommand{h/put\_vec} \label{hZputZvec}
2148\begin{verbatim}
2149Put content of vector (matrix) into content of histogram 1D or 2D
2150 h/put_vec nameh1d namevector [cont,err2]
2151 h/put_vec nameh2d namematrix [cont,err2]
2152 cont : put into histogramme content
2153 err2 : put into histogramme error^2
2154 Related commands: h/get_vec
2155\end{verbatim}
2156\piacommand{h/rebin} \label{hZrebin}
2157\begin{verbatim}
2158Rebin a 1D histogram or profile
2159 h/rebin nameh1d nbin
2160\end{verbatim}
2161\piacommand{h/set/cont} \label{hZsetZcont}
2162\begin{verbatim}
2163Set Histo,Histo2D content for range of bins or range of values
2164 h/set/cont namehisto setvalue i1[:i2] [j1[:j2]]
2165 set content to setvalue for bin range i1:i2 j1:j2
2166 h/set/cont namehisto setvalue v v1:v2
2167 set content to setvalue for content values range v1:v2
2168 h/set/cont namehisto setvalue e e1:e2
2169 set content to setvalue for error values range v1:v2
2170 Related commands: h/set/err
2171\end{verbatim}
2172\piacommand{h/set/err} \label{hZsetZerr}
2173\begin{verbatim}
2174Set Histo,Histo2D errors for range of bins or range of values
2175 h/set/err namehisto setvalue i1[:i2] [j1[:j2]]
2176 set error to setvalue for bin range i1:i2 j1:j2
2177 h/set/err namehisto setvalue v v1:v2
2178 set error to setvalue for content values range v1:v2
2179 h/set/err namehisto setvalue e e1:e2
2180 set error to setvalue for error values range v1:v2
2181 Related commands: h/set/cont
2182\end{verbatim}
2183\piacommand{herr/mean} \label{herrZmean}
2184\begin{verbatim}
2185Perform bin mean computation for HistoErr and Histo2DErr
2186 herr/mean nameherr todo
2187 todo = +1 : compute mean
2188 = -1 : cancel computation
2189\end{verbatim}
2190\piacommand{herr/variance} \label{herrZvariance}
2191\begin{verbatim}
2192Perform bin mean and variance computation for HistoErr and Histo2DErr
2193 herr/variance nameherr todo
2194 todo = +1 : compute mean and variance
2195 = -1 : cancel computation
2196\end{verbatim}
2197\piacommand{n/assoc/col} \label{nZassocZcol}
2198\begin{verbatim}
2199Merge ntuples columns with an association index
2200 n/assoc/col ntass[,u/i] nt_1[,ext] nt_2[,ext] nt_assoc[,icass]
2201 Merge ntuples nt_1 and nt_2 columns into ntuple ntass
2202 with line association number given by ntuple nt_assoc
2203 ---
2204 icass: association number given by column "icass" of nt_assoc (def=0)
2205 ---
2206 ext : character string to add at the end of the ntuple variable names
2207 if "ext"="!" no extension is added
2208 if no "ext" is given, automatic extension "_0" "_1" "_2" ...
2209 ---
2210 u : do the union of all the lines of nt_1 and nt_2
2211 (all ssociated and un-associated lines of nt_1 and nt_2)
2212 i : do the intersection of all the lines of nt_1 and nt_2
2213 (only associated lines of nt_1 and nt_2)
2214 def : write all lines of nt_1 with possible associated line of nt_2
2215 (number of entries of ntass = number of entries of nt_1)
2216\end{verbatim}
2217\piacommand{n/copy} \label{nZcopy}
2218\begin{verbatim}
2219Copy all or some variables of a ntuple into another new ntuple
2220 n/merge ntnew nt [vname1 vname2 vname3 ...]
2221\end{verbatim}
2222\piacommand{n/merge} \label{nZmerge}
2223\begin{verbatim}
2224Merge ntuples (by adding lines)
2225 n/merge nt nt_1 nt_2 ... nt_n
2226 Merge ntuples nt_i lines into ntuple nt
2227\end{verbatim}
2228\piacommand{n/merge/col} \label{nZmergeZcol}
2229\begin{verbatim}
2230Merge ntuples (by adding columns for each line)
2231 n/merge/col nt nt_1[,ext] nt_2[,ext] ... nt_n[,ext]
2232 Merge ntuples nt_i columns into ntuple nt
2233 ext : character string to add at the end of the ntuple variable names
2234 if "ext"="!" no extension is added
2235 if no "ext" is given, automatic extension "_0" "_1" "_2" ...
2236\end{verbatim}
2237\piacommand{n/pl} \label{nZpl}
2238\begin{verbatim}
2239alias to n/plot (see n/plot)
2240\end{verbatim}
2241\piacommand{n/plot} \label{nZplot}
2242\begin{verbatim}
2243Plot NTuple variables "a la paw" (alias n/pl)
2244 n/plot nameobj.x_exp [cut] [w_exp] [loop] [gratt]
2245 n/plot nameobj.y_exp%x_exp [cut] [loop] [gratt]
2246 n/plot nameobj.z_exp%y_exp%x_exp [cut] [loop] [gratt]
2247 for default use ! , loop=i1[:i2[:di]]
2248 for 1 dimensional (1D) projection:
2249 use graphic option "keepbin" to keep previous
2250 plot binning for 1D distribution
2251 Related commands: plot2dw plot3d
2252\end{verbatim}
2253\piacommand{n/proj} \label{nZproj}
2254\begin{verbatim}
2255Project NTuple in histogram (1D or 2D) a la paw
2256 n/proj nameproj nameobj.x_exp [cut] [w_exp] [loop] [gratt]
2257 n/proj nameproj nameobj.y_exp%x_exp [cut] [w_exp] [loop] [gratt]
2258 for default use ! , loop=i1[:i2[:di]]
2259 for 1 dimensional (1D) projection:
2260 no display is performed if "nameproj" is an existing histogram
2261 unless a graphic option "gratt" is given
2262 Related commands: projh1d projh2d projprof exptovec
2263\end{verbatim}
2264\piacommand{n/read} \label{nZread}
2265\begin{verbatim}
2266Read columns in an ASCII file and fill a NTuple or a DataTable
2267 n/read nt fascii [options] var_1,c_1 var_2,c_2 ... var_n,c_n
2268 nt : NTuple or DataTable (see options) name
2269 var_i,c_i : variable name, associated column in ASCII file [0,n[
2270 where [options] are:
2271 "-dt": create a DataTable of double instead of a NTuple
2272 "=s": separator character is 's' (could be " ")
2273 "-^abcd": do not read lines beginning with string "abcd"
2274 "+^abcd": read only lines beginning with string "abcd"
2275 "-abcd": do not read lines which contain string "abcd"
2276 "+abcd": read only lines which contain string "abcd"
2277 these options may be repeated (ex: "-^abcd" "-^xyz")
2278 - in case of "do not read" options are added with logical AND
2279 - in case of "read only" options are added with logical OR
2280\end{verbatim}
2281\piacommand{n/scan} \label{nZscan}
2282\begin{verbatim}
2283Scan NTuple a la paw
2284 n/scan nameobj[.exp1%exp2%exp3] cut loop
2285 [-f:filename] [list_of_variables]
2286 loop : iev1[:iev2[:diev]] or !
2287 cut : cut expression or 1. or !
2288 list_of_variables : default is all variables
2289 : var1 var2 var3 ... varn
2290 : var1 : var2 (from var1 to var2)
2291 : : var2 (from first variable to var2)
2292 : var1 : (from var1 to last variable)
2293 ex: "v1 : v3 v7 v4 : v6 v2 v9 :"
2294 exp1%exp2%exp3 :
2295 if given add exp1,exp2,exp3 to the variable list
2296 -f:filename : write into "filename", Default is to stdout
2297\end{verbatim}
2298\piacommand{reset} \label{reset}
2299\begin{verbatim}
2300Reset histograms vectors or matrix
2301 reset nameobj
2302\end{verbatim}
2303\piacommand{v/deriv} \label{vZderiv}
2304\begin{verbatim}
2305Derivate a TVector / vector
2306 v/deriv namevec [deriv_option]
2307 deriv_option -1 replace v[i] with v[i]-v[i-1]
2308 0 replace v[i] with (v[i+1]-v[i-1])/2 (default)
2309 +1 replace v[i] with v[i+1]-v[i]
2310 Related commands: h/integ h/deriv v/integ
2311\end{verbatim}
2312\piacommand{v/integ} \label{vZinteg}
2313\begin{verbatim}
2314Integrate a TVector / vector
2315 v/integ namevec [norm]
2316 norm<=0 means no normalisation (def norm=0)
2317 Related commands: h/integ h/deriv v/deriv
2318\end{verbatim}
2319\piacommand{v/sort} \label{vZsort}
2320\begin{verbatim}
2321Sort a vector into itself
2322 v/sort namevec [+1/-1]
2323 "+1" means increasing order, "-1" decreasing order
2324\end{verbatim}
Note: See TracBrowser for help on using the repository browser.