Geometry working group
Work items for 2012
Items marked with
refer to
new developments.
Items marked with
will
involve new man-power or contribution from external sources interested in
the project.
Items marked with
will
require coordination with more than one Working Group.
- Architecture review:
- Adaptation of relevant classes for multi-threading
- Investigate possibility to adapt the implementation of thread-safety
for classes affected by mixing of R/W and R-only data;
introduce keywords and tags to allow for easier automatic
translation for Geant4-MT code generation
- Identify design choices to be applied for making any part of the
geometry modeller thread-safe
- Navigation & optimisation:
- Finalize implementation of precise ComputeSafety() in navigation
- Refine and optimize the alternative Computesafety() for use by
physics processes (mainly EM) for measuring the exact safety
value, not limited by voxels boundaries
- Adapt multiple-scattering EM process to make use of the new feature,
after having optimized its performance
- Profiling and optimisation of multiple navigation
- Revise the design and implementation of multiple navigation and
coupled-transportation
- Identify any open issue in application to fast-simulation, scoring
and layered tracking geometries and in conjuction with magnetic field
transport
- Identify possible CPU performance penalties which may be
introduced with the activation of coupled-transportation.
Optimize overall performance (ATLAS request)
- Robustness checking and performance tuning:
- Complete review of accuracy of 2nd order equations on last remaining solids (sphere, orb)
- Reiterate the tests on surface for random points close to
(and far from) the solids' surface, to quantify the precision of
the response according to the geometrical tolerance. Verify the
conditions under which the surface normal must be computed and
the accuracy of the algorithms implemented; identify cases
with wrong answers in solids not yet analysed and improve
testing
- Verify where to apply c/(|b|+sqrt(D)) solution
- Feedback any improvement to/from the USolids library project
- General code review and improvements:
- Apply improvements to regular navigation to increase
efficiency and precision and reduce memory consumption
- Implement more efficient indexing of cells, in conjunction
with improvements to algorithms in scoring
- Allow for better efficiency and precision, also by implementing
more precise safety calculation in case of neighbouring voxels
skipping for same materials
- Continue code review for selected CSG shapes
- Joint code review of geometrical shapes meant for:
- Verification of consistency in use of chosen strategies;
- Identification of potential round errors for solution to
equations;
- Improvements for performance in operations (use of
mathematical functions, sqrt(), pow(),
divisions, ...), caching calculation of constants and
efficient reuse, identify hot-spots performance critical;
- Double-check behavior on shared surfaces, etc...
- Code readability and simplification.
- Review of field classes and of design for field accuracy settings
- Revise design and implementation of the field classes, improving
intersection, adding trajectory (and potentially interpolation);
move to use templates to improve performance (i.e. reduce number of
virtual method calls in lowest-level of loops)
- Provide more intuitive API to users for tuning performance
and field response
- New features:
- Complete implementation of first round of solids in the unified library

- Complete implementation of first round of solids in the unified library for
geometrical shapes for Geant4 and Root, including also a fully featured
implementation of a multi-union solid
- Identify first/last step in a volume for curved tracks

- Feature currently possible only for linear track; requires to be
extended also for curved tracks in magnetic field
Previous years planned activities
2001 |
2002 |
2003 |
2004 |
2005 |
2006 |
2007 |
2008 |
2009 |
2010 |
2011
Created: 31 January 2012
Modified: 1 February 2012,
GC