Analysis Software
Documentation for sPHENIX simulation software
|
#include <coresoftware/blob/master/simulation/g4simulation/g4detectors/PHG4CylinderGeom_Spacalv2.h>
Public Member Functions | |
PHG4CylinderGeom_Spacalv2 () | |
~PHG4CylinderGeom_Spacalv2 () override | |
void | identify (std::ostream &os=std::cout) const override |
void | Print (Option_t *option="") const override |
void | SetDefault () override |
void | ImportParameters (const PHParameters ¶m) override |
load parameters from PHParameters, which interface to Database/XML/ROOT files | |
int | get_azimuthal_n_sec () const override |
virtual void | set_azimuthal_n_sec (int azimuthalNSec) |
double | get_azimuthal_tilt () const |
azimuthal tilt in rad | |
void | set_azimuthal_tilt (double azimuthalTilt) |
azimuthal tilt in rad | |
bool | is_azimuthal_seg_visible () const override |
virtual void | set_azimuthal_seg_visible (bool b=true) |
double | get_polar_taper_ratio () const |
void | set_polar_taper_ratio (double polarTaperRatio) |
double | get_half_polar_taper_angle () const |
double | get_sec_azimuthal_width () const |
double | get_sec_depth () const |
double | get_block_width () const |
double | get_block_depth () const |
double | get_assembly_spacing () const |
void | set_assembly_spacing (double assemblySpacing) |
double | get_reg_fiber_grid_distance_taper () const |
regulated fiber distance in the tapering direction | |
double | get_reg_fiber_grid_distance_nontaper () const |
regulated fiber distance in the non-tapering direction | |
Public Member Functions inherited from PHG4CylinderGeom_Spacalv1 | |
PHG4CylinderGeom_Spacalv1 () | |
~PHG4CylinderGeom_Spacalv1 () override | |
void | Print (Option_t *option="") const override |
double | get_max_radius () const |
double | get_half_radius () const |
double | get_length () const |
double | get_xpos () const |
void | set_xpos (double x) |
double | get_ypos () const |
void | set_ypos (double y) |
double | get_zpos () const |
void | set_zpos (double z) |
double | get_fiber_outer_r () const |
double | get_fiber_clading_thickness () const |
void | set_fiber_clading_thickness (double fiberCladingThickness) |
double | get_fiber_core_diameter () const |
void | set_fiber_core_diameter (double fiberCoreDiameter) |
double | get_fiber_distance () const |
void | set_fiber_distance (double fiberDistance) |
std::string | get_absorber_mat () const |
void | set_absorber_mat (const std::string &absorberMat) |
std::string | get_fiber_clading_mat () const |
void | set_fiber_clading_mat (const std::string &fiberCladingMat) |
std::string | get_fiber_core_mat () const |
void | set_fiber_core_mat (const std::string &fiberCoreMat) |
virtual double | get_azimuthal_distance () const |
virtual double | get_z_distance () const |
const sector_map_t & | get_sector_map () const |
sector map sector_ID -> azimuthal rotation. | |
sector_map_t & | get_sector_map () |
sector map sector_ID -> azimuthal rotation. | |
void | init_default_sector_map () |
load a default map that populate all the sectors | |
double | get_fiber_core_step_size () const |
config_t | get_config () const |
void | set_config (config_t c) |
bool | is_virualize_fiber () const |
void | set_virualize_fiber (bool virualizeFiber=true) |
int | get_construction_verbose () const |
void | set_construction_verbose (int constructionVerbose) |
Public Member Functions inherited from PHG4CylinderGeomv2 | |
PHG4CylinderGeomv2 () | |
PHG4CylinderGeomv2 (const double r, const double zmi, const double zma, const double thickn, const int n_scint) | |
~PHG4CylinderGeomv2 () override | |
void | identify (std::ostream &os=std::cout) const override |
void | set_nscint (const int i) override |
int | get_nscint () const override |
void | ImportParameters (const PHParameters ¶m) override |
load parameters from PHParameters, which interface to Database/XML/ROOT files | |
Public Member Functions inherited from PHG4CylinderGeomv1 | |
PHG4CylinderGeomv1 () | |
PHG4CylinderGeomv1 (const double r, const double zmi, const double zma, const double thickn) | |
~PHG4CylinderGeomv1 () override | |
int | get_layer () const override |
double | get_radius () const override |
double | get_thickness () const override |
double | get_zmin () const override |
double | get_zmax () const override |
void | set_layer (const int i) override |
void | set_radius (const double r) override |
void | set_thickness (const double t) override |
void | set_zmin (const double z) override |
void | set_zmax (const double z) override |
Public Member Functions inherited from PHG4CylinderGeom | |
~PHG4CylinderGeom () override | |
virtual double | get_tiltangle () const |
virtual double | get_phi_slat_zero () const |
virtual void | set_tiltangle (const double) |
virtual void | set_phi_slat_zero (const double) |
virtual void | find_segment_center (const int, const int, double[]) |
virtual void | find_strip_center (const int, const int, const int, const int, double[]) |
virtual void | find_strip_index_values (const int, const double, const double, int &, int &) |
virtual void | find_strip_center_local_coords (const int, const int, const int, double[]) |
virtual double | get_strip_y_spacing () const |
virtual double | get_strip_z_spacing () const |
virtual double | get_strip_tilt () const |
virtual int | get_N_strip_columns () const |
virtual int | get_N_strips_per_column () const |
virtual int | get_N_sensors_in_layer () const |
virtual double | get_pixel_z () const |
virtual double | get_pixel_x () const |
virtual double | get_pixel_thickness () const |
Public Member Functions inherited from PHObject | |
PHObject () | |
ctor | |
~PHObject () override | |
dtor | |
virtual PHObject * | CloneMe () const |
Virtual copy constructor. | |
virtual PHObject * | clone () const final |
PHObject * | Clone (const char *newname="") const final |
void | Copy (TObject &object) const final |
virtual void | Reset () |
Clear Event. | |
virtual int | isValid () const |
isValid returns non zero if object contains vailid data | |
virtual int | Integrate () const |
virtual int | Integrate (PHObject *) |
virtual void | CopyFrom (const PHObject *obj) |
Protected Attributes | |
int | azimuthal_n_sec |
double | azimuthal_tilt |
azimuthal tilt in rad | |
bool | azimuthal_seg_visible |
double | polar_taper_ratio |
double | assembly_spacing |
Protected Attributes inherited from PHG4CylinderGeom_Spacalv1 | |
std::string | absorber_mat |
std::string | fiber_core_mat |
std::string | fiber_clading_mat |
double | xpos |
double | ypos |
double | zpos |
double | fiber_core_diameter |
double | fiber_clading_thickness |
double | fiber_distance |
config_t | config |
bool | virualize_fiber |
int | construction_verbose |
sector_map_t | sector_map |
sector map sector_ID -> azimuthal rotation. | |
Protected Attributes inherited from PHG4CylinderGeomv2 | |
int | nscint = -9999 |
Protected Attributes inherited from PHG4CylinderGeomv1 | |
int | layer = -1 |
double | radius = NAN |
double | zmin = NAN |
double | zmax = NAN |
double | thickness = NAN |
Additional Inherited Members | |
Public Types inherited from PHG4CylinderGeom_Spacalv1 | |
typedef std::map< int, double > | sector_map_t |
sector map sector_ID -> azimuthal rotation. | |
enum | config_t { kNonProjective = 0, k1DProjectiveSpacal = kNonProjective, kFullProjective_2DTaper = 2, kFullProjective_2DTaper_SameLengthFiberPerTower = 3, kFullProjective_2DTaper_Tilted = 4, kFullProjective_2DTaper_Tilted_SameLengthFiberPerTower = 5, k2DProjectiveSpacal = kFullProjective_2DTaper_Tilted_SameLengthFiberPerTower, kInvalidSpacalConfig } |
Protected Member Functions inherited from PHG4CylinderGeom | |
PHG4CylinderGeom () | |
Definition at line 22 of file PHG4CylinderGeom_Spacalv2.h.
View newest version in sPHENIX GitHub at line 22 of file PHG4CylinderGeom_Spacalv2.h
PHG4CylinderGeom_Spacalv2::PHG4CylinderGeom_Spacalv2 | ( | ) |
Definition at line 23 of file PHG4CylinderGeom_Spacalv2.cc.
View newest version in sPHENIX GitHub at line 23 of file PHG4CylinderGeom_Spacalv2.cc
References SetDefault().
|
inlineoverride |
Definition at line 27 of file PHG4CylinderGeom_Spacalv2.h.
View newest version in sPHENIX GitHub at line 27 of file PHG4CylinderGeom_Spacalv2.h
|
inline |
Definition at line 104 of file PHG4CylinderGeom_Spacalv2.h.
View newest version in sPHENIX GitHub at line 104 of file PHG4CylinderGeom_Spacalv2.h
References assembly_spacing.
Referenced by PHG4SpacalPrototype4Detector::Construct_AzimuthalSeg(), PHG4FullProjTiltedSpacalDetector::Construct_AzimuthalSeg(), PHG4FullProjSpacalDetector::Construct_AzimuthalSeg(), get_block_depth(), get_reg_fiber_grid_distance_nontaper(), get_reg_fiber_grid_distance_taper(), get_sec_azimuthal_width(), get_sec_depth(), PHG4CylinderGeom_Spacalv3::get_tower_radial_position(), and Print().
|
overridevirtual |
Reimplemented from PHG4CylinderGeom_Spacalv1.
Definition at line 125 of file PHG4CylinderGeom_Spacalv2.cc.
View newest version in sPHENIX GitHub at line 125 of file PHG4CylinderGeom_Spacalv2.cc
References azimuthal_n_sec.
Referenced by PHG4SpacalDetector::AddCellGeometryNode(), PHG4SpacalPrototype4Detector::Construct_AzimuthalSeg(), PHG4SpacalPrototypeDetector::Construct_AzimuthalSeg(), PHG4FullProjTiltedSpacalDetector::Construct_AzimuthalSeg(), PHG4FullProjSpacalDetector::Construct_AzimuthalSeg(), PHG4SpacalPrototype4Detector::ConstructMe(), PHG4SpacalPrototypeDetector::ConstructMe(), get_sec_azimuthal_width(), PHG4CylinderGeom_Spacalv3::get_tower_radial_position(), PHG4FullProjSpacalCellReco::InitRun(), and PHG4CylinderGeom_Spacalv3::load_demo_sector_tower_map4().
|
inline |
azimuthal tilt in rad
Definition at line 49 of file PHG4CylinderGeom_Spacalv2.h.
View newest version in sPHENIX GitHub at line 49 of file PHG4CylinderGeom_Spacalv2.h
References azimuthal_tilt.
Referenced by PHG4SpacalPrototype4Detector::Construct_AzimuthalSeg(), get_sec_azimuthal_width(), PHG4CylinderGeom_Spacalv3::get_tower_radial_position(), and Print().
|
inline |
Definition at line 99 of file PHG4CylinderGeom_Spacalv2.h.
View newest version in sPHENIX GitHub at line 99 of file PHG4CylinderGeom_Spacalv2.h
References get_assembly_spacing(), get_block_width(), get_polar_taper_ratio(), and get_sec_depth().
Referenced by get_half_polar_taper_angle(), and Print().
|
inline |
Definition at line 93 of file PHG4CylinderGeom_Spacalv2.h.
View newest version in sPHENIX GitHub at line 93 of file PHG4CylinderGeom_Spacalv2.h
References get_sec_azimuthal_width().
Referenced by get_block_depth(), get_half_polar_taper_angle(), get_reg_fiber_grid_distance_nontaper(), get_reg_fiber_grid_distance_taper(), and Print().
double PHG4CylinderGeom_Spacalv2::get_half_polar_taper_angle | ( | ) | const |
Definition at line 119 of file PHG4CylinderGeom_Spacalv2.cc.
View newest version in sPHENIX GitHub at line 119 of file PHG4CylinderGeom_Spacalv2.cc
References get_block_depth(), get_block_width(), and get_polar_taper_ratio().
|
inline |
Definition at line 65 of file PHG4CylinderGeom_Spacalv2.h.
View newest version in sPHENIX GitHub at line 65 of file PHG4CylinderGeom_Spacalv2.h
References polar_taper_ratio.
Referenced by get_block_depth(), get_half_polar_taper_angle(), get_reg_fiber_grid_distance_taper(), and Print().
double PHG4CylinderGeom_Spacalv2::get_reg_fiber_grid_distance_nontaper | ( | ) | const |
regulated fiber distance in the non-tapering direction
Definition at line 182 of file PHG4CylinderGeom_Spacalv2.cc.
View newest version in sPHENIX GitHub at line 182 of file PHG4CylinderGeom_Spacalv2.cc
References get_assembly_spacing(), get_block_width(), and PHG4CylinderGeom_Spacalv1::get_fiber_distance().
Referenced by Print().
double PHG4CylinderGeom_Spacalv2::get_reg_fiber_grid_distance_taper | ( | ) | const |
regulated fiber distance in the tapering direction
Definition at line 171 of file PHG4CylinderGeom_Spacalv2.cc.
View newest version in sPHENIX GitHub at line 171 of file PHG4CylinderGeom_Spacalv2.cc
References get_assembly_spacing(), get_block_width(), PHG4CylinderGeom_Spacalv1::get_fiber_distance(), and get_polar_taper_ratio().
Referenced by Print().
double PHG4CylinderGeom_Spacalv2::get_sec_azimuthal_width | ( | ) | const |
Definition at line 106 of file PHG4CylinderGeom_Spacalv2.cc.
View newest version in sPHENIX GitHub at line 106 of file PHG4CylinderGeom_Spacalv2.cc
References double(), get_assembly_spacing(), get_azimuthal_n_sec(), get_azimuthal_tilt(), PHG4CylinderGeomv1::get_radius(), pi, and twopi.
Referenced by get_block_width(), get_sec_depth(), and Print().
|
inline |
Definition at line 82 of file PHG4CylinderGeom_Spacalv2.h.
View newest version in sPHENIX GitHub at line 82 of file PHG4CylinderGeom_Spacalv2.h
References get_assembly_spacing(), PHG4CylinderGeomv1::get_radius(), get_sec_azimuthal_width(), and PHG4CylinderGeomv1::get_thickness().
Referenced by get_block_depth(), and Print().
|
overridevirtual |
identify Function from PHObject
os | Output Stream |
Reimplemented from PHG4CylinderGeom_Spacalv1.
Reimplemented in PHG4CylinderGeom_Spacalv3.
Definition at line 28 of file PHG4CylinderGeom_Spacalv2.cc.
View newest version in sPHENIX GitHub at line 28 of file PHG4CylinderGeom_Spacalv2.cc
References PHG4CylinderGeomv1::layer, PHG4CylinderGeomv2::nscint, PHG4CylinderGeomv1::radius, PHG4CylinderGeomv1::thickness, PHG4CylinderGeomv1::zmax, and PHG4CylinderGeomv1::zmin.
|
overridevirtual |
load parameters from PHParameters, which interface to Database/XML/ROOT files
Reimplemented from PHG4CylinderGeom_Spacalv1.
Reimplemented in PHG4CylinderGeom_Spacalv3.
Definition at line 86 of file PHG4CylinderGeom_Spacalv2.cc.
View newest version in sPHENIX GitHub at line 86 of file PHG4CylinderGeom_Spacalv2.cc
References assembly_spacing, azimuthal_n_sec, azimuthal_seg_visible, azimuthal_tilt, PHParameters::exist_double_param(), PHParameters::exist_int_param(), PHParameters::get_double_param(), PHParameters::get_int_param(), PHG4CylinderGeom_Spacalv1::ImportParameters(), and polar_taper_ratio.
Referenced by PHG4CylinderGeom_Spacalv3::ImportParameters().
|
overridevirtual |
Reimplemented from PHG4CylinderGeom_Spacalv1.
Definition at line 149 of file PHG4CylinderGeom_Spacalv2.cc.
View newest version in sPHENIX GitHub at line 149 of file PHG4CylinderGeom_Spacalv2.cc
References azimuthal_seg_visible.
Referenced by PHG4SpacalPrototypeDetector::Construct_AzimuthalSeg(), PHG4SpacalPrototype4Detector::Construct_LightGuide(), PHG4SpacalPrototypeDetector::Construct_LightGuide(), PHG4SpacalPrototype4Detector::Construct_Tower(), PHG4SpacalPrototypeDetector::Construct_Tower(), PHG4SpacalPrototypeDetector::ConstructMe(), and Print().
|
override |
Definition at line 41 of file PHG4CylinderGeom_Spacalv2.cc.
View newest version in sPHENIX GitHub at line 41 of file PHG4CylinderGeom_Spacalv2.cc
References get_assembly_spacing(), get_azimuthal_tilt(), get_block_depth(), get_block_width(), get_polar_taper_ratio(), get_reg_fiber_grid_distance_nontaper(), get_reg_fiber_grid_distance_taper(), get_sec_azimuthal_width(), get_sec_depth(), is_azimuthal_seg_visible(), and PHG4CylinderGeom_Spacalv1::Print().
Referenced by PHG4CylinderGeom_Spacalv3::Print().
|
inline |
Definition at line 110 of file PHG4CylinderGeom_Spacalv2.h.
View newest version in sPHENIX GitHub at line 110 of file PHG4CylinderGeom_Spacalv2.h
References assembly_spacing.
|
virtual |
Definition at line 134 of file PHG4CylinderGeom_Spacalv2.cc.
View newest version in sPHENIX GitHub at line 134 of file PHG4CylinderGeom_Spacalv2.cc
References azimuthal_n_sec, PHG4CylinderGeom_Spacalv1::config, and PHG4CylinderGeom_Spacalv1::kNonProjective.
|
virtual |
Definition at line 154 of file PHG4CylinderGeom_Spacalv2.cc.
View newest version in sPHENIX GitHub at line 154 of file PHG4CylinderGeom_Spacalv2.cc
References azimuthal_seg_visible, KFPMath::b, PHG4CylinderGeom_Spacalv1::config, and PHG4CylinderGeom_Spacalv1::kNonProjective.
|
inline |
azimuthal tilt in rad
Definition at line 56 of file PHG4CylinderGeom_Spacalv2.h.
View newest version in sPHENIX GitHub at line 56 of file PHG4CylinderGeom_Spacalv2.h
References azimuthal_tilt.
|
inline |
Definition at line 71 of file PHG4CylinderGeom_Spacalv2.h.
View newest version in sPHENIX GitHub at line 71 of file PHG4CylinderGeom_Spacalv2.h
References polar_taper_ratio.
|
overridevirtual |
Reimplemented from PHG4CylinderGeom_Spacalv1.
Reimplemented in PHG4CylinderGeom_Spacalv3.
Definition at line 73 of file PHG4CylinderGeom_Spacalv2.cc.
View newest version in sPHENIX GitHub at line 73 of file PHG4CylinderGeom_Spacalv2.cc
References assembly_spacing, azimuthal_n_sec, azimuthal_seg_visible, azimuthal_tilt, polar_taper_ratio, and PHG4CylinderGeom_Spacalv1::SetDefault().
Referenced by PHG4CylinderGeom_Spacalv2(), and PHG4CylinderGeom_Spacalv3::SetDefault().
|
protected |
Definition at line 130 of file PHG4CylinderGeom_Spacalv2.h.
View newest version in sPHENIX GitHub at line 130 of file PHG4CylinderGeom_Spacalv2.h
Referenced by get_assembly_spacing(), ImportParameters(), PHG4CylinderGeom_Spacalv3::load_demo_sector_tower_map1(), PHG4CylinderGeom_Spacalv3::load_demo_sector_tower_map2(), PHG4CylinderGeom_Spacalv3::load_demo_sector_tower_map4(), set_assembly_spacing(), and SetDefault().
|
protected |
Definition at line 124 of file PHG4CylinderGeom_Spacalv2.h.
View newest version in sPHENIX GitHub at line 124 of file PHG4CylinderGeom_Spacalv2.h
Referenced by get_azimuthal_n_sec(), PHG4CylinderGeom_Spacalv3::identify(), ImportParameters(), PHG4CylinderGeom_Spacalv3::load_demo_sector_tower_map1(), PHG4CylinderGeom_Spacalv3::load_demo_sector_tower_map2(), PHG4CylinderGeom_Spacalv3::load_demo_sector_tower_map4(), set_azimuthal_n_sec(), and SetDefault().
|
protected |
Definition at line 128 of file PHG4CylinderGeom_Spacalv2.h.
View newest version in sPHENIX GitHub at line 128 of file PHG4CylinderGeom_Spacalv2.h
Referenced by ImportParameters(), is_azimuthal_seg_visible(), PHG4CylinderGeom_Spacalv3::load_demo_sector_tower_map1(), PHG4CylinderGeom_Spacalv3::load_demo_sector_tower_map2(), PHG4CylinderGeom_Spacalv3::load_demo_sector_tower_map4(), set_azimuthal_seg_visible(), and SetDefault().
|
protected |
azimuthal tilt in rad
Definition at line 127 of file PHG4CylinderGeom_Spacalv2.h.
View newest version in sPHENIX GitHub at line 127 of file PHG4CylinderGeom_Spacalv2.h
Referenced by get_azimuthal_tilt(), ImportParameters(), PHG4CylinderGeom_Spacalv3::load_demo_sector_tower_map1(), PHG4CylinderGeom_Spacalv3::load_demo_sector_tower_map2(), PHG4CylinderGeom_Spacalv3::load_demo_sector_tower_map4(), set_azimuthal_tilt(), and SetDefault().
|
protected |
Definition at line 129 of file PHG4CylinderGeom_Spacalv2.h.
View newest version in sPHENIX GitHub at line 129 of file PHG4CylinderGeom_Spacalv2.h
Referenced by get_polar_taper_ratio(), ImportParameters(), PHG4CylinderGeom_Spacalv3::load_demo_sector_tower_map1(), PHG4CylinderGeom_Spacalv3::load_demo_sector_tower_map2(), PHG4CylinderGeom_Spacalv3::load_demo_sector_tower_map4(), set_polar_taper_ratio(), and SetDefault().