Import Geant4 10.4.2 source tree

This commit is contained in:
Gabriele Cosmo
2018-05-25 16:18:53 +02:00
parent fe04dcb406
commit fe81a77428
233 changed files with 44301 additions and 105671 deletions
@@ -231,24 +231,26 @@ G4PolyconeHistorical* G4UPolycone::GetOriginalParameters() const
}
void G4UPolycone::SetOriginalParameters()
{
G4int numPlanes = GetNSections()+1;
vecgeom::PolyconeHistorical* original_parameters = Base_t::GetOriginalParameters();
fOriginalParameters.Start_angle = original_parameters->fHStart_angle;
fOriginalParameters.Opening_angle = original_parameters->fHOpening_angle;
fOriginalParameters.Num_z_planes = original_parameters->fHNum_z_planes;
delete [] fOriginalParameters.Z_values;
delete [] fOriginalParameters.Rmin;
delete [] fOriginalParameters.Rmax;
G4int numPlanes = fOriginalParameters.Num_z_planes;
fOriginalParameters.Z_values = new G4double[numPlanes];
fOriginalParameters.Rmin = new G4double[numPlanes];
fOriginalParameters.Rmax = new G4double[numPlanes];
for (G4int j=0; j<numPlanes; ++j)
{
fOriginalParameters.Z_values[j] = GetZAtPlane(j);
fOriginalParameters.Rmax[j] = GetRmaxAtPlane(j);
fOriginalParameters.Rmin[j] = GetRminAtPlane(j);
}
fOriginalParameters.Start_angle = Base_t::GetStartPhi();
fOriginalParameters.Opening_angle = Base_t::GetDeltaPhi();
fOriginalParameters.Num_z_planes = numPlanes;
for (G4int i=0; i<numPlanes; ++i)
{
fOriginalParameters.Z_values[i] = original_parameters->fHZ_values[i];
fOriginalParameters.Rmin[i] = original_parameters->fHRmin[i];
fOriginalParameters.Rmax[i] = original_parameters->fHRmax[i];
}
}
void G4UPolycone::SetOriginalParameters(G4PolyconeHistorical* pars)
{
@@ -245,7 +245,16 @@ G4PolyhedraHistorical* G4UPolyhedra::GetOriginalParameters() const
}
void G4UPolyhedra::SetOriginalParameters()
{
G4int numPlanes = GetZSegmentCount() + 1;
G4double startPhi = GetPhiStart();
G4double deltaPhi = GetPhiDelta();
G4int numPlanes = GetZSegmentCount() + 1;
G4int numSides = GetSideCount();
fOriginalParameters.Start_angle = startPhi;
fOriginalParameters.Opening_angle = deltaPhi;
fOriginalParameters.Num_z_planes = numPlanes;
fOriginalParameters.numSide = numSides;
delete [] fOriginalParameters.Z_values;
delete [] fOriginalParameters.Rmin;
delete [] fOriginalParameters.Rmax;
@@ -253,17 +262,13 @@ void G4UPolyhedra::SetOriginalParameters()
fOriginalParameters.Rmin = new G4double[numPlanes];
fOriginalParameters.Rmax = new G4double[numPlanes];
for (G4int j=0; j<numPlanes; ++j)
G4double convertRad = std::cos(0.5*deltaPhi/numSides);
for (G4int i=0; i<numPlanes; ++i)
{
fOriginalParameters.Z_values[j] = GetZPlanes()[j];
fOriginalParameters.Rmax[j] = GetRMax()[j];
fOriginalParameters.Rmin[j] = GetRMin()[j];
fOriginalParameters.Z_values[i] = GetZPlanes()[i];
fOriginalParameters.Rmax[i] = GetRMax()[i]/convertRad;
fOriginalParameters.Rmin[i] = GetRMin()[i]/convertRad;
}
fOriginalParameters.Start_angle = GetPhiStart();
fOriginalParameters.Opening_angle = GetPhiDelta();
fOriginalParameters.Num_z_planes = numPlanes;
fOriginalParameters.numSide = GetSideCount();
}
void G4UPolyhedra::SetOriginalParameters(G4PolyhedraHistorical* pars)
{
@@ -298,18 +303,17 @@ G4bool G4UPolyhedra::Reset()
wrDelta = twopi;
}
wrNumSide = fOriginalParameters.numSide;
G4double convertRad = 1./std::cos(0.5*wrDelta/wrNumSide);
rzcorners.resize(0);
for (G4int i=0; i<fOriginalParameters.Num_z_planes; ++i)
{
G4double z = fOriginalParameters.Z_values[i];
G4double r = fOriginalParameters.Rmax[i]*convertRad;
G4double r = fOriginalParameters.Rmax[i];
rzcorners.push_back(G4TwoVector(r,z));
}
for (G4int i=fOriginalParameters.Num_z_planes-1; i>=0; --i)
{
G4double z = fOriginalParameters.Z_values[i];
G4double r = fOriginalParameters.Rmin[i]*convertRad;
G4double r = fOriginalParameters.Rmin[i];
rzcorners.push_back(G4TwoVector(r,z));
}
std::vector<G4int> iout;