#include <ShipBellField.h>
|
| ShipBellField () |
|
| ShipBellField (const char *name, Double_t Bpeak, Double_t Zmiddle, Int_t fOrient=1, Double_t Btube=500.) |
|
| ShipBellField (ShipFieldPar *fieldPar) |
|
virtual | ~ShipBellField () |
|
virtual Double_t | GetBx (Double_t x, Double_t y, Double_t z) |
|
virtual Double_t | GetBy (Double_t x, Double_t y, Double_t z) |
|
virtual Double_t | GetBz (Double_t x, Double_t y, Double_t z) |
|
void | IncludeTarget (Double_t xy, Double_t z, Double_t l) |
|
virtual void | Print () |
|
Definition at line 27 of file ShipBellField.h.
◆ ShipBellField() [1/3]
ShipBellField::ShipBellField |
( |
| ) |
|
Default constructor
Definition at line 25 of file ShipBellField.cxx.
26 : FairField(),
30{
31 fType = 1;
33}
◆ ShipBellField() [2/3]
ShipBellField::ShipBellField |
( |
const char * |
name, |
|
|
Double_t |
Bpeak, |
|
|
Double_t |
Zmiddle, |
|
|
Int_t |
fOrient = 1 , |
|
|
Double_t |
Btube = 500. |
|
) |
| |
Standard constructor
- Parameters
-
name | Object name |
Bpeak | peak field.. |
Zmiddle | middle of the magnet (global coordinates) |
Btube | largest radius of the tube ellips (inside) |
Definition at line 39 of file ShipBellField.cxx.
40 : FairField(name),
44{
45 fType=1;
49}
◆ ShipBellField() [3/3]
Constructor from ShipFieldPar
Definition at line 55 of file ShipBellField.cxx.
56 : FairField(),
61{
62 if ( ! fieldPar ) {
63 cerr << "-W- ShipBellField::ShipBellField: empty parameter container!"
64 << endl;
65 fType=0;
66 }
67 else {
72 }
73}
Double_t GetMiddle() const
Double_t GetBtube() const
◆ ~ShipBellField()
ShipBellField::~ShipBellField |
( |
| ) |
|
|
virtual |
◆ ClassDef()
◆ GetBx()
Double_t ShipBellField::GetBx |
( |
Double_t |
x, |
|
|
Double_t |
y, |
|
|
Double_t |
z |
|
) |
| |
|
virtual |
Get components of field at a given point
- Parameters
-
x,y,z | Point coordinates [cm] |
Definition at line 90 of file ShipBellField.cxx.
90 {
92 else {
93 Double_t zlocal=fabs(z-
fMiddle)/100.;
94
95
96
97
98 Double_t bx=0.;
99
100 if ( (fabs(x)<2.7*
m) && (fabs(y)<
fBtube+0.2*
m)) {
101 if (zlocal<3.8) {
102 bx=0.14361*exp( -0.5 * pow((zlocal-0.45479E-01)/2.5046,2.));
103 }else if (zlocal<11.9) {
104 bx=0.19532-0.61512E-01*zlocal+0.68447E-02*pow(zlocal,2.)-0.25672E-03*pow(zlocal,3.);
105 }
107 }
108
109 return bx;
110 }
111}
◆ GetBy()
Double_t ShipBellField::GetBy |
( |
Double_t |
x, |
|
|
Double_t |
y, |
|
|
Double_t |
z |
|
) |
| |
|
virtual |
Definition at line 117 of file ShipBellField.cxx.
117 {
118 Double_t by = 0.;
120
123 }
126 by=
fPeak/(1.+pow(fabs(zlocal)/2.1,6.));
127
128 }
129 return by;
130
131}
◆ GetBz()
Double_t ShipBellField::GetBz |
( |
Double_t |
x, |
|
|
Double_t |
y, |
|
|
Double_t |
z |
|
) |
| |
|
virtual |
◆ IncludeTarget()
void ShipBellField::IncludeTarget |
( |
Double_t |
xy, |
|
|
Double_t |
z, |
|
|
Double_t |
l |
|
) |
| |
◆ Print()
void ShipBellField::Print |
( |
| ) |
|
|
virtual |
Screen output
Definition at line 145 of file ShipBellField.cxx.
145 {
146 cout << "======================================================" << endl;
147 cout << "---- " << fTitle << " : " << fName << endl;
148 cout << "----" << endl;
149 cout << "---- Field type : constant" << endl;
150 cout << "----" << endl;
151 cout << "---- Field regions : " << endl;
152 cout.precision(4);
153 cout << "======================================================" << endl;
154}
◆ fBtube
Double_t ShipBellField::fBtube |
|
private |
◆ fInclTarget
Bool_t ShipBellField::fInclTarget |
|
private |
◆ fMiddle
Double_t ShipBellField::fMiddle |
|
private |
◆ fOrient
Int_t ShipBellField::fOrient |
|
private |
◆ fPeak
Double_t ShipBellField::fPeak |
|
private |
◆ targetL
Double_t ShipBellField::targetL |
|
private |
◆ targetXY
Double_t ShipBellField::targetXY |
|
private |
◆ targetZ0
Double_t ShipBellField::targetZ0 |
|
private |
The documentation for this class was generated from the following files: