Home » PANDA » PandaRoot » General » Panda Magnet Field Map
Panda Magnet Field Map [message #9796] |
Fri, 27 November 2009 13:03 |
donghee
Messages: 385 Registered: January 2009 Location: Germnay
|
first-grade participant |
From: *kph.uni-mainz.de
|
|
Dear all,
I have very academic question about Magnet Field used in Pandaroot.
In the MC simulation I can see three main pieces to allow Magnet Field.
First of all, some geometry are defined by Geant or by some special program like CAD(?) in advance.
What is the standard tool for designing of magnet structure?
Quote: |
FairModule *Magnet= new PndMagnet("MAGNET");
Magnet->SetGeometryFileName("FullSolenoid.root");
fRun->AddModule(Magnet);
FairModule *Dipole= new PndMagnet("MAGNET");
Dipole->SetGeometryFileName("dipole.geo");
fRun->AddModule(Dipole);
|
Next question is for multi-field definition.
At below multiple magnet filed is defined by two PANDA Magents, namely Dipole and Solenoid, in addition Transition map is defined. What is the purpose and meaning of this components?
And are all those different Maps predefined in somewhere or is there some accessing process to get the field intensity via FullSolenoid.root and dipole.geo in the panda/field/*.
How is this worked?
Quote: |
PndMultiField *fField= new PndMultiField();
PndTransMap *map= new PndTransMap("TransMap", "R");
PndDipoleMap *map1= new PndDipoleMap("DipoleMap", "R");
PndSolenoidMap *map2= new PndSolenoidMap("SolenoidMap", "R");
fField->AddField(map);
fField->AddField(map1);
fField->AddField(map2);
fRun->SetField(fField);
|
The defined multifield is now going to save into the database by means of field parametrization in rtdb.
Quote: |
PndMultiFieldPar* Par = (PndMultiFieldPar*) rtdb->getContainer("PndMultiFieldPar");
if (fField) { Par->SetParameters(fField); }
Par->setInputVersion(fRun->GetRunId(),1);
Par->setChanged();
|
I assumed that solenoid field and dipole field in present setup doesn't overlap because they are located at some distance, or there is a duplication between them, and can be described by TransMap.
Let's imagine, if dipole magent move into very close to the solenoid magent, then the magnet would be overlaped. In this case, independent definition of field map from solenoid and dipole could not described overlaping region. How can I handle it?
Best wishes,
Donghee Kang
|
|
|
Re: Panda Magnet Field Map [message #9799 is a reply to message #9796] |
Fri, 27 November 2009 14:29 |
Mohammad Al-Turany
Messages: 518 Registered: April 2004 Location: GSI, Germany
|
first-grade participant |
From: *dip.t-dialin.net
|
|
Hi,
Quote: | What is the standard tool for designing of magnet structure?
|
It is called TOSCA
Quote: | And are all those different Maps predefined in somewhere or is there some accessing process to get the field intensity via FullSolenoid.root and dipole.geo in the panda/field/*. How is this worked?
|
These two files are the geometry definition of the magnet, the field maps are defined in the DipoleMap, TransMap and SolenoidMap (in your example, and by the way this is the old stuff look to the new macros there is more regions, and for different beam energies ).
see
http://forum.gsi.de/index.php?t=msg&goto=7949&rid=93&S=8a415 fbc32c8b125305ad77d67d51b4e&srch=beammom#msg_7949
for more info.
Quote: | I assumed that solenoid field and dipole field in present setup doesn't overlap because they are located at some distance, or there is a duplication between them, and can be described by TransMap.
|
I do not understand what you mean with this! any way below I try to explain you how it is done.
Quote: | Let's imagine, if dipole magent move into very close to the solenoid magent, then the magnet would be overlaped. In this case, independent definition of field map from solenoid and dipole could not described overlaping region. How can I handle it?
|
you can handle this if you re-simulate the whole magnet in TOSCA again. The maps we have here where simulated using TOSCA and the whole magnets where done at once to account for the overlap region between the two iron yokes (Done by Jost Luehning). from this simulation we export the different regions according t the change in the maps to optimize for performance (i.e step size is dependent on the variation of the field). Any way Why do you need to change the position of the dipole? what should this be good for?
In the macro/run directory there is a macro "PandaField.C" which show you how to read the fields, and get field value somewhere at a some point.
regards
Mohammad
|
|
|
Re: Panda Magnet Field Map [message #9800 is a reply to message #9799] |
Fri, 27 November 2009 15:55 |
donghee
Messages: 385 Registered: January 2009 Location: Germnay
|
first-grade participant |
From: *kph.uni-mainz.de
|
|
Dear Mohammed,
I'm not still clear for few small things.
If I use 7.5 GeV beam energy by fRun->SetBeamMom(7.5);, then I should do
PndDipoleMap *map_d1= new PndDipoleMap("DipoleMap1.0809", "R");
PndDipoleMap *map_d2= new PndDipoleMap("DipoleMap2.0809", "R");
or Can the dipole field be automatically set up by beamenergy? then I can write down still.
PndDipoleMap *map_d1= new PndDipoleMap("DipoleMap1", "R");
PndDipoleMap *map_d2= new PndDipoleMap("DipoleMap2", "R");
Where are corresponding map file *.root hidden in pandaroot? If I see them, I can clear for it. Could you give me the location?
Concerning solenoid field, so, how are 4 different regions defined?
Quote: |
Any way Why do you need to change the position of the dipole? what should this be good for?
|
I just want to know exactly how all stuff are worked.
Thank you so much,
Best regards,
Donghee Kang
|
|
|
|
Re: Panda Magnet Field Map [message #9802 is a reply to message #9800] |
Fri, 27 November 2009 16:21 |
Mohammad Al-Turany
Messages: 518 Registered: April 2004 Location: GSI, Germany
|
first-grade participant |
From: *dip.t-dialin.net
|
|
HI,
Quote: | If I use 7.5 GeV beam energy by fRun->SetBeamMom(7.5);, then I should do
PndDipoleMap *map_d1= new PndDipoleMap("DipoleMap1.0809", "R");
PndDipoleMap *map_d2= new PndDipoleMap("DipoleMap2.0809", "R");
or Can the dipole field be automatically set up by beamenergy? then I can write down still.
PndDipoleMap *map_d1= new PndDipoleMap("DipoleMap1", "R");
PndDipoleMap *map_d2= new PndDipoleMap("DipoleMap2", "R");
|
No, it is clarified in the link I posted, you just use DipoleMap1 and then the framework decide according to the beam momentum which file he takes.
Quote: |
Concerning solenoid field, so, how are 4 different regions defined?
|
if you call the print of any map you get all information about it.
Mohammad
|
|
|
Re: Panda Magnet Field Map [message #9803 is a reply to message #9801] |
Fri, 27 November 2009 16:26 |
Mohammad Al-Turany
Messages: 518 Registered: April 2004 Location: GSI, Germany
|
first-grade participant |
From: *dip.t-dialin.net
|
|
Hi again,
it is becoming a very long thread here!
Quote: |
If I want to download TOSCA program, wher do I have to visit?
With googling, I found only beautiful landscape of TOSCANA....
I hope the software is free....
|
You cannot download TOSCA for free, this is one of the most expensive software tools, used for accelerators, industry , etc TOSCA is the part used from Opera3D for simulating magnets. Anyway if you have a alot of time and money you can redo the whole thing in TOSCA, see http://www.vectorfields.com/
have a nice weekend.
Mohammad
|
|
|
|
Goto Forum:
Current Time: Fri Nov 29 04:35:55 CET 2024
Total time taken to generate the page: 0.00678 seconds
|