ACTS
Experiment-independent tracking
Loading...
Searching...
No Matches
Detray Plugin

Detailed Description

To convert an enclosed part of a tracking geometry, set ActsPlugins::DetrayPayloadConverter::Config::replacementWorld to a volume in that geometry. The converter includes that volume and all its descendants, including gap volumes. Outgoing portal segments from the replacement world to excluded volumes become end-of-world segments in the payload; internal links are preserved. A descendant linking outside the selected subtree is an error. The original tracking geometry is not modified.

The configured beampipeVolume must belong to the selected subtree and is still placed at detray index zero. Leave replacementWorld null to convert the full geometry. Both pointers are non-owning and must remain valid during conversion.

Set ActsPlugins::DetrayPayloadConverter::Config::includeWorld to false to omit the selected world itself and convert only its descendants. This also works with the input world when replacementWorld is null. Portal segments targeting the omitted world become end-of-world segments; other links to excluded volumes remain errors. The default is true.

Omitting the world removes its padding, surfaces and material: tracks terminate at its children's shell rather than crossing the world's space. The selected world must have descendants and cannot itself be the configured beampipe.

Classes

struct  ActsPlugins::DetrayConversionUtils::Cache
 Detray conversion cache object. More...
class  ActsPlugins::DetrayGeometryConverter
 Converter from an ACTS TrackingGeometry to a detray detector. More...
class  ActsPlugins::DetrayPayloadConverter
 Converter for ACTS geometry to Detray payload format. More...
class  ActsPlugins::DetrayUnsupportedMaterialException
 Exception thrown when encountering unsupported material types in Detray conversion. More...

Functions

detray::io::axis_payload ActsPlugins::DetrayConversionUtils::convertAxis (const Acts::IAxis &axis)
 Convert an IAxis to a detray axis payload.
detray::axis::label ActsPlugins::DetrayConversionUtils::convertAxisDirection (Acts::AxisDirection bValue)
 Convert the binning value.
detray::io::axis_payload ActsPlugins::DetrayConversionUtils::convertBinningData (const Acts::BinningData &bData)
 Convert the binning data to an axis.
detray::axis::bounds ActsPlugins::DetrayConversionUtils::convertBinningOption (Acts::BinningOption bOption)
 Convert the binning option.
detray::axis::binning ActsPlugins::DetrayConversionUtils::convertBinningType (Acts::BinningType bType)
 Convert the binning type.
std::tuple< Acts::BinUtility, bool > ActsPlugins::DetrayConversionUtils::convertBinUtilityTo2D (const Acts::BinUtility &bUtility)
 Convert a 1D BinUtility to a 2D BinUtility for Detray.
detray::io::surface_material_payload ActsPlugins::DetrayConversionUtils::convertMaterialSlab (const Acts::MaterialSlab &slab)
 Convert a MaterialSlab to a detray material slab payload.
detray::io::transform_payload ActsPlugins::DetrayConversionUtils::convertTransform (const Acts::Transform3 &transform)
 Convert a Transform3 to a detray transform payload.

Function Documentation

◆ convertAxis()

detray::io::axis_payload ActsPlugins::DetrayConversionUtils::convertAxis ( const Acts::IAxis & axis)

Convert an IAxis to a detray axis payload.

Parameters
axisthe axis to be converted
Returns
a detray axis payload

◆ convertAxisDirection()

detray::axis::label ActsPlugins::DetrayConversionUtils::convertAxisDirection ( Acts::AxisDirection bValue)

Convert the binning value.

Note
The IO label is ignored during detector construction in detray, it is only added for readability
Parameters
bValuethe binning value
Returns
a detray binning value

◆ convertBinningData()

detray::io::axis_payload ActsPlugins::DetrayConversionUtils::convertBinningData ( const Acts::BinningData & bData)

Convert the binning data to an axis.

Parameters
bDatathe binning data to be converted
Returns
a detray axis payload

◆ convertBinningOption()

detray::axis::bounds ActsPlugins::DetrayConversionUtils::convertBinningOption ( Acts::BinningOption bOption)

Convert the binning option.

Parameters
bOptionthe binning option
Returns
a detray binning option

◆ convertBinningType()

detray::axis::binning ActsPlugins::DetrayConversionUtils::convertBinningType ( Acts::BinningType bType)

Convert the binning type.

Parameters
bTypethe binning type
Returns
a detray binning type

◆ convertBinUtilityTo2D()

std::tuple< Acts::BinUtility, bool > ActsPlugins::DetrayConversionUtils::convertBinUtilityTo2D ( const Acts::BinUtility & bUtility)

Convert a 1D BinUtility to a 2D BinUtility for Detray.

Detray expects 2-dimensional grids. This function converts 1D grids to 2D by adding a dummy second dimension. Currently supported 2D grids are: x-y, r-phi, phi-z

Parameters
bUtilitythe bin utility to be converted (may be 1D or 2D)
Returns
a tuple containing:
  • the converted 2D BinUtility
  • a boolean indicating if axes were swapped

◆ convertMaterialSlab()

detray::io::surface_material_payload ActsPlugins::DetrayConversionUtils::convertMaterialSlab ( const Acts::MaterialSlab & slab)

Convert a MaterialSlab to a detray material slab payload.

Parameters
slabthe material slab to be converted
Returns
a detray material slab payload

◆ convertTransform()

detray::io::transform_payload ActsPlugins::DetrayConversionUtils::convertTransform ( const Acts::Transform3 & transform)

Convert a Transform3 to a detray transform payload.

Parameters
transformthe transform to be converted
Returns
a detray transform payload