GSI Forum
GSI Helmholtzzentrum für Schwerionenforschung

Home » PANDA » PandaRoot » Tracking » B field scaling for PANDA
B field scaling for PANDA [message #7769] Thu, 29 January 2009 09:48 Go to next message
Aleksandra Wronska is currently offline  Aleksandra Wronska
Messages: 38
Registered: May 2006
Location: Cracow
continuous participant
From: *if.uj.edu.pl
Dear all,

I am now trying to set up simulations for tracking TDR and have my first problems with it. It concerns scaling of the B-field.

The current default for PANDA FS is the so-called chicane option, which requires that B-field of the dipole scales with the beam momentum, reaching its max. value of 1 T at pbeam=15 GeV/c.
For realistic simulations, I load three field maps:

1) SolenoidMap - for which scaling factor should be always 1, because this field does not affect beam direction

2) DipoleMap - which should scale with pbeam to keep the beam on the same position

3) TransMap - with which I have actually a problem, because this is a summed up fringe field of the dipole (which scales) and the solenoid (which is constant). Thus, the best solution that I see here is to have several maps for this region generated for different beam momenta (i.e. different dipole fields) such, that one can make reasonable interpolation between them to the simulated beam momentum.

Another issue is who and where should take care of that scaling stuff in the simulation macro. As I see it, the user should define one parameter of CbmRun, namely beam momentum, and the rest could be done for him/her in the CbmRun->SetField() function or a similar place. It should be possible everywhere in the code (also in the detector- and tracking-specific tasks) to ask the current run what its beam momentum is.

Write me (a.s.a.p. because of TDR time pressure) what you (in particular Mohammad) think about it. Perhaps some of the features are already there, just that I have not found them.

Thanks in advance,
ola
Re: B field scaling for PANDA [message #7771 is a reply to message #7769] Thu, 29 January 2009 16:45 Go to previous messageGo to next message
Mohammad Al-Turany is currently offline  Mohammad Al-Turany
Messages: 518
Registered: April 2004
Location: GSI, Germany
first-grade participant
From: *gsi.de
Hallo Ola,

At the moment, each field map has a scale factor which can be set in the ASCII file, and I will provide a set method or additional parameter in the ctor to scale the existing map by a factor, So this is not a problem!

Quote:

3) TransMap - with which I have actually a problem, because this is a summed up fringe field of the dipole (which scales) and the solenoid (which is constant). Thus, the best solution that I see here is to have several maps for this region generated for different beam momenta (i.e. different dipole fields) such, that one can make reasonable interpolation between them to the simulated beam momentum.


As far as I know this can only be done on TOSCA level, the maps that I get where generated with both Solenoid and Dipole together, and then exported as single files, So here we should contact Lars and Jost if this is possible within few days from now!


about the beam momenta, does it have any other use here except the correlation with the scale of the map? and what about having this as a run parameter? I am planning to add a RunInfo class which should hold all run parameters (cuts, processes, event generators and so on! )
do you think it will be enough to have it there?


regards

Mohammad

Re: B field scaling for PANDA [message #7773 is a reply to message #7771] Thu, 29 January 2009 18:14 Go to previous messageGo to next message
Bertram Kopf is currently offline  Bertram Kopf
Messages: 110
Registered: March 2006
continuous participant
From: *ep1.ruhr-uni-bochum.de
Hi Ola, hi Mohammad,

Quote:


about the beam momenta, does it have any other use here except the correlation with the scale of the map? and what about having this as a run parameter? I am planning to add a RunInfo class which should hold all run parameters (cuts, processes, event generators and so on! )
do you think it will be enough to have it there?



to have easy and global access to the beam momentum infos is of course very helpful. Another important example is the kinematic fitter (4C fit). Here the complete 4vector of the pbar p or pbar A system, the beam spread (error matix) and the beam spot (+ spatial resolution) are the input parameters for the 4C fit. I would prefere to call the class EventInfo since the parameters can be changed within one run. What do you think?

Cheers,
Bertram.
Re: B field scaling for PANDA [message #7784 is a reply to message #7769] Fri, 30 January 2009 16:52 Go to previous messageGo to next message
Jost Lühning is currently offline  Jost Lühning
Messages: 4
Registered: March 2006
occasional visitor
From: *gsi.de
Dear all,

next week I could produce new field maps for the dipole and for the area between dipole and solenoid. The question is: At which dipole currents?
There is a saturation in the dipole which can be seen in this plot:

index.php?t=getfile&id=4991&private=0

It shows the normalised field integral of the dipole on the z-axis. The red line is calculated for steps of 5% dipole current, the blue line indicates steps of 20% .
Would 5 field maps (in steps of 20%) be sufficient for the dipole?

Ciao,
Jost
Re: B field scaling for PANDA [message #7791 is a reply to message #7773] Sun, 01 February 2009 17:47 Go to previous messageGo to next message
Mohammad Al-Turany is currently offline  Mohammad Al-Turany
Messages: 518
Registered: April 2004
Location: GSI, Germany
first-grade participant
From: *dip.t-dialin.net
Hallo Bertam,

I prefer to have at least three classes, RunInfo, MCEventInfo and EventInfo. because it make no sense to save for example Geant cuts for each MC event!

cheers, Mohammad
Re: B field scaling for PANDA [message #7792 is a reply to message #7784] Mon, 02 February 2009 11:20 Go to previous messageGo to next message
Lars Schmitt is currently offline  Lars Schmitt
Messages: 47
Registered: April 2004
Location: GSI
continuous participant
From: *gsi.de
Hello,

I would propose to use some physics related beam momentum settings.

How about 1.5, 8.9, 15 GeV/c? These are values related to the accelerator.
Then in between one could choose 3.6 GeV/c (for J/psi) and maybe some
other value between 8.9 and 15 GeV/c.

Has anyone else an opinion?

Cheers,

Lars
Re: B field scaling for PANDA [message #7794 is a reply to message #7792] Mon, 02 February 2009 14:40 Go to previous messageGo to next message
Aleksandra Wronska is currently offline  Aleksandra Wronska
Messages: 38
Registered: May 2006
Location: Cracow
continuous participant
From: *if.uj.edu.pl
Dear all,

I think Lars's proposal is reasonable. Thus, whatever dipole currents they correspond to, we would like to have Dipole and Trans maps for the beam momenta listed by Lars.

Concerning the representation of the beam momentum and B field in our data I see the following aspects:

1) most likely, in real experiment we will run with the fixed beam momentum and fixed beam quality (spreads in p and x,y). Beam momentum is directly related to the dipole B-field, which we should probably set once for the whole simulation, i.e. load the field maps once. Thus I think those numbers, along with the target mass, belong to the RunInfo.

2) on the other hand in every event we can have some spatial offsets (measured in the experiment on the pellet basis or set in the simulations). Those offsets clearly belong to the EventInfo.

3)-MINOR I can also imagine that at some point PANDA will start measurments "on ramping", with changing beam momentum and dipole field. The question is, however, if we want to prepare PandaRoot to simulate such runs or we think about it when there is a need for that Wink

cheers,
ola

Re: B field scaling for PANDA [message #7796 is a reply to message #7794] Mon, 02 February 2009 15:48 Go to previous messageGo to next message
StefanoSpataro is currently offline  StefanoSpataro
Messages: 2736
Registered: June 2005
Location: Torino
first-grade participant

From: *physik.uni-giessen.de
Maybe one could try to fit the distributions at different beam momenta, so that, when the user set the value of "p", the system itself is able to recalculate the correct field value at that value. In this case one does not need to store or load many maps.
But I have no idea if this was can be followed, or if maybe requires too much cpu time, or whatever.

Re: B field scaling for PANDA [message #7804 is a reply to message #7796] Tue, 03 February 2009 11:01 Go to previous messageGo to next message
Lars Schmitt is currently offline  Lars Schmitt
Messages: 47
Registered: April 2004
Location: GSI
continuous participant
From: *gsi.de
Dear Stefano,

If you look at Jost's plot in his message it is clear that we need
something like 5 field calculations and then can make a linear
interpolation in between momenta for which the field was calculated.

I guess the most efficient way is to do the work in the initialization
phase and create a new map in memory from the two neighboring
maps calculated by Tosca. I don't believe (and Jost agrees) that one
can just take the function and scale from 15 GeV/c with it to any
value. The plot shown is just the field integral, but the actual field
is different in any given point of the map and can have a slightly
different behavior everywhere.

Coming back to the values: I made a mistake with J/psi. It should
be 4.06 GeV/c. For the higher value I propose either 11.91 (Ds(2460))
or 12.01 (Xi_c) with a slight preference for 11.91.

The 8.9 GeV is the end of electron cooling and the 1.5 GeV/c and
the 15 GeV/c are just the extremes we can have.

I would like to know Mohammad's opinion on this subject.

Cheers,

Lars


Re: B field scaling for PANDA [message #7805 is a reply to message #7804] Tue, 03 February 2009 11:13 Go to previous messageGo to next message
Mohammad Al-Turany is currently offline  Mohammad Al-Turany
Messages: 518
Registered: April 2004
Location: GSI, Germany
first-grade participant
From: *gsi.de
Hallo Lars and all,


I already discussed with Jost about this, and the fact that the field in the region between dipole and solenoid cannot be calculated alone make it impossible to scale this map just by a factor.
I agree on what you said about doing this in the initialization, in fact I do not see any other way to do this, one have simply to choose a TOSCA calculated map for a certain beam energy.

In fact, for each energy we need three maps, ( i.g: Transient and the two dipole regions) Jost already told me that he will generate these maps (with different dipole current) and I will put them in the SVN end of this week (I hope!). Then we have to see how to correlate between the beam energy and the loaded maps but this is a detail!

regards,

Mohammad


Re: B field scaling for PANDA [message #7882 is a reply to message #7805] Mon, 16 February 2009 14:05 Go to previous messageGo to next message
Mohammad Al-Turany is currently offline  Mohammad Al-Turany
Messages: 518
Registered: April 2004
Location: GSI, Germany
first-grade participant
From: *gsi.de
Hi,

It is now implemented and available in SVN, Jost has generated the maps for different beam energies, namely:

15.0 GeV/C
11.91 GeV/C
8.90 GeV/C
4.06 GeV/C
1.5 GeV/C

the corresponding maps are:

The dipole itself:
DipoleMap1.1500.root
DipoleMap1.1191.root
DipoleMap1.0890.root
DipoleMap1.0406.root
DipoleMap1.0150.root

in front of the dipole:
DipoleMap2.1500.root
DipoleMap2.1191.root
DipoleMap2.0890.root
DipoleMap2.0406.root
DipoleMap2.0150.root

and the region between dipole and Solenoid:

TransMap.1500.root
TransMap.1191.root
TransMap.0890.root
TransMap.0406.root
TransMap.0150.root

The beam energy can be set in sim macro with:

FairRunSim::SetBeamEnergy(Double_t Energy /** GeV/c */ )

according to the energy the field is selected, for now the selection is as following:

BeamEnergy < 2.0 Map 0150
BeamEnergy < 5.0 Map 0406
BeamEnergy < 10.0 Map 0890;
BeamEnergy < 12.0 Map 1190
otherwise Map 1500;


An example for using this can be found in macro/run/run_sim.C and macro/emc/sim_emc.C

setting this in a simulation session, the RuntimDB will take care that the reconstruction get the proper fields!

regards

Mohammad
















[Updated on: Mon, 16 February 2009 14:21]

Report message to a moderator

Re: B field scaling for PANDA [message #7948 is a reply to message #7882] Thu, 26 February 2009 11:13 Go to previous messageGo to next message
Aleksandra Wronska is currently offline  Aleksandra Wronska
Messages: 38
Registered: May 2006
Location: Cracow
continuous participant
From: *ghnet.pl
Hi Mohammad,

so now a pedestrian question:
how to get info about beam momentum set in the simulation run from one of my tasks within the analysis run?

cheers,
ola
Re: B field scaling for PANDA [message #7949 is a reply to message #7948] Thu, 26 February 2009 13:26 Go to previous message
Mohammad Al-Turany is currently offline  Mohammad Al-Turany
Messages: 518
Registered: April 2004
Location: GSI, Germany
first-grade participant
From: *gsi.de
Hi,

Sorry I forget to add the beam momentum to the parameters! any way later it will go to the run info. For now I just add it to the FairBaseParSet. In an analysis or reconstruction run you can do:

FairRuntimeDb* rtdb = fRun->GetRuntimeDb();
FairBaseParSet* par=(FairBaseParSet*)
            (rtdb->findContainer("FairBaseParSet"));
Double_t BeamMom= par->GetBeamMom();


this will give you the momentum setted in the simulation run, these lines can be added to the task Init.


Mohammad
Previous Topic: Problem with reconstructed phi values
Next Topic: Error calculation in Kalman Filter
Goto Forum:
  


Current Time: Thu Nov 28 03:29:12 CET 2024

Total time taken to generate the page: 0.00856 seconds