source: MML/trunk/machine/SOLEIL/StorageRing/insertions/idSetUndParamSeq.m @ 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: 782 bytes
Line 
1function resErrorFlag = idSetUndParamSeq(idName, idParamVals)
2%Expected: idParamVals = {'phase', -40, 40, 1, 0.01}
3
4resErrorFlag = 0;
5resUnd = 0;
6
7paramName = idParamVals{1};
8paramStart = idParamVals{2};
9paramEnd = idParamVals{3};
10paramStepApprox = idParamVals{4};
11paramAbsTol = idParamVals{5};
12
13numParamVals = abs(round((paramEnd - paramStart)/paramStepApprox)) + 1;
14paramStep = 0;
15if(numParamVals > 1)
16    paramStep = (paramEnd - paramStart)/(numParamVals - 1);
17end
18
19curParamVal = paramStart;
20for k = 1:numParamVals
21        resUnd = idSetUndParamSync(idName, paramName, curParamVal, paramAbsTol);
22        if(resUnd ~= 0)
23        fprintf('Execution terminated since Undulator Parameter can not be set\n');
24        resErrorFlag = -1; return;
25    end
26    curParamVal = curParamVal + paramStep;
27end
Note: See TracBrowser for help on using the repository browser.