GSI Forum
GSI Helmholtzzentrum für Schwerionenforschung

Home » R3BRoot » Simulation Issues » Geo generation
Geo generation [message #19420] Thu, 11 August 2016 15:43 Go to next message
Oleg is currently offline  Oleg
Messages: 19
Registered: August 2016
Location: GSI
occasional visitor
From: *gsi.de
Hi,

I would like to generate a new geometry file for the active target.
Actually it is only to add a He gas media.
So the script create_actar_helium.C is made which differs from the original create_actar.C with the lines added:

FairGeoMedium* mHe = geoMedia->getMedium("helium");
if ( ! mHe ) Fatal("Main", "FairMedium helium not found");
geoBuild->createMedium(mHe);
TGeoMedium* pMed4 = gGeoMan->GetMedium("helium");
if ( ! pMed4 ) Fatal("Main", "Medium helium not found");

If I run it, there is an error:

root [0] .x create_actar_helium_geo.C("helium")
IncrementalExecutor::executeFunction: symbol '_ZN4ROOT4Math9gv_detail7convertERKNS0_9AxisAngleERNS0_10Rotation3DE' unresolved while linking function '_GLOBAL__sub_I_cling_module_6'!
You are probably missing the definition of ROOT::Math::gv_detail::convert(ROOT::Math::AxisAngle const&, ROOT::Math::Rotation3D&)
Maybe you need to load the corresponding shared library?
warning: cannot find function 'create_actar_helium_geo()'; falling back to .L

What is a problem?

Oleg.
Re: Geo generation [message #19422 is a reply to message #19420] Fri, 12 August 2016 09:22 Go to previous messageGo to next message
Dmytro Kresan is currently offline  Dmytro Kresan
Messages: 166
Registered: June 2004
first-grade participant
From: *gsi.de
1. I can not reproduce your error with loading of libraries. Check if your environment is properly set up. Run the ". ./config.sh" in the build directory, type make to check that all libraries are build. Test whether you can run other macros in this shell. NOTE: this create_actar_helium_geo.C has to be placed in R3BRoot/macros/r3b/geo directory, and has to be executed from there. I expect this causes crash.
2. If you change the name of macro, you need to change the name of the function in it. Both should match.
3. The code fragment you posted here, already exist in create_actar_geo.C. Duplication will lead to error.

Best regards,
Dima
Re: Geo generation [message #19431 is a reply to message #19422] Mon, 15 August 2016 14:46 Go to previous messageGo to next message
Oleg is currently offline  Oleg
Messages: 19
Registered: August 2016
Location: GSI
occasional visitor
From: *gsi.de
I run . ./config.sh and then make. All is OK.
The script name was wrong, sorry.
I changed it so now the function name and the script name are the same.
It does not work anyway.

It is correct, I changed the existing create_actar_geo.C due to I wanted to correct the error there -
the gar in the detector must be helium, not Ar - CO2.
Re: Geo generation [message #19432 is a reply to message #19431] Mon, 15 August 2016 15:45 Go to previous messageGo to next message
Oleg is currently offline  Oleg
Messages: 19
Registered: August 2016
Location: GSI
occasional visitor
From: *gsi.de
The problem was the rootlogon.C script was not read and excute before the creation of the geometry.

So the generation of the new geometry works.
Additional problem - changing the line in r3bsim.C
from:

TMap detGeo;
detGeo.Add(new TObjString("ACTAR"), new TObjString("actar_arco2.geo.root"));

to:

TMap detGeo;
detGeo.Add(new TObjString("ACTAR"), new TObjString("actar_helium.geo.root"));

created an error:

root -l r3bsim.C
root [0]
Processing r3bsim.C...
RandomEngineRoot:
Generator type: TRandom3
Seed: 2979099621
[INFO ] Actar: geometry file actar_helium.geo.root not found in standard path
[FATAL ] [15.08.2016 15:35:45] We stop the execution of the process at this point.

both files - actar_arco2.geo.root and actar_helium.geo.root are in the same directory.

Oleg.
Re: Geo generation [message #19435 is a reply to message #19432] Tue, 16 August 2016 10:02 Go to previous message
Dmytro Kresan is currently offline  Dmytro Kresan
Messages: 166
Registered: June 2004
first-grade participant
From: *gsi.de
The framework looks for geometry files in $VMCWORKDIR/geometry/ path. VMCWORKDIR environment variable is set by default to R3BRoot source directory. In this case the different R3BRoot path was configured.
Previous Topic: Ion beam
Next Topic: PDG ID of light ions
Goto Forum:
  


Current Time: Fri Oct 07 23:23:09 CEST 2022

Total time taken to generate the page: 0.01105 seconds