Post your questions

Edit this TWiki to post your questions about any aspect of the geometry framework. I will try to answer as quickly as possible.

Example:

Q: How can I modify the delta parameters of a detector element on the fly?

Answer: Yes, but only with LHCb v18r8 or higher. It is possible to give the IGeometryInfo of a DetectorElement either a HepTransform3D or two size 3 std::vectors:

// get detector element

IDetectorElement* veloRight = SmartDataPtr( detDataService(), "/dd/Structure/LHCb/Velo/VeloRight");

// Get IGeometryInfo*

IGeometryInfo* geomR = veloRight->geometry();

// trans and rot are std::vector<double> with X,Y,Z translations and rotations respectively

// Feed the transformation parameters to the IGeometryInfo*

geomR->localDeltaParams(trans, rot);

Now the detector element has the new transformation parameters, and its own and its daughters' transformation matrices have been re-computed with these new parameters.

Q: Can I test this functionality interactively, for example with, mmmm, python?

Answer: Yes, of course, what do you think? It is very simple with the Ex/DeVeloPython package. Try it with LHCb v21r9.

LHCbEnv v21r9

Then, from your cmt build area,

getpack Ex/DeVeloPython v2r0 (or highest tagged version)

Then build the package and have a look at Ex/DeVeloPython/v2r0/python/geomTest.py

cd cmt

source setup.csh

gmake

cd ../python

python -i geomTest.py

There are other scripts to check the VELO detector element, notably Thomas Ruf's VeloDet.py, which shows how python can be used to check and debug this particular detector element.

-- JuanPalacios - 03 Nov 2006

Q: Is there a method to create a random Alignment.xml file? I ask this because for my robustness test I will need for example 100 different Alignment.xml file. I don't want to write all them by hand... S. Viret

Answer: In Ex/DeVeloPython you will find python/alignCond.py. This has the basic functionality needed to write an alignment.xml file. You'd have to modify it to define the actual misalignments. To set it up and run it, follow the example given above, and replace geomTest.py with alignCond.py

-- JuanPalacios - 03 Nov 2006

Edit | Attach | Watch | Print version | History: r8 < r7 < r6 < r5 < r4 | Backlinks | Raw View | WYSIWYG | More topic actions
Topic revision: r8 - 2006-11-03 - JuanPalacios
 
    • Cern Search Icon Cern Search
    • TWiki Search Icon TWiki Search
    • Google Search Icon Google Search

    Main All webs login

This site is powered by the TWiki collaboration platform Powered by PerlCopyright & 2008-2019 by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding TWiki? Send feedback