pylegendgeom.LegendBaseline.coaxialTemplate package#

coaxialTemplate: Build realistic Germanium diodes of coaxial type.


Package depends on pyG4ometry and its dependencies.

pylegendgeom.LegendBaseline.coaxialTemplate

Submodules#

pylegendgeom.LegendBaseline.coaxialTemplate.icpc module#

Build the inverted coaxial point contact crystal template.

class pylegendgeom.LegendBaseline.coaxialTemplate.icpc.DetICPC(jsonfile, reg, materials)#

Bases: object

Define ICPC Germanium template.

Create ICPC detector logical volume (LV).

Parameters:
  • jsonfile (str) – JSON input file name describing crystal shape.

  • reg (pg4.geant4.Registry, optional) – if None, (almost, see next) standalone construction

  • materials (dict) – predefined materials dictionary, required input.

Return type:

None.

_build_crystal(data_dict, reg, materials)#

Build the crystal from JSON.

Parameters:

data_dict (dict) – dictionary data describing crystal shape.

Returns:

ge_lv – the crystal logical volume; placement in main code.

Return type:

pg4.geant4.LogicalVolume

_decode_polycone(datadict)#

Decode shape information from JSON file as points.

constructing a G4GenericPolycone.

Parameters:

datadict (dictionary) – Dictionary extracted from JSON file, containing crystal shape information.

Return type:

2 lists of r and z coordinates, respectively.

_read_from_file(jsonfile)#

Create crystal from description in JSON file.

Parameters:

jsonfile (str) – JSON input file name describing crystal shape.

Returns:

data – Decoded JSON file content as dictionary.

Return type:

dict

draw_geometry()#

Draw the geometry held in the World volume.

Improve/standardize colour scheme

get_crystal_lv()#

Access to logical volume as constructed here.

Returns:

Fully constructed LV of ICPC detector.

Return type:

pg4.geant4.LogicalVolume

get_name()#

Access to detector name from JSON file.

Returns:

name – Detector name string.

Return type:

str