Package org.jlab.detector.geant4.v2.SVT
Class SVTConstants
java.lang.Object
org.jlab.detector.geant4.v2.SVT.SVTConstants
Geometry for the SVT
length unit: mm (3D Primitives), cm (Geant4Basic volume positions)angle unit: deg
Conventions:
- svt = four concentric regions / superlayers
- region / superlayer = ring of a variable number of sectors
- sector = pair of sensor modules and backing structure, connected and stabilised by copper and peek supports
- module = triplet of sensors
- sensor = silicon with etched strips in active region
- layer = plane of sensitive strips, spanning active regions of module
- strip = sensitive line
- Version:
- 1.1.1
- Author:
- pdavies
- 
Field SummaryFieldsModifier and TypeFieldDescriptionstatic doublestatic doublestatic doublestatic doublestatic double[]static double[]static String[]static double[]static double[]static double[]static double[]static double[]static double[]static doublestatic doublestatic doublestatic doublestatic doublestatic doublestatic doublestatic doublestatic double[][]static final doublestatic Loggerstatic doublestatic doublestatic doublestatic intstatic intstatic intstatic intstatic intstatic intstatic int[]static intstatic intstatic intstatic intstatic doublestatic doublestatic doublestatic doublestatic doublestatic double[]static double[]static double[]static double[]static int[][]static doublestatic doublestatic final doublestatic doublestatic int[]static doublestatic doublestatic doublestatic double[]static booleanstatic double[]
- 
Constructor SummaryConstructors
- 
Method SummaryModifier and TypeMethodDescriptionstatic DatabaseConstantProviderLoads the the necessary tables for the SVT geometry for a given DatabaseConstantProvider.static int[]convertIndex2RegionSector(int aSvtIndex) Converts linear index to Region and Sector indices.static int[]convertIndex2RegionSectorFiducial(int aSurveyIndex) Converts linear index to Region, Sector, and Fiducial indices.static int[]convertLayer2RegionModule(int aLayer) Converts Layer index to Region, Module indices.static intconvertRegionModule2Layer(int aRegion, int aModule) Converts Region, Module indices to Layer index.static intconvertRegionSector2Index(int aRegion, int aSector) Converts RS indices to linear index.static intconvertRegionSectorFiducial2Index(int aRegion, int aSector, int aFiducial) Converts RSF indices to linear index.Useful for writing data files.static StringReturns the path to the database directory that contains the core parameters and constants for the SVT.
 To use with DatabaseConstantProvider: Access tables withgetCcdbPath() +"table". Access constants withgetCcdbPath() +"table/constant".static TransformgetDetectorFrame(int aRegion, int aSector, double aRadius, double aZ) Returns a transformation from the local frame to the ideal lab frame (not accounting for shifts and rotations), for a given sector module.static double[]Returns the layer/sector alignment datastatic double[][][]Returns the layer/sector alignment datastatic doublegetPhi(int aRegion, int aSector) Returns the azimuth angle from the x-axis for a given sector module.static TransformgetStripFrame(boolean aFlip) Returns a transformation for the strip frame to the local frame.static voidReads all the necessary constants from CCDB into static variables.static voidsetCcdbPath(String aPath) Sets the path to the database directory that contains the core parameters and constants for the SVT.static voidPrints alignment shift data for sectors to screen.
- 
Field Details- 
LOGGER
- 
VERBOSEpublic static boolean VERBOSE
- 
NREGIONSpublic static int NREGIONS
- 
NSECTORSpublic static int[] NSECTORS
- 
NFIDUCIALSpublic static int NFIDUCIALS
- 
NMODULESpublic static int NMODULES
- 
NSENSORSpublic static int NSENSORS
- 
NSTRIPSpublic static int NSTRIPS
- 
NPADSpublic static int NPADS
- 
STRIPOFFSETWIDpublic static double STRIPOFFSETWID
- 
READOUTPITCHpublic static double READOUTPITCH
- 
STEREOANGLEpublic static double STEREOANGLE
- 
STATUSpublic static int[] STATUS
- 
RSIpublic static int[][] RSI
- 
PHI0public static double PHI0
- 
SECTOR0public static double SECTOR0
- 
REFRADIUSpublic static double[] REFRADIUS
- 
LAYERPOSFACpublic static double LAYERPOSFAC
- 
Z0ACTIVEpublic static double[] Z0ACTIVE
- 
SUPPORTRADIUSpublic static double[] SUPPORTRADIUS
- 
FIDCUXpublic static double FIDCUX
- 
FIDPKXpublic static double FIDPKX
- 
FIDORIGINZpublic static double FIDORIGINZ
- 
FIDCUZpublic static double FIDCUZ
- 
FIDPKZ0public static double FIDPKZ0
- 
FIDPKZ1public static double FIDPKZ1
- 
ACTIVESENWIDpublic static double ACTIVESENWID
- 
PHYSSENWIDpublic static double PHYSSENWID
- 
DEADZNWIDpublic static double DEADZNWID
- 
SILICONTHKpublic static double SILICONTHK
- 
PHYSSENLENpublic static double PHYSSENLEN
- 
ACTIVESENLENpublic static double ACTIVESENLEN
- 
DEADZNLENpublic static double DEADZNLEN
- 
MICROGAPLENpublic static double MICROGAPLEN
- 
NMATERIALSpublic static int NMATERIALS
- 
MATERIALTYPES
- 
MATERIALDIMENSIONS
- 
PASSIVETHKpublic static double PASSIVETHK
- 
NLAYERSpublic static int NLAYERS
- 
NTOTALSECTORSpublic static int NTOTALSECTORS
- 
NTOTALFIDUCIALSpublic static int NTOTALFIDUCIALS
- 
LAYERRADIUSpublic static double[][] LAYERRADIUS
- 
LAYERGAPTHKpublic static double LAYERGAPTHK
- 
MODULELENpublic static double MODULELEN
- 
STRIPLENMAXpublic static double STRIPLENMAX
- 
MODULEWIDpublic static double MODULEWID
- 
SECTORLENpublic static double SECTORLEN
- 
SIDETOLpublic static final double SIDETOL- See Also:
 
- 
LENGTHTOLpublic static final double LENGTHTOL- See Also:
 
- 
FARADAYCAGERMINpublic static double[] FARADAYCAGERMIN
- 
FARADAYCAGERMAXpublic static double[] FARADAYCAGERMAX
- 
FARADAYCAGELENGTHpublic static double[] FARADAYCAGELENGTH
- 
FARADAYCAGEZPOSpublic static double[] FARADAYCAGEZPOS
- 
FARADAYCAGENAME
- 
FARADAYCAGERADLENpublic static double[] FARADAYCAGERADLEN
- 
FARADAYCAGEZOVERApublic static double[] FARADAYCAGEZOVERA
- 
FARADAYCAGERHOpublic static double[] FARADAYCAGERHO
- 
FARADAYCAGEIpublic static double[] FARADAYCAGEI
- 
REGIONPEEKRMINpublic static double[] REGIONPEEKRMIN
- 
REGIONPEEKRMAXpublic static double[] REGIONPEEKRMAX
- 
REGIONPEEKLENGTHpublic static double[] REGIONPEEKLENGTH
- 
MATERIALPROPERTIES
 
- 
- 
Constructor Details- 
SVTConstantspublic SVTConstants()
 
- 
- 
Method Details- 
connectLoads the the necessary tables for the SVT geometry for a given DatabaseConstantProvider.- Returns:
- DatabaseConstantProvider the same thing
 
- 
getCcdbPathReturns the path to the database directory that contains the core parameters and constants for the SVT.
 To use with DatabaseConstantProvider:- Access tables with getCcdbPath() +"table".
- Access constants with getCcdbPath() +"table/constant".
 - Returns:
- String a path to a directory in CCDB of the format "/geometry/detector/"
 
