source: MML/trunk/mml/doc_html/mml/monitorpv.html @ 4

Last change on this file since 4 was 4, checked in by zhangj, 10 years ago

Initial import--MML version from SOLEIL@2013

File size: 10.3 KB
Line 
1<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
2                "http://www.w3.org/TR/REC-html40/loose.dtd">
3<html>
4<head>
5  <title>Description of monitorpv</title>
6  <meta name="keywords" content="monitorpv">
7  <meta name="description" content="MONITORPV -">
8  <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
9  <meta name="generator" content="m2html &copy; 2003 Guillaume Flandin">
10  <meta name="robots" content="index, follow">
11  <link type="text/css" rel="stylesheet" href="../m2html.css">
12</head>
13<body>
14<a name="_top"></a>
15<div><a href="../index.html">Home</a> &gt;  <a href="index.html">mml</a> &gt; monitorpv.m</div>
16
17<!--<table width="100%"><tr><td align="left"><a href="../index.html"><img alt="<" border="0" src="../left.png">&nbsp;Master index</a></td>
18<td align="right"><a href="index.html">Index for mml&nbsp;<img alt=">" border="0" src="../right.png"></a></td></tr></table>-->
19
20<h1>monitorpv
21</h1>
22
23<h2><a name="_name"></a>PURPOSE <a href="#_top"><img alt="^" border="0" src="../up.png"></a></h2>
24<div class="box"><strong>MONITORPV -</strong></div>
25
26<h2><a name="_synopsis"></a>SYNOPSIS <a href="#_top"><img alt="^" border="0" src="../up.png"></a></h2>
27<div class="box"><strong>function [Out1, Out2, Out3, Out4, Out5, Out6, Out7, Out8, Out9, Out10] = monitorpv(In1, In2, In3, In4, In5, In6, In7, In8, In9, In10); </strong></div>
28
29<h2><a name="_description"></a>DESCRIPTION <a href="#_top"><img alt="^" border="0" src="../up.png"></a></h2>
30<div class="fragment"><pre class="comment">MONITORPV -
31   [Out1, Out2, ... , t] = Monitor(FuncStr1, FuncStr2, ... , t);
32
33   
34  INPUTS
35  FuncStr1, FuncStr2, ... = functions to be evaluated (max. 9) (string)
36                                      (must return a scalar or column vector)
37  t = time (row vector)
38
39  OUTPUTS
40  tout (row vector) = time at the start of each set of measurements,
41                     tout will be the last output matrix
42  Note: one should compare tout to t, to varify timing accuracy
43
44  EXAMPLES
45  1. [BPMx, BPMy, tout]     = monitorpv('getx', 'getz', t);
46  2. [VCMam, Current, tout] = monitorpv('getam(''VCOR'')', 'getdcct', t);</pre></div>
47
48<!-- crossreference -->
49<h2><a name="_cross"></a>CROSS-REFERENCE INFORMATION <a href="#_top"><img alt="^" border="0" src="../up.png"></a></h2>
50This function calls:
51<ul style="list-style-image:url(../matlabicon.gif)">
52</ul>
53This function is called by:
54<ul style="list-style-image:url(../matlabicon.gif)">
55</ul>
56<!-- crossreference -->
57
58
59<h2><a name="_source"></a>SOURCE CODE <a href="#_top"><img alt="^" border="0" src="../up.png"></a></h2>
60<div class="fragment"><pre>0001 <a name="_sub0" href="#_subfunctions" class="code">function [Out1, Out2, Out3, Out4, Out5, Out6, Out7, Out8, Out9, Out10] = monitorpv(In1, In2, In3, In4, In5, In6, In7, In8, In9, In10);</a>
610002 <span class="comment">%MONITORPV -</span>
620003 <span class="comment">%   [Out1, Out2, ... , t] = Monitor(FuncStr1, FuncStr2, ... , t);</span>
630004 <span class="comment">%</span>
640005 <span class="comment">%</span>
650006 <span class="comment">%  INPUTS</span>
660007 <span class="comment">%  FuncStr1, FuncStr2, ... = functions to be evaluated (max. 9) (string)</span>
670008 <span class="comment">%                                      (must return a scalar or column vector)</span>
680009 <span class="comment">%  t = time (row vector)</span>
690010 <span class="comment">%</span>
700011 <span class="comment">%  OUTPUTS</span>
710012 <span class="comment">%  tout (row vector) = time at the start of each set of measurements,</span>
720013 <span class="comment">%                     tout will be the last output matrix</span>
730014 <span class="comment">%  Note: one should compare tout to t, to varify timing accuracy</span>
740015 <span class="comment">%</span>
750016 <span class="comment">%  EXAMPLES</span>
760017 <span class="comment">%  1. [BPMx, BPMy, tout]     = monitorpv('getx', 'getz', t);</span>
770018 <span class="comment">%  2. [VCMam, Current, tout] = monitorpv('getam(''VCOR'')', 'getdcct', t);</span>
780019
790020 <span class="comment">%</span>
800021 <span class="comment">%% Written by Gregory J. Portmann</span>
810022
820023     <span class="keyword">if</span> nargin &gt; 10
830024         error(<span class="string">'10 inputs maximum'</span>);
840025     <span class="keyword">end</span>
850026
860027     FuncNum = nargin - 1;
870028     eval([<span class="string">'t = In'</span>,num2str(nargin),<span class="string">';'</span>]);
880029
890030     <span class="keyword">if</span> nargout &lt; nargin
900031         disp(<span class="string">'WARNING:  Not enough outputs arguments!'</span>);
910032     <span class="keyword">end</span>
920033
930034     <span class="comment">% Create data arrays</span>
940035     <span class="keyword">if</span> nargout &gt;=1 &amp; FuncNum &gt;= 1
950036         a = eval(In1);
960037         Out1 = zeros(size(a,1), size(t,2));
970038     <span class="keyword">end</span>
980039     <span class="keyword">if</span> nargout &gt;=2 &amp; FuncNum &gt;= 2
990040         a = eval(In2);
1000041         Out2 = zeros(size(a,1), size(t,2));
1010042     <span class="keyword">end</span>
1020043     <span class="keyword">if</span> nargout &gt;=3 &amp; FuncNum &gt;= 3
1030044         a = eval(In3);
1040045         Out3 = zeros(size(a,1), size(t,2));
1050046     <span class="keyword">end</span>
1060047     <span class="keyword">if</span> nargout &gt;=4 &amp; FuncNum &gt;= 4
1070048         a = eval(In4);
1080049         Out4 = zeros(size(a,1), size(t,2));
1090050     <span class="keyword">end</span>
1100051     <span class="keyword">if</span> nargout &gt;=5 &amp; FuncNum &gt;= 5
1110052         a = eval(In5);
1120053         Out5 = zeros(size(a,1), size(t,2));
1130054     <span class="keyword">end</span>
1140055     <span class="keyword">if</span> nargout &gt;=6 &amp; FuncNum &gt;= 6
1150056         a = eval(In6);
1160057         Out6 = zeros(size(a,1), size(t,2));
1170058     <span class="keyword">end</span>
1180059     <span class="keyword">if</span> nargout &gt;=7 &amp; FuncNum &gt;= 7
1190060         a = eval(In7);
1200061         Out7 = zeros(size(a,1), size(t,2));
1210062     <span class="keyword">end</span>
1220063     <span class="keyword">if</span> nargout &gt;=8 &amp; FuncNum &gt;= 8
1230064         a = eval(In8);
1240065         Out8 = zeros(size(a,1), size(t,2));
1250066     <span class="keyword">end</span>
1260067     <span class="keyword">if</span> nargout &gt;=9 &amp; FuncNum &gt;= 9
1270068         a = eval(In9);
1280069         Out9 = zeros(size(a,1), size(t,2));
1290070     <span class="keyword">end</span>
1300071
1310072     <span class="comment">% Read once to setup channels (for SCA)</span>
1320073     i=1;
1330074     <span class="keyword">if</span> nargout &gt;=1 &amp; FuncNum &gt;= 1
1340075         Out1(:,i) = [eval(In1)];
1350076     <span class="keyword">end</span>
1360077     <span class="keyword">if</span> nargout &gt;=2 &amp; FuncNum &gt;= 2
1370078         Out2(:,i) = [eval(In2)];
1380079     <span class="keyword">end</span>
1390080     <span class="keyword">if</span> nargout &gt;=3 &amp; FuncNum &gt;= 3
1400081         Out3(:,i) = [eval(In3)];
1410082     <span class="keyword">end</span>
1420083     <span class="keyword">if</span> nargout &gt;=4 &amp; FuncNum &gt;= 4
1430084         Out4(:,i) = [eval(In4)];
1440085     <span class="keyword">end</span>
1450086     <span class="keyword">if</span> nargout &gt;=5 &amp; FuncNum &gt;= 5
1460087         Out5(:,i) = [eval(In5)];
1470088     <span class="keyword">end</span>
1480089     <span class="keyword">if</span> nargout &gt;=6 &amp; FuncNum &gt;= 6
1490090         Out6(:,i) = [eval(In6)];
1500091     <span class="keyword">end</span>
1510092     <span class="keyword">if</span> nargout &gt;=7 &amp; FuncNum &gt;= 7
1520093         Out7(:,i) = [eval(In7)];
1530094     <span class="keyword">end</span>
1540095     <span class="keyword">if</span> nargout &gt;=8 &amp; FuncNum &gt;= 8
1550096         Out8(:,i) = [eval(In8)];
1560097     <span class="keyword">end</span>
1570098     <span class="keyword">if</span> nargout &gt;=9 &amp; FuncNum &gt;= 9
1580099         Out9(:,i) = [eval(In9)];
1590100     <span class="keyword">end</span>
1600101
1610102
1620103     <span class="comment">% Get data</span>
1630104     <span class="comment">%t0 = clock;</span>
1640105     t0 = gettime;
1650106     <span class="keyword">for</span> i = 1:size(t,2);
1660107         <span class="comment">%tout(1,i) = etime(clock,t0);</span>
1670108         <span class="keyword">while</span> gettime-t0 &lt; t(i)-.002
1680109         <span class="keyword">end</span>
1690110
1700111         tout(1,i) = gettime-t0;
1710112
1720113         <span class="keyword">if</span> nargout &gt;=1 &amp; FuncNum &gt;= 1
1730114             Out1(:,i) = [eval(In1)];
1740115         <span class="keyword">end</span>
1750116         <span class="keyword">if</span> nargout &gt;=2 &amp; FuncNum &gt;= 2
1760117             Out2(:,i) = [eval(In2)];
1770118         <span class="keyword">end</span>
1780119         <span class="keyword">if</span> nargout &gt;=3 &amp; FuncNum &gt;= 3
1790120             Out3(:,i) = [eval(In3)];
1800121         <span class="keyword">end</span>
1810122         <span class="keyword">if</span> nargout &gt;=4 &amp; FuncNum &gt;= 4
1820123             Out4(:,i) = [eval(In4)];
1830124         <span class="keyword">end</span>
1840125         <span class="keyword">if</span> nargout &gt;=5 &amp; FuncNum &gt;= 5
1850126             Out5(:,i) = [eval(In5)];
1860127         <span class="keyword">end</span>
1870128         <span class="keyword">if</span> nargout &gt;=6 &amp; FuncNum &gt;= 6
1880129             Out6(:,i) = [eval(In6)];
1890130         <span class="keyword">end</span>
1900131         <span class="keyword">if</span> nargout &gt;=7 &amp; FuncNum &gt;= 7
1910132             Out7(:,i) = [eval(In7)];
1920133         <span class="keyword">end</span>
1930134         <span class="keyword">if</span> nargout &gt;=8 &amp; FuncNum &gt;= 8
1940135             Out8(:,i) = [eval(In8)];
1950136         <span class="keyword">end</span>
1960137         <span class="keyword">if</span> nargout &gt;=9 &amp; FuncNum &gt;= 9
1970138             Out9(:,i) = [eval(In9)];
1980139         <span class="keyword">end</span>
1990140     <span class="keyword">end</span>
2000141     
2010142     <span class="comment">% Output number for tout</span>
2020143     <span class="keyword">if</span> nargout &gt; FuncNum
2030144         OutStr = [<span class="string">'Out'</span>,num2str(FuncNum+1)];
2040145             eval([OutStr,<span class="string">'=tout;'</span>]);
2050146     <span class="keyword">end</span>
2060147</pre></div>
207<hr><address>Generated on Mon 21-May-2007 15:29:18 by <strong><a href="http://www.artefact.tk/software/matlab/m2html/">m2html</a></strong> &copy; 2003</address>
208</body>
209</html>
Note: See TracBrowser for help on using the repository browser.