Celeritas  0.5.0-86+4a8eea4
Classes | Public Member Functions | List of all members
celeritas::g4org::Converter Class Reference

Create an ORANGE geometry model from an in-memory Geant4 model. More...

#include <Converter.hh>

Classes

struct  Options
 Input options for the conversion. More...
 
struct  result_type
 

Public Types

Type aliases
using arg_type = G4VPhysicalVolume const *
 
using MapLvVolId = std::unordered_map< G4LogicalVolume const *, VolumeId >
 

Public Member Functions

 Converter (Options &&)
 Construct with options.
 
 Converter ()
 Construct with default options.
 
result_type operator() (arg_type)
 Convert the world.
 

Detailed Description

Create an ORANGE geometry model from an in-memory Geant4 model.

Return the new world volume and a mapping of Geant4 logical volumes to VecGeom-based volume IDs.

The default Geant4 "tolerance" (often used as surface "thickness") is 1e-9 mm, and the relative tolerance when specifying a length scale is 1e-11 (so the default macro length scale is expected to be 100 mm = 10 cm). That relative tolerance is much too small for any quadric operations or angular rotations to be differentiated, so for now we'll stick with the ORANGE default tolerance of 1e-8 relative, and we assume a 1mm length scale.


The documentation for this class was generated from the following files: