#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: