1313import cnuphys .swimZ .SwimZResult ;
1414import cnuphys .swimZ .SwimZStateVector ;
1515
16- import cnuphys .adaptiveSwim .AdaptiveSwimException ;
1716import cnuphys .adaptiveSwim .AdaptiveSwimResult ;
18- import cnuphys .adaptiveSwim .AdaptiveSwimmer ;
19- import cnuphys .adaptiveSwim .geometry .Line ;
20- import cnuphys .adaptiveSwim .geometry .Point ;
21- import cnuphys .adaptiveSwim .geometry .Vector ;
2217import org .jlab .clas .swimtools .Stoppers .BeamLineSwimStopper ;
2318
2419import org .jlab .clas .swimtools .Stoppers .CylindricalBoundarySwimStopper ;
3429 */
3530public class Swim extends SwimPars implements ISwim {
3631
32+ private SwimTrajectory swimTraj ;
33+
34+ /**
35+ * @return the swimTraj
36+ */
37+ public SwimTrajectory getSwimTraj () {
38+ return swimTraj ;
39+ }
40+
41+ /**
42+ * @param swimTraj the swimTraj to set
43+ */
44+ public void setSwimTraj (SwimTrajectory swimTraj ) {
45+ this .swimTraj = swimTraj ;
46+ }
47+
3748 /**
3849 *
3950 * @param sector
@@ -556,22 +567,6 @@ public double[] SwimToZ(double Z, int dir) {
556567 return value ;
557568 }
558569
559- private SwimTrajectory swimTraj ;
560-
561- /**
562- * @return the swimTraj
563- */
564- public SwimTrajectory getSwimTraj () {
565- return swimTraj ;
566- }
567-
568- /**
569- * @param swimTraj the swimTraj to set
570- */
571- public void setSwimTraj (SwimTrajectory swimTraj ) {
572- this .swimTraj = swimTraj ;
573- }
574-
575570 @ Override
576571 public double [] SwimToDCA (SwimTrajectory trk2 ) { //use for both traj to get doca for each track
577572
@@ -584,124 +579,13 @@ public double[] SwimToDCA(SwimTrajectory trk2) { //use for both traj to get doca
584579 if (st ==null ) return null ;
585580
586581 double [] lastY = st .lastElement ();
587-
588582 value [0 ] = lastY [0 ] * 100 ; // convert back to cm
589583 value [1 ] = lastY [1 ] * 100 ; // convert back to cm
590584 value [2 ] = lastY [2 ] * 100 ; // convert back to cm
591585 value [3 ] = lastY [3 ] * _pTot ; // normalized values
592586 value [4 ] = lastY [4 ] * _pTot ;
593587 value [5 ] = lastY [5 ] * _pTot ;
594-
595- return value ;
596- }
597-
598-
599- public double [] AdaptiveSwimPlane (double px , double py , double pz , double nx , double ny , double nz , double accuracy ) {
600-
601- if (this .SwimUnPhys ) return null ;
602-
603- double [] value = new double [8 ];
604-
605- Vector norm = new Vector (nx ,ny ,nz );
606- Point point = new Point (px /100 ,py /100 ,pz /100 );
607-
608- cnuphys .adaptiveSwim .geometry .Plane targetPlane = new cnuphys .adaptiveSwim .geometry .Plane (norm , point );
609-
610- try {
611- AdaptiveSwimResult result = new AdaptiveSwimResult (false );
612-
613- PC .AS .swimPlane (_charge , _x0 , _y0 , _z0 , _pTot , _theta , _phi , targetPlane ,
614- accuracy /100 , _rMax , stepSize , cnuphys .swim .Swimmer .getEps (), result );
615-
616- if (result .getStatus () == AdaptiveSwimmer .SWIM_SUCCESS ) {
617- value [0 ] = result .getUf ()[0 ] * 100 ; // convert back to cm
618- value [1 ] = result .getUf ()[1 ] * 100 ; // convert back to cm
619- value [2 ] = result .getUf ()[2 ] * 100 ; // convert back to cm
620- value [3 ] = result .getUf ()[3 ] * _pTot ; // normalized values
621- value [4 ] = result .getUf ()[4 ] * _pTot ;
622- value [5 ] = result .getUf ()[5 ] * _pTot ;
623- value [6 ] = result .getFinalS () * 100 ;
624- value [7 ] = 0 ; // Conversion from kG.m to T.cm
625- }
626- else {
627- return null ;
628- }
629-
630- } catch (AdaptiveSwimException e ) {
631- e .printStackTrace ();
632- }
633588 return value ;
634589 }
635-
636- public double [] AdaptiveSwimCylinder (double a1x , double a1y , double a1z , double a2x , double a2y , double a2z , double radius , double accuracy ) {
637-
638- if (this .SwimUnPhys ) return null ;
639-
640- double [] value = new double [8 ];
641-
642- radius = radius /100 ;
643- Point a1 = new Point (a1x /100 , a1y /100 , a1z /100 );
644- Point a2 = new Point (a2x /100 , a2y /100 , a2z /100 );
645- Line centerLine = new Line (a1 , a2 );
646-
647- cnuphys .adaptiveSwim .geometry .Cylinder targetCylinder = new cnuphys .adaptiveSwim .geometry .Cylinder (centerLine , radius );
648-
649- try {
650-
651- AdaptiveSwimResult result = new AdaptiveSwimResult (false );
652-
653- PC .AS .swimCylinder (_charge , _x0 , _y0 , _z0 , _pTot , _theta , _phi , targetCylinder ,
654- accuracy /100 , _rMax , stepSize , cnuphys .swim .Swimmer .getEps (), result );
655590
656- if (result .getStatus () == AdaptiveSwimmer .SWIM_SUCCESS ) {
657- value [0 ] = result .getUf ()[0 ] * 100 ; // convert back to cm
658- value [1 ] = result .getUf ()[1 ] * 100 ; // convert back to cm
659- value [2 ] = result .getUf ()[2 ] * 100 ; // convert back to cm
660- value [3 ] = result .getUf ()[3 ] * _pTot ; // normalized values
661- value [4 ] = result .getUf ()[4 ] * _pTot ;
662- value [5 ] = result .getUf ()[5 ] * _pTot ;
663- value [6 ] = result .getFinalS () * 100 ;
664- value [7 ] = 0 ; // Conversion from kG.m to T.cm
665- }
666- else {
667- return null ;
668- }
669-
670- } catch (AdaptiveSwimException e ) {
671- e .printStackTrace ();
672- }
673- return value ;
674- }
675-
676- public double [] AdaptiveSwimRho (double radius , double accuracy ) {
677- System .out .println ("Don't use yet" );
678- if (this .SwimUnPhys ) return null ;
679-
680- double [] value = new double [8 ];
681-
682- radius = radius /100 ;
683- try {
684- AdaptiveSwimResult result = new AdaptiveSwimResult (false );
685-
686- PC .AS .swimRho (_charge , _x0 , _y0 , _z0 , _pTot , _theta , _phi , radius ,
687- accuracy /100 , _rMax , stepSize , cnuphys .swim .Swimmer .getEps (), result );
688-
689- if (result .getStatus () == AdaptiveSwimmer .SWIM_SUCCESS ) {
690- value [0 ] = result .getUf ()[0 ] * 100 ; // convert back to cm
691- value [1 ] = result .getUf ()[1 ] * 100 ; // convert back to cm
692- value [2 ] = result .getUf ()[2 ] * 100 ; // convert back to cm
693- value [3 ] = result .getUf ()[3 ] * _pTot ; // normalized values
694- value [4 ] = result .getUf ()[4 ] * _pTot ;
695- value [5 ] = result .getUf ()[5 ] * _pTot ;
696- value [6 ] = result .getFinalS () * 100 ;
697- value [7 ] = 0 ; // Conversion from kG.m to T.cm
698- }
699- else {
700- return null ;
701- }
702- } catch (AdaptiveSwimException e ) {
703- e .printStackTrace ();
704- }
705- return value ;
706- }
707591}
0 commit comments