source: MML/trunk/machine/SOLEIL/doc_html/machine/Soleil/common/cycling/createcyclecurvefull.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: 7.0 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 createcyclecurvefull</title>
6  <meta name="keywords" content="createcyclecurvefull">
7  <meta name="description" content="INPUTS">
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="#">machine</a> &gt; <a href="#">Soleil</a> &gt; <a href="../index.html">common</a> &gt; <a href="index.html">cycling</a> &gt; createcyclecurvefull.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 machine/Soleil/common/cycling&nbsp;<img alt=">" border="0" src="../../../../right.png"></a></td></tr></table>-->
19
20<h1>createcyclecurvefull
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>INPUTS</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 createcylecurvefull(varargin); </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"> INPUTS
311. Family</pre></div>
32
33<!-- crossreference -->
34<h2><a name="_cross"></a>CROSS-REFERENCE INFORMATION <a href="#_top"><img alt="^" border="0" src="../../../../up.png"></a></h2>
35This function calls:
36<ul style="list-style-image:url(../../../../matlabicon.gif)">
37<li><a href="setcyclecurve.html" class="code" title="function setcyclecurve(dev_name, curve)">setcyclecurve</a> SETCYCLECURVE - Set curve for cycling magnet in Dserver</li></ul>
38This function is called by:
39<ul style="list-style-image:url(../../../../matlabicon.gif)">
40</ul>
41<!-- crossreference -->
42
43<h2><a name="_subfunctions"></a>SUBFUNCTIONS <a href="#_top"><img alt="^" border="0" src="../../../../up.png"></a></h2>
44<ul style="list-style-image:url(../../../../matlabicon.gif)">
45<li><a href="#_sub1" class="code">function curve = makecurve(Inom,Imax,MagnetType)</a></li></ul>
46<h2><a name="_source"></a>SOURCE CODE <a href="#_top"><img alt="^" border="0" src="../../../../up.png"></a></h2>
47<div class="fragment"><pre>0001 <a name="_sub0" href="#_subfunctions" class="code">function createcylecurvefull(varargin);</a>
480002 <span class="comment">% INPUTS</span>
490003 <span class="comment">%1. Family</span>
500004
510005 DisplayFlag = 1;
520006
530007 <span class="comment">% Parse input options</span>
540008 InputFlags = {};
550009 <span class="keyword">for</span> i = length(varargin):-1:1
560010     <span class="keyword">if</span> strcmpi(varargin{i},<span class="string">'Display'</span>)
570011         DisplayFlag = 1;
580012         varargin(i) = [];
590013     <span class="keyword">elseif</span> strcmpi(varargin{i},<span class="string">'NoDisplay'</span>)
600014         DisplayFlag = 0;
610015         varargin(i) = [];
620016     <span class="keyword">end</span>
630017 <span class="keyword">end</span>
640018
650019 <span class="comment">%% Load Golden Magnet parameters</span>
660020
670021 FileName = getfamilydata(<span class="string">'OpsData'</span>, <span class="string">'LatticeFile'</span>);
680022 DirectoryName = getfamilydata(<span class="string">'Directory'</span>, <span class="string">'OpsData'</span>);
690023 cnf=load([DirectoryName FileName]);
700024 <span class="comment">%% Setpoints values</span>
710025 Setpoint = cnf.ConfigSetpoint;
720026
730027 Family = varargin{1};
740028
750029 [FamilyIndex, AO] = isfamily(Family);
760030 <span class="keyword">if</span> isempty(FamilyIndex)
770031     error(<span class="string">'Unknown Family'</span>);
780032 <span class="keyword">end</span>
790033
800034 <span class="comment">% create cycling family name</span>
810035 CycleFamily = [<span class="string">'Cycle'</span> Family];
820036 [CycleIndex, CycleAO] = isfamily(CycleFamily);
830037
840038 <span class="comment">%% Family switchyard</span>
850039 Inom = Setpoint.(Family).Data;
860040 <span class="keyword">if</span> (ismemberof(CycleFamily,<span class="string">'Cyclage'</span>))
870041      <span class="keyword">for</span> k = 1:tango_group_size(CycleAO.GroupId)
880042         <span class="comment">%% PAS BEAU --  utiliser le mml pour etre sur de la correspondance</span>
890043         CycleAO.Inom(k) = cnf.ConfigSetpoint.(Family).Data(k);
900044         <span class="comment">%% create cycling curve</span>
910045         curve = <a href="#_sub1" class="code" title="subfunction curve = makecurve(Inom,Imax,MagnetType)">makecurve</a>(CycleAO.Inom(k),CycleAO.Imax(k),Family)
920046         <span class="comment">%% upload cycling curve</span>
930047         <span class="keyword">if</span> DisplayFlag
940048             fprintf(1,<span class="string">'device : Inom = %f Imax= %f \n'</span>, <span class="keyword">...</span>
950049                 CycleAO.Inom(k), CycleAO.Imax(k));
960050             plotcyclecurve(curve);
970051         <span class="keyword">end</span>
980052         reply = input(<span class="string">'Apply to Dserver new cycling curve ? (y/n)'</span>,<span class="string">'s'</span>);
990053         <span class="keyword">switch</span> lower(reply)
1000054             <span class="keyword">case</span> {<span class="string">'Y'</span>,<span class="string">'Yes'</span>}
1010055                 <a href="setcyclecurve.html" class="code" title="function setcyclecurve(dev_name, curve)">setcyclecurve</a>(CycleFamily,curve);
1020056             <span class="keyword">otherwise</span>
1030057                 disp(<span class="string">'Parameter not set to dserver'</span>)
1040058         <span class="keyword">end</span>
1050059     <span class="keyword">end</span>
1060060 <span class="keyword">else</span>
1070061     error(<span class="string">'Unknown Cycling Family'</span>)
1080062 <span class="keyword">end</span>
1090063
1100064 <span class="keyword">end</span>
1110065
1120066 <a name="_sub1" href="#_subfunctions" class="code">function curve = makecurve(Inom,Imax,MagnetType)</a>
1130067
1140068 <span class="keyword">switch</span> MagnetType
1150069     <span class="keyword">case</span> {<span class="string">'BEND'</span>,<span class="string">'QP'</span>,<span class="string">'CH'</span>,<span class="string">'CV'</span>}
1160070         curve = [[0 10]
1170071             [Imax 180]
1180072             [0.95*Inom 180]
1190073             [1.05*Inom 180]
1200074             [0.95*Inom 180]
1210075             [1.05*Inom 180]
1220076             [0.95*Inom 180]
1230077             [Inom 180] ];
1240078 <span class="keyword">end</span>
1250079 <span class="keyword">end</span>
1260080</pre></div>
127<hr><address>Generated on Mon 21-May-2007 15:35:27 by <strong><a href="http://www.artefact.tk/software/matlab/m2html/">m2html</a></strong> &copy; 2003</address>
128</body>
129</html>
Note: See TracBrowser for help on using the repository browser.