#include <G4ParameterisationTrd.hh>
|
| G4ParameterisationTrdZ (EAxis axis, G4int nCopies, G4double width, G4double offset, G4VSolid *motherSolid, DivisionType divType) |
|
| ~G4ParameterisationTrdZ () override |
|
G4double | GetMaxParameter () const override |
|
void | ComputeTransformation (const G4int copyNo, G4VPhysicalVolume *physVol) const override |
|
void | ComputeDimensions (G4Trd &trd, const G4int copyNo, const G4VPhysicalVolume *pv) const override |
|
| G4VParameterisationTrd (EAxis axis, G4int nCopies, G4double offset, G4double step, G4VSolid *msolid, DivisionType divType) |
|
| ~G4VParameterisationTrd () override |
|
| G4VDivisionParameterisation (EAxis axis, G4int nDiv, G4double width, G4double offset, DivisionType divType, G4VSolid *motherSolid=nullptr) |
|
| ~G4VDivisionParameterisation () override |
|
G4VSolid * | ComputeSolid (const G4int, G4VPhysicalVolume *) override |
|
const G4String & | GetType () const |
|
EAxis | GetAxis () const |
|
G4int | GetNoDiv () const |
|
G4double | GetWidth () const |
|
G4double | GetOffset () const |
|
G4VSolid * | GetMotherSolid () const |
|
void | SetType (const G4String &type) |
|
G4int | VolumeFirstCopyNo () const |
|
void | SetHalfGap (G4double hg) |
|
G4double | GetHalfGap () const |
|
| G4VPVParameterisation ()=default |
|
virtual | ~G4VPVParameterisation ()=default |
|
virtual G4Material * | ComputeMaterial (const G4int repNo, G4VPhysicalVolume *currentVol, const G4VTouchable *parentTouch=nullptr) |
|
virtual G4bool | IsNested () const |
|
virtual G4VVolumeMaterialScanner * | GetMaterialScanner () |
|
Definition at line 169 of file G4ParameterisationTrd.hh.
◆ G4ParameterisationTrdZ()
Definition at line 394 of file G4ParameterisationTrd.cc.
399{
402
405 {
407 width, offset );
408 }
410 {
412 nDiv, offset );
413 }
414
415#ifdef G4DIVDEBUG
417 {
418 G4cout <<
" G4ParameterisationTrdZ no divisions " <<
fnDiv
419 <<
" = " << nDiv <<
G4endl
422 }
423#endif
424}
G4GLOB_DLL std::ostream G4cout
virtual void CheckParametersValidity()
void SetType(const G4String &type)
G4double CalculateWidth(G4double motherDim, G4int nDiv, G4double offset) const
G4int CalculateNDiv(G4double motherDim, G4double width, G4double offset) const
static const G4int verbose
G4VParameterisationTrd(EAxis axis, G4int nCopies, G4double offset, G4double step, G4VSolid *msolid, DivisionType divType)
◆ ~G4ParameterisationTrdZ()
G4ParameterisationTrdZ::~G4ParameterisationTrdZ |
( |
| ) |
|
|
overridedefault |
◆ ComputeDimensions()
Reimplemented from G4VPVParameterisation.
Definition at line 475 of file G4ParameterisationTrd.cc.
478{
479
481
482 G4double pDx1 = msol->GetXHalfLength1();
483 G4double DDx = (msol->GetXHalfLength2() - msol->GetXHalfLength1() );
484 G4double pDy1 = msol->GetYHalfLength1();
485 G4double DDy = (msol->GetYHalfLength2() - msol->GetYHalfLength1() );
487 G4double zLength = 2*msol->GetZHalfLength();
488
493 pDz );
494
495#ifdef G4DIVDEBUG
497 {
498 G4cout <<
" G4ParameterisationTrdZ::ComputeDimensions()"
499 <<
" - Mother TRD " <<
G4endl;
500 msol->DumpInfo();
501 G4cout <<
" - Parameterised TRD: "
504 }
505#endif
506}
void SetAllParameters(G4double pdx1, G4double pdx2, G4double pdy1, G4double pdy2, G4double pdz)
◆ ComputeTransformation()
Implements G4VDivisionParameterisation.
Definition at line 438 of file G4ParameterisationTrd.cc.
440{
442 G4double mdz = msol->GetZHalfLength();
443
444
448 {
449 origin.setZ( posi );
450 }
451 else
452 {
453 std::ostringstream message;
454 message <<
"Only axes along Z are allowed ! Axis: " <<
faxis;
455 G4Exception(
"G4ParameterisationTrdZ::ComputeTransformation()",
457 }
458
459#ifdef G4DIVDEBUG
461 {
462 G4cout << std::setprecision(8) <<
" G4ParameterisationTrdZ: "
464 <<
" Position: " << origin <<
" - Offset: " <<
foffset
466 }
467#endif
468
469
471}
void G4Exception(const char *originOfException, const char *exceptionCode, G4ExceptionSeverity severity, const char *description)
void SetTranslation(const G4ThreeVector &v)
◆ GetMaxParameter()
G4double G4ParameterisationTrdZ::GetMaxParameter |
( |
| ) |
const |
|
overridevirtual |
The documentation for this class was generated from the following files: