Conference Room SAD
[thread display] [new arrival display] [word search] [past log] [管理用]

Subject bench2.sad on iMac late 2012 (3.4 GHz i7).
Date: 2012/12/29(Sat) 06:34:02
ContributorK. Oide

*** Welcome to SAD Ver.1.0.10.6.5.2k64 built at 2012-12-29 06:27:48 +0900 ***
*** Today: 06:32:25 Saturday 12/29/2012 ***
cpu time= 5.4680E-03(sec) dt= 5.468(msec) free area:: 1794
OFF LOG ECHO;READ 77 ; 23
cpu time= 5.5600E-03(sec) dt= 5.560(msec) free area:: 1794
cpu time= 5.5920E-03(sec) dt= 5.592(msec) free area:: 1793
*** SADScript Initialization: /Users/oide/SAD/oldsad/Packages/init.n ***
RFSW RADCOD RAD FLUC INTRA POL COD DAPER EMIOU CMPLO FOURI SMEAR
F F F T F F T F F F F T
Design orbit length = 76.180924396860036
NPARA=1;
EMFLG='M';
FLENG='ON';
FSUPP='OFF';
FINIT='OFF';
cell cal
Matched. ( 0.000 ) DP = 0.02000 DP0 = 0.00000 ExponentOfResidual = 2.0 OffMomentumWeight = 1.000
$$$ f AX ####### # 1.554E-15 $$$ f BX ####### # 6.981218 $$$ f NX ####### # 1.250000
$$$ f AY ####### # -4.44E-15 $$$ f BY ####### # 27.858289 $$$ f NY ####### # 1.250000
$$$ f LENG ####### # 76.180924
vquad=Element['VALUE','Q*'];nquad=Element['NAME','Q*'];
! setquad[name_,val_]:=Module[{},Element['VALUE',name]=val];
! MapThread[Element['VALUE',#1 ]=#2 &,{nquad,vquad}]
! Do[Element['VALUE',nquad[ii]]=vquad[ii],{ii,Length[nquad]}]
fit SD1.2 nx .25 ny .25
fit SF1.2 SF1.4 nx 0.5 ny 0.5
fit B.2 ex .183
fit ex -0.065
fit leng 76.1809 nx 1.25 ny 1.25
fit qf1.2 qf3.2 bx 10
fit qf1.2 qf2.2 bx 10
fit qd1 qd2.2 by 10
fit qd1 qd3.2 by 10
b 2*Pi/112 b l .86
l7 .52
free q* l0 l1 l2 l3 l4 l5 l6 fix qe2
CONVERGENCE=1e-28;
IF EMFLG=='H'
fix * free qe2 qd2 qd3 qf2 qf3
fit rej leng nx ny;fit sd1.2 rej * ;fit qf1.2 qf2.2 rej bx;fit qf1.2 qf3.2 rej bx;
fit qd1 qd2.2 rej by fit qd1 qd3.2 rej by;fit qd1 qd2.2 by 10;
fit ex -.30 fit b.2 ex 0.35
ENDIF
IF EMFLG=='L'
fix * free qe2 qd2 qd3 qf2 qf3
fit rej leng nx ny;fit sd1.2 rej * ;fit qf1.2 qf2.2 rej bx;fit qf1.2 qf3.2 rej bx;
fit qd1 qd2.2 rej by fit qd1 qd3.2 rej by;fit qd2.2 qd3.2 by 10;
fit ex 0.11 fit b.2 ex 0.05
ENDIF
! go
org nmark 0 0 0 360/112*2 0 0 ;
calc;
Residual = 6.5569E-12 DP = 0.02000 DP0 = 0.00000 ExponentOfResidual = 2.0 OffMomentumWeight = 1.000
QD1.1/QD2.2 BY 27.85829 1 27.858289 QD1.1/QD3.f BY 27.85829 1 27.858289 QF1.2/QF2.2 BX 26.11497 1 26.114975
QF1.2/QF3.2 BX 26.11497 1 26.114975 SD1.2 NX .25 1 .250000 SD1.2 NY .25 1 .250000
SF1.2/SF1.4 NX .5 1 .500000 SF1.2/SF1.4 NY .5 1 .500000 B.2 EX .183 1 .183000
$$$ AX ####### # 2.109E-15 $$$ BX ####### # 6.981218 $$$ NX 1.25 1 1.250000
$$$ AY ####### # -2.66E-15 $$$ BY ####### # 27.858289 $$$ NY 1.25 1 1.250000
$$$ EX -.065 1 -.065000 $$$ LENG 76.1809 1 76.180924
xxx=LINE['GEO','***'][1,1]/2/Tan[Pi*2/112*2]-LINE['GEO','QF3.2'][1,2];
yyy=LINE['GEO','***'][1,1]/2/Sin[Pi*2/112*2];
delr=(xxx+yyy)/2-yyy
Out[33]:= .2332992167380894
Clear[xxx];Clear[yyy];
stop
FFS end: CPU time = 0.002 sec
RFSW RADCOD RAD FLUC INTRA POL COD DAPER EMIOU CMPLO FOURI SMEAR
F F F T F F T F F F F T
Design orbit length = 3016.3033401153457
CONVERGENCE=1e-25;
fit rfmark2 bx @ by @ ax 0 ay 0
fit rfmark2.2 bx @ by @ ax 0 ay 0
fit sfeo.2 rfmark2.2 bxm 80 bym 80
fit nx nx0 ny ny0 free qr* qv*
! go
sdsq:=Apply[Plus,Element["K2","SD*"]^2];
coda="DP=0.024 fitp 24 go DP=0.02 fitp 20 go DP=0.016 fitp 16 go DP=0.02 fitp 20 go";
cell
MatchingAmplitude:={{-0.026,xa,xa/3},{0.026,xa,xa/3},{0.022,xa*1.2,0},{-0.022,xa*1.2,0},{-0.024,-xa*1.1,0},{0.024,-xa*1.1,0}};xa=8;
fix * rej total;
! fit rfmark2 bx @ 20 by @ 20 ax 0 20 ay 0 20
fit rfmark2.2 bx @ 20 by @ 20 ax 0 20 ay 0 20
fit nx nx0 20 ny ny0 20 ax 0 20 ay 0 20 bx .33 20 by by0 20
free s{fdc}*; nodifcod
Out[68]:= nodifcod
ExponentOfResidual=0.5;
DP=0.02
Out[69]:= .02
gym="p=12;rep 4 DP=p*0.001 fitp p go p=p+4 until; DP=0.02 fitp 20 go"
Out[70]:= "p=12;rep 4 DP=p*0.001 fitp p go p=p+4 until; DP=0.02 fitp 20 go"
sf* min 0 sf* max 2.5 sd* max 0 sd* min -6


!!!! Function Test !!!!!


FunctionTest=Class[{},{},{t0,a,b,c,d,e,f,g,C,a1,x,a2,b2,x2,
ndim=400},

Constructor[]:=(
C=Literal[Class][{},{},{aa},];
);

Fact[xx_]:=If[xx<=1,1,xx*Fact[xx-1]];

Fun[xx_,z__,xx_]:=xx+z;

Test[]:=(
t0=TimeUsed[];
SeedRandom[35];
Print[Timing[Do[c=C[];c@aa=1,{ndim}];"Instance"]];
a1=a=Table[Random[],{ndim},{ndim}];
b=Table[Join[Random[200],Table["b",{200}]],{ndim}];
Print[Timing[Do[D[Sin[x2]*x2^3,x2],{800}];"D"]];
Print[Timing[Do[
Fit[a[[,{1,2}]],a2*x2+b2,x2,{a2,0},{b2,0}],{300}];"Fit"]];
Print[Timing[Do[Sort[Flatten[a]],{2}];"Sort"]];
Print[Timing[Do[Plot[{Sin[x2],Cos[x2]},{x2,-Pi,Pi},
DisplayFunction->Identity],{6}];"Plot"]];
Print[Timing[Do[ListPlot[a[[,{1,2}]],
DisplayFunction->Identity],{400}];"ListPlot"]];
Print[Timing[Do[Spline[a[[,{1,2}]]],{700}];"Spline"]];
Print[Timing[Do[Join[a,b],{2200}];"Join"]];
Print[Timing[Do[Append[a,b],{8000}];"Append"]];
Print[Timing[Do[ToExpression["a=1+Pi"],{60000}];"ToExpression"]];
Print[Timing[Do[ToString/@[a,{-1}],{1}];"ToString"]];
Print[Timing[Do[Fun[1,2,3,1],{40000}];"Fun"]];
Print[Timing[Do[b/.{x_String:>x//"c"},{2}];"Replace"]];
Print[Timing[Do[Do[b[[,i]],{i,ndim}],{10}];"ThreadPart"]];
Print[Timing[
Do[Do[a1[[i,j]]=a1[[j,i]],{i,ndim},{j,i}],{2}];"Part"]];
Print[Timing[Do[Fact/@[a,{-1}],{1}];"Map"]];
Print[Timing[Do[Thread[a],{30}];"Thread Real List"]];
Print[Timing[Do[Thread[b],{15}];"Thread Non-Real List"]];
Print[Timing[Do[Fact[200],{500}];"Fact"]];
Print[Timing[Do[Flatten[b],{16}];"Flatten"]];

Print[" \n******* Function Test CPU used = ",tf=TimeUsed[]-t0," sec\n"]);

];
ft=FunctionTest[];
ft@Test[];
{.13316699489951134,"Instance"}
{.07584898173809052,"D"}
{.06892898678779602,"Fit"}
{.04306900501251221,"Sort"}
{.06711101531982422,"Plot"}
{.07419297099113464,"ListPlot"}
{.051777005195617676,"Spline"}
{.01518702507019043,"Join"}
{.02437502145767212,"Append"}
{.04338604211807251,"ToExpression"}
{.17225104570388794,"ToString"}
{.013862967491149902,"Fun"}
{.08092701435089111,"Replace"}
{.03201699256896973,"ThreadPart"}
{.1032480001449585,"Part"}
{.035827040672302246,"Map"}
{.006170988082885742,"Thread Real List"}
{.016003966331481934,"Thread Non-Real List"}
{.08439195156097412,"Fact"}
{.021400928497314453,"Flatten"}

******* Function Test CPU used = 1.1767779476940632 sec
ft=.;
MemoryCheck[1]
Out[72]:= {8702089,10485760,592,0}


!!!! Optics Calculation Test !!!!!!!

t0=TimeUsed[]
Out[73]:= 1.2128390073776245
Do[FFS["CALC"],{15}];
Print[" \n******* Optics Calculation Test: CPU time used = ",toc=TimeUsed[]-t0," sec\n"];

******* Optics Calculation Test: CPU time used = 1.1532069444656372 sec


!!! Tracking Test !!!!!!!
t0=TimeUsed[]
Out[89]:= 2.366075038909912
RFSW RADCOD
e=Emittance[SaveEMIT->True]
Out[92]:= {Stable->1,Tunes->{-.47942117581376276,.08030829333156965,-.0139431323245126},EnergyLossU0->841899.6811929208,
RfVoltageVc->6669375.398487202,EquilibriumPosition->.011851105149355131,MomentumCompaction->.00012620782330407236,
OrbitDilation->0,BucketHeight->.038987664907056,HarmonicNumber->5120.067344058354,
OrbitAtExit->{-1.4012452055814659e-08,1.5048702833196652e-07,-1.1493899025236514e-09,-2.953640703863867e-07,
-3.824391941056511e-14,-6.053749691366422e-07},
DampingRate->{-.00012030204052793035,-.00012026427661264297,-.00024044716498004433},
Emittances->{1.8589831294798087e-08,9.872011117942012e-13,2.369377526735907e-06},MomentumSpread->.0007388954736169904,
BunchLength->.0032066480372587585,TuneShiftByRadiation->{-1.4152151073185874e-07,9.935168750626089e-07,-7.903717944824638e-09}}

DynamicApertureSurvey[{{0,50},{0,50},Table[i,{i,-16,16,4}]},60,Output->6];
Maximum number of particles =126
Range Xmin: 0.000 Xmax: 50.000
(Ymin: 0.000 Ymax: 50.000)
Zmin: -16.000 Zmax: 16.000
Display: 10 turns/character
NZ 0----!----1----!----2----!----3----!----4----!----5
-16.00 20 *************66666660000101010000000000000000000000
-12.00 23 ****************66666660060060000000000000000000000
-8.00 28 *********************666666600000006001000000000000
-4.00 30 ***********************6666666335653000000000000000
0.00 35 ****************************66666662111111112361111
4.00 28 *********************666666646636633323332211121111
8.00 26 *******************66666663333343322222222222222111
12.00 23 ****************66666663335333332221100000000000000
16.00 21 **************6666666333332000000000000000000000000
NZ 0----!----1----!----2----!----3----!----4----!----5
Score: 234
Print[" \n******* Tracking Test CPU used = ",tt=TimeUsed[]-t0," sec\n"];

******* Tracking Test CPU used = 1.2453789710998535 sec


!!!! Matching Test !!!!!!!

t0=TimeUsed[]
Out[93]:= 3.6114840507507324
CONVERGENCE=2e-4;
dp0=0.020;
dp=dp0;
FFS["fitp dp/0.001;go",6];
Matched. ( 8.3268E-04) DP = 0.02000 DP0 = 0.00000 ExponentOfResidual = 0.5 OffMomentumWeight = 1.000
DP -.020 -.018 -.016 -.014 -.012 -.010 -.008 -.006 .000 .006 .008 .010 .012 .014 .016 .018 .020
Res. .027 .027 .025 .024 .022 .020 .018 .016 .000 .018 .021 .022 .024 .025 .026 .027 .028
RFMARK2.2 AX 0 20 -.074 -.052 -.031 -.012 .002 .010 .012 .010 -3E-7 .007 .006 .002 -.006 -.016 -.025 -.032 -.033
RFMARK2.2 BX 4.362 20 4.285 4.271 4.276 4.299 4.332 4.366 4.393 4.405 4.362 4.373 4.401 4.425 4.435 4.424 4.387 4.323 4.235
RFMARK2.2 AY 0 20 -.091 -.109 -.120 -.124 -.120 -.110 -.094 -.074 2.E-8 .054 .062 .063 .059 .050 .038 .023 .009
RFMARK2.2 BY 25.103 20 23.53 23.31 23.29 23.38 23.52 23.68 23.87 24.10 25.10 26.32 26.61 26.76 26.75 26.55 26.15 25.56 24.79
$$$ fAX 0 20 -.010 -.015 -.019 -.021 -.020 -.016 -.010 -.004 3.E-7 -.011 -.013 -.014 -.016 -.018 -.022 -.026 -.031
$$$ fBX .33 20 .341 .336 .330 .325 .322 .319 .319 .321 .330 .335 .336 .338 .342 .348 .355 .364 .374
$$$ fNX 46.52 20 46.54 46.53 46.53 46.53 46.52 46.52 46.52 46.52 46.52 46.52 46.52 46.53 46.53 46.53 46.54 46.54 46.55
$$$ fAY 0 20 .032 .033 .030 .023 .015 .007 -1E-4 -.005 -3E-8 .031 .044 .056 .066 .073 .075 .072 .061
$$$ fBY .008 20 .008 .008 .008 .008 .007 .007 .008 .008 .008 .009 .009 .009 .009 .009 .009 .009 .009
$$$ fNY 46.08 20 46.10 46.09 46.09 46.09 46.08 46.08 46.08 46.08 46.08 46.08 46.08 46.08 46.08 46.08 46.07 46.07 46.07
$$$ fLENG ##### # 3016.3033
Print[" \n******* Matching Test: CPU time used = ",tm=TimeUsed[]-t0," sec\n"];

******* Matching Test: CPU time used = .07752084732055664 sec

Print["\n *********** summary of the bench mark \n",
"\tFunction Test \t",tf,"\n\tOptics Test\t",toc,
"\n\tTracking Test\t",tt, "\n\tMatching Test\t",tm,
"\n\tOverall Score (smaller is faster): ",tf/42+(toc+tt+tm)/96];

*********** summary of the bench mark
Function Test 1.1767779476940632
Optics Test1.1532069444656372
Tracking Test1.2453789710998535
Matching Test.07752084732055664
Overall Score (smaller is faster): .05381130134420735
Abort