<div dir="ltr">
<p class="gmail-MsoNormal" align="center" style="text-align:center;margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri"><b><span style="font-size:16pt">Using Magfield v1.05<span></span></span></b></p>
<p class="gmail-MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri"><span> </span></p><p class="gmail-MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri"><span><br></span></p><p class="gmail-MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri"><span>Modifications: </span></p><p class="gmail-MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri"><span>1) Handles full torus maps</span></p><p class="gmail-MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri"><span>2) Allows for the solenoid to be shifted in Z</span></p><p class="gmail-MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri"><span><br></span></p>
<p class="gmail-MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri"><b>Initialization<span></span></b></p>
<p class="gmail-MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri"><span> </span></p>
<p class="gmail-MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri">To initialize the MagneticField v1.05 package (which if I
haven’t screwed up completely is now checked into the master), call the initialization method which takes two arguments:<span></span></p>
<p class="gmail-MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri"><span> </span></p>
<p class="gmail-MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri"><span style="font-family:"Courier New"">MagneticFields.getInstance().initilizeMagneticFields(<span></span></span></p>
<p class="gmail-MsoNormal" style="text-indent:0.5in;margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri"><span style="font-family:"Courier New"">String
dataPath, TorusMap torusMap)<span></span></span></p>
<p class="gmail-MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri"><span> </span></p>
<p class="gmail-MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri">Where <span style="font-family:"Courier New"">dataPath</span>
is a unix colon “:” separated path of directories that will be searched for
field maps. <span style="font-family:"Courier New"">TorusMap</span> is an <span style="font-family:"Courier New"">enum</span>,
currently defined as <span></span></p>
<p class="gmail-MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri"><span> </span></p>
<p class="gmail-MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri"><span style="font-family:"Courier New";color:black">public enum TorusMap {<span></span></span></p>
<p class="gmail-MsoNormal" style="margin:0in 0in 0.0001pt 0.5in;font-size:12pt;font-family:Calibri"><span style="font-family:"Courier New";color:black">SYMMETRIC, FULL_025, FULL_050, FULL_075, FULL_100,
FULL_125, FULL_150, FULL_200;<span></span></span></p>
<p class="gmail-MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri"><span> </span></p>
<p class="gmail-MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri"><span style="font-family:"Courier New"">TorusMap.SYMMETRIC</span>
is the old 12-fold symmetry map. The others are full fields (symmetric, but not
assumed symmetric) where the number after the underscore gives the phi step in degrees, i.e., 0.25 degrees, 0.50 degrees, down to the
coarsest map with a 2.00 degree spacing. This enum will expand in the next
version, when we add a new, realistic non-symmetric map.<span></span></p>
<p class="gmail-MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri"><span> </span></p>
<p class="gmail-MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri">You can also initialize with no arguments:<span></span></p>
<p class="gmail-MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri"><span> </span></p>
<p class="gmail-MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri"><span style="font-family:"Courier New"">MagneticFields.getInstance().initilizeMagneticFields()<span></span></span></p>
<p class="gmail-MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri"><span style="font-family:"Courier New""><span> </span></span></p>
<p class="gmail-MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri">Which uses the defaults:<span></span></p>
<p class="gmail-MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri"><span> </span></p>
<p class="gmail-MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri"><span style="font-family:"Courier New"">dataPath = <span style="color:black">".: ~/fieldMaps:../../../data:../../data:../data:data:cedbuild/data"<span class="gmail-s1" style="color:black"><span></span></span></span></span></p>
<p class="gmail-MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri"><span class="gmail-s1" style="color:black"><span style="font-family:"Courier New""><span> </span></span></span></p>
<p class="gmail-MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri"><span class="gmail-s1" style="color:black"><span style="font-family:"Courier New"">torusMap = </span></span><span style="font-family:"Courier New";color:black"><span class="gmail-s1" style="color:black">TorusMap.SYMMETRIC</span></span><span style="font-family:"Courier New""><span></span></span></p>
<p class="gmail-MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri"><span> </span></p>
<p class="gmail-MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri">this will find the maps (and try to load the old symmetric
map) if you put them in a directory named <span style="font-family:"Courier New"">fieldMaps</span>
in your home directory, e.g.<span></span></p>
<p class="gmail-MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri"><span> </span></p>
<img src="cid:ii_1605b061fa809849" alt="Inline image 2" width="217" height="136" style="margin-right: 0px;"><br>
<p class="gmail-MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri"><span> </span></p>
<p class="gmail-MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri">NOTE: You do not have to have all the maps; (the sizes are
shown for your amusement, or perhaps horror) it will make available whatever subset of torus maps it finds. <span></span></p>
<p class="gmail-MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri"><span> </span></p><p class="gmail-MsoNormal" style="margin:0in 0in 0.0001pt"><span style="font-family:Calibri;font-size:12pt">The original 12-fold symmetric map that we've been using since dinosaurs roamed the earth is the one named </span><span style="font-size:16px"><font face="monospace, monospace">clas12_torus_fieldmap_binary.dat</font></span><span style="font-family:Calibri;font-size:12pt">.</span></p><p class="gmail-MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri"><span><br></span></p>
<p class="gmail-MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri"><b>How to get the field
maps?<span></span></b></p>
<p class="gmail-MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri"><span> </span></p>
<p class="gmail-MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri">Not a solved problem. Help. They are too big for git. I have
them on a flash drive in my office. <span></span></p>
<p class="gmail-MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri"><span> </span></p>
<p class="gmail-MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri"><b>Using Different Torus
Maps<span></span></b></p>
<p class="gmail-MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri"><span> </span></p>
<p class="gmail-MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri">To change torus maps, after initialization, call <span></span></p>
<p class="gmail-MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri"><span> </span></p>
<p class="gmail-MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri"><span style="font-family:"Courier New"">MagneticFields.getInstance().setTorus(TorusMap
tmap)<span></span></span></p>
<p class="gmail-MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri"><span> </span></p>
<p class="gmail-MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri">Where, again, <span style="font-family:"Courier New"">tmap</span>
is from the <span style="font-family:"Courier New"">enum</span><span></span></p>
<p class="gmail-MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri"><span> </span></p>
<p class="gmail-MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri"><span style="font-family:"Courier New";color:black">public enum TorusMap {<span></span></span></p>
<p class="gmail-MsoNormal" style="margin:0in 0in 0.0001pt 0.5in;font-size:12pt;font-family:Calibri"><span style="font-family:"Courier New";color:black">SYMMETRIC, FULL_025, FULL_050, FULL_075, FULL_100,
FULL_125, FULL_150, FULL_200;<span></span></span></p>
<p class="gmail-MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri"><span> </span></p>
<p class="gmail-MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri">that, again, will expand when we add the realistic map.<span></span></p>
<p class="gmail-MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri"><span> </span></p>
<p class="gmail-MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri">For example, to change to the 1.25 degree spacing, call<span></span></p>
<p class="gmail-MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri"><span> </span></p>
<p class="gmail-MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri"><span style="font-family:"Courier New"">MagneticFields.getInstance().setTorus(TorusMap.FULL_125);<span></span></span></p>
<p class="gmail-MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri"><span> </span></p>
<p class="gmail-MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri"><span> </span></p>
<p class="gmail-MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri"><b>Moving the solenoid<span></span></b></p>
<p class="gmail-MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri"><span> </span></p>
<p class="gmail-MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri">Once the fields are initialized, and assuming it found the
solenoid map, you can move the solenoid in the z direction (because reasons) using<span></span></p>
<p class="gmail-MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri"><span> </span></p>
<p class="gmail-MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri"><span style="font-family:"Courier New"">MagneticFields.getInstance().setSolenoidShift(shiftZ)<span></span></span></p>
<p class="gmail-MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri"><span> </span></p>
<p class="gmail-MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri">Where <span style="font-family:"Courier New"">shiftZ</span>
is the shift in the z direction in cm. A positive number moves the solenoid
downstream i.e., in the beam direction. A negative number moves it upstream. An imaginary number moves it to Philadelphia.<span></span></p><p class="gmail-MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri"><br></p><p class="gmail-MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri">That's all.</p>
<div><br></div>-- <br><div class="gmail_signature"><div dir="ltr"><div><div dir="ltr"><div><div dir="ltr"><i>David P. Heddle, Ph.D.<br>Professor of Physics,</i></div><div dir="ltr"><i>Graduate Program Coordinator<br>
Christopher Newport University<br>
Newport News, VA 23606</i><div><i><br></i></div><div><i>757.594.8434 (CNU)</i></div></div></div></div></div></div></div>
</div>