- Access tables with 
- 
setCcdbPathSets the path to the database directory that contains the core parameters and constants for the SVT.- Parameters:
- aPath- a path to a directory in CCDB of the format- "/geometry/detector/"
 
- 
loadReads all the necessary constants from CCDB into static variables. Please use a DatabaseConstantProvider to access CCDB and load the following tables: svt, region, support, fiducial, material, alignment.- Parameters:
- cp- a ConstantProvider that has loaded the necessary tables
 
- 
showLayerShiftDatapublic static void showLayerShiftData()Prints alignment shift data for sectors to screen.
- 
convertRegionSectorFiducial2Indexpublic static int convertRegionSectorFiducial2Index(int aRegion, int aSector, int aFiducial) throws IllegalArgumentException Converts RSF indices to linear index.Useful for writing data files.- Parameters:
- aRegion- an index starting from 0
- aSector- an index starting from 0
- aFiducial- an index starting from 0
- Returns:
- int an index used for fiducial survey data
- Throws:
- IllegalArgumentException- indices out of bounds
 
- 
convertIndex2RegionSectorFiducialpublic static int[] convertIndex2RegionSectorFiducial(int aSurveyIndex) throws IllegalArgumentException Converts linear index to Region, Sector, and Fiducial indices. For use with data files.- Parameters:
- aSurveyIndex- an index used for fiducial survey data
- Returns:
- int[] an array containing RSF indices
- Throws:
- IllegalArgumentException- index out of bounds
 
- 
convertRegionSector2Indexpublic static int convertRegionSector2Index(int aRegion, int aSector) throws IllegalArgumentException Converts RS indices to linear index.- Parameters:
- aRegion- an index starting from 0
- aSector- an index starting from 0
- Returns:
- int an index used for sector modules
- Throws:
- IllegalArgumentException- indices out of bounds
 
- 
convertIndex2RegionSectorpublic static int[] convertIndex2RegionSector(int aSvtIndex) Converts linear index to Region and Sector indices. For use with data files.- Parameters:
- aSvtIndex- an index starting from 0
- Returns:
- int[] an array containing RS indices
- Throws:
- IllegalArgumentException- index out of bounds
 
- 
convertLayer2RegionModuleConverts Layer index to Region, Module indices.- Parameters:
- aLayer- an index starting from 0
- Returns:
- int[] an array containing RM indices
- Throws:
- IllegalArgumentException- index out of bounds
 
- 
convertRegionModule2Layerpublic static int convertRegionModule2Layer(int aRegion, int aModule) throws IllegalArgumentException Converts Region, Module indices to Layer index.- Parameters:
- aRegion- an index starting from 0
- aModule- an index starting from 0
- Returns:
- int layer index starting from 0
- Throws:
- IllegalArgumentException- indices out of bounds
 
- 
getPhipublic static double getPhi(int aRegion, int aSector) Returns the azimuth angle from the x-axis for a given sector module.- Parameters:
- aRegion- an index starting from 0
- aSector- an index starting from 0
- Returns:
- double an angle in radians
 
- 
getDetectorFramepublic static Transform getDetectorFrame(int aRegion, int aSector, double aRadius, double aZ) throws IllegalArgumentException Returns a transformation from the local frame to the ideal lab frame (not accounting for shifts and rotations), for a given sector module.- Parameters:
- aRegion- an index starting from 0
- aSector- an index starting from 0
- aRadius- transverse distance from beamline
- aZ- longitudinal distance along beamline
- Returns:
- Transformation3D a sequence of transformations
- Throws:
- IllegalArgumentException- indices out of bounds
 
- 
getStripFrameReturns a transformation for the strip frame to the local frame.- Parameters:
- aFlip- whether the transformation should append a rotation of 180 deg about the z axis
- Returns:
- Transformation3D a sequence of transformations
 
- 
getLayerSectorAlignmentDatapublic static double[][][] getLayerSectorAlignmentData()Returns the layer/sector alignment data- Returns:
 
- 
getGlobalAlignmentDatapublic static double[] getGlobalAlignmentData()Returns the layer/sector alignment data- Returns:
 
 
-