Changeset 1347 for trunk/source/geometry/divisions
- Timestamp:
- Dec 22, 2010, 3:52:27 PM (14 years ago)
- Location:
- trunk/source/geometry/divisions
- Files:
-
- 47 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/source/geometry/divisions/GNUmakefile
r831 r1347 1 # $Id: GNUmakefile,v 1. 4 2004/06/11 14:17:13gcosmo Exp $1 # $Id: GNUmakefile,v 1.6 2010/10/27 07:34:32 gcosmo Exp $ 2 2 # ---------------------------------------------------------------------- 3 3 # GNUmakefile for geometry/divisions library. Gabriele Cosmo, 16/06/03. -
trunk/source/geometry/divisions/History
r1228 r1347 1 $Id: History,v 1.3 1 2009/05/20 08:55:23 gcosmo Exp $1 $Id: History,v 1.35 2010/11/10 09:16:33 gcosmo Exp $ 2 2 ------------------------------------------------------------------- 3 3 … … 17 17 * Reverse chronological order (last date on top), please * 18 18 ---------------------------------------------------------- 19 20 November, 9th, 2010 M.Asai (geomdiv-V09-03-02) 21 - Introducing G4ReplicatedSlice, allowing for gaps in between divided daughter 22 volumes. 23 24 September, 6th, 2010 G.Cosmo (geomdiv-V09-03-01) 25 - Removed obvious else statement in constructors of G4PVDivision. 26 27 July, 2nd, 2010 G.Cosmo (geomdiv-V09-03-00) 28 - Improved logic in G4PVDivision constructors and in method 29 G4PVDivisionFactory::CreatePVDivision() in case of invalid construct. 30 - Properly initialise Boolean flag 'bDivInTrap' in G4VParameterisationTrd 31 constructor. 32 - G4ParameterisationTrd: disabled unreachable error message in method 33 G4ParameterisationTrdX::CheckParametersValidity(). 34 - Removed uninitialised member in G4ParameterisationTrdX and correction in 35 method ComputeSolid(). 36 - Get rid of unnecessary virtual specification for leaf classes in the 37 hierarchy... 19 38 20 39 May, 20th, 2009 I.Hrivnacova (geomdiv-V09-02-00) -
trunk/source/geometry/divisions/include/G4PVDivision.hh
r1337 r1347 26 26 // 27 27 // $Id: G4PVDivision.hh,v 1.14 2008/12/03 16:41:45 arce Exp $ 28 // GEANT4 tag $Name: geant4-09-04- beta-01$28 // GEANT4 tag $Name: geant4-09-04-ref-00 $ 29 29 // 30 30 // class G4PVDivision -
trunk/source/geometry/divisions/include/G4PVDivisionFactory.hh
r1337 r1347 26 26 // 27 27 // $Id: G4PVDivisionFactory.hh,v 1.2 2006/06/29 18:18:09 gunter Exp $ 28 // GEANT4 tag $Name: geant4-09-04- beta-01$28 // GEANT4 tag $Name: geant4-09-04-ref-00 $ 29 29 // 30 30 // -
trunk/source/geometry/divisions/include/G4ParameterisationBox.hh
r1337 r1347 25 25 // 26 26 // 27 // $Id: G4ParameterisationBox.hh,v 1. 6 2006/06/29 18:18:11 gunterExp $28 // GEANT4 tag $Name: geant4-09-04- beta-01$27 // $Id: G4ParameterisationBox.hh,v 1.7 2010/07/02 10:46:27 gcosmo Exp $ 28 // GEANT4 tag $Name: geant4-09-04-ref-00 $ 29 29 // 30 30 // classes G4ParameterisationBoxX, … … 51 51 52 52 // Dummy declarations to get rid of warnings ... 53 // 53 54 class G4Cons; 54 55 class G4Trd; … … 80 81 G4double offset, G4double step, 81 82 G4VSolid* msolid, DivisionType divType ); 82 83 virtual ~G4ParameterisationBoxX(); 84 85 virtual G4double GetMaxParameter() const; 86 87 virtual void ComputeTransformation( const G4int copyNo, 88 G4VPhysicalVolume* physVol ) const; 83 ~G4ParameterisationBoxX(); 84 85 G4double GetMaxParameter() const; 86 87 void ComputeTransformation( const G4int copyNo, 88 G4VPhysicalVolume* physVol ) const; 89 89 void ComputeDimensions(G4Box& box, const G4int copyNo, 90 90 const G4VPhysicalVolume* physVol) const; … … 123 123 G4double offset, G4double step, 124 124 G4VSolid* msolid, DivisionType divType ); 125 virtual~G4ParameterisationBoxY();126 127 virtualG4double GetMaxParameter() const;128 129 v irtual void ComputeTransformation( const G4int copyNo,130 125 ~G4ParameterisationBoxY(); 126 127 G4double GetMaxParameter() const; 128 129 void ComputeTransformation( const G4int copyNo, 130 G4VPhysicalVolume* physVol ) const; 131 131 132 132 void ComputeDimensions(G4Box& box, const G4int copyNo, … … 166 166 G4double offset, G4double step, 167 167 G4VSolid* msolid, DivisionType divType ); 168 virtual~G4ParameterisationBoxZ();169 170 virtualG4double GetMaxParameter() const;171 172 v irtual void ComputeTransformation( const G4int copyNo,173 168 ~G4ParameterisationBoxZ(); 169 170 G4double GetMaxParameter() const; 171 172 void ComputeTransformation( const G4int copyNo, 173 G4VPhysicalVolume* physVol ) const; 174 174 void ComputeDimensions(G4Box& box, const G4int copyNo, 175 175 const G4VPhysicalVolume* physVol) const; -
trunk/source/geometry/divisions/include/G4ParameterisationCons.hh
r1337 r1347 25 25 // 26 26 // 27 // $Id: G4ParameterisationCons.hh,v 1. 6 2006/06/29 18:18:13 gunterExp $28 // GEANT4 tag $Name: geant4-09-04- beta-01$27 // $Id: G4ParameterisationCons.hh,v 1.7 2010/07/02 10:46:27 gcosmo Exp $ 28 // GEANT4 tag $Name: geant4-09-04-ref-00 $ 29 29 // 30 30 // classes G4ParameterisationConsRho, … … 51 51 52 52 // Dummy declarations to get rid of warnings ... 53 // 53 54 class G4Trd; 54 55 class G4Trap; … … 81 82 G4double offset, G4double step, 82 83 G4VSolid* motherSolid, DivisionType divType ); 83 virtual~G4ParameterisationConsRho();84 85 virtualG4double GetMaxParameter() const;86 87 v irtual void ComputeTransformation( const G4int copyNo,88 84 ~G4ParameterisationConsRho(); 85 86 G4double GetMaxParameter() const; 87 88 void ComputeTransformation( const G4int copyNo, 89 G4VPhysicalVolume* physVol ) const; 89 90 void ComputeDimensions( G4Cons& tubs, const G4int copyNo, 90 91 const G4VPhysicalVolume* physVol) const; … … 123 124 G4double offset, G4double step, 124 125 G4VSolid* motherSolid, DivisionType divType ); 125 virtual~G4ParameterisationConsPhi();126 127 virtualG4double GetMaxParameter() const;128 129 v irtual void ComputeTransformation( const G4int copyNo,130 126 ~G4ParameterisationConsPhi(); 127 128 G4double GetMaxParameter() const; 129 130 void ComputeTransformation( const G4int copyNo, 131 G4VPhysicalVolume* physVol ) const; 131 132 void ComputeDimensions( G4Cons& tubs, const G4int copyNo, 132 133 const G4VPhysicalVolume* physVol ) const; … … 165 166 G4double offset, G4double step, 166 167 G4VSolid* motherSolid, DivisionType divType ); 167 virtual~G4ParameterisationConsZ();168 169 virtualG4double GetMaxParameter() const;170 171 v irtual void ComputeTransformation( const G4int copyNo,172 168 ~G4ParameterisationConsZ(); 169 170 G4double GetMaxParameter() const; 171 172 void ComputeTransformation( const G4int copyNo, 173 G4VPhysicalVolume* physVol ) const; 173 174 void ComputeDimensions( G4Cons& tubs, const G4int copyNo, 174 175 const G4VPhysicalVolume* physVol ) const; -
trunk/source/geometry/divisions/include/G4ParameterisationPara.hh
r1337 r1347 25 25 // 26 26 // 27 // $Id: G4ParameterisationPara.hh,v 1. 7 2006/06/29 18:18:15 gunterExp $28 // GEANT4 tag $Name: geant4-09-04- beta-01$27 // $Id: G4ParameterisationPara.hh,v 1.8 2010/07/02 10:46:27 gcosmo Exp $ 28 // GEANT4 tag $Name: geant4-09-04-ref-00 $ 29 29 // 30 30 // classes G4ParameterisationParaX, … … 49 49 class G4VSolid; 50 50 class G4VPhysicalVolume; 51 51 52 // Dummy declarations to get rid of warnings ... 53 // 52 54 class G4Cons; 53 55 class G4Cons; … … 79 81 G4double offset, G4double step, 80 82 G4VSolid* msolid, DivisionType divType ); 81 virtual~G4ParameterisationParaX();82 83 virtualG4double GetMaxParameter() const;84 85 v irtual void ComputeTransformation( const G4int copyNo,86 83 ~G4ParameterisationParaX(); 84 85 G4double GetMaxParameter() const; 86 87 void ComputeTransformation( const G4int copyNo, 88 G4VPhysicalVolume* physVol ) const; 87 89 void ComputeDimensions(G4Para& para, const G4int copyNo, 88 90 const G4VPhysicalVolume* pv) const; … … 123 125 G4double offset, G4double step, 124 126 G4VSolid* msolid, DivisionType divType ); 125 virtual~G4ParameterisationParaY();126 127 virtualG4double GetMaxParameter() const;128 129 v irtual void ComputeTransformation( const G4int copyNo,130 127 ~G4ParameterisationParaY(); 128 129 G4double GetMaxParameter() const; 130 131 void ComputeTransformation( const G4int copyNo, 132 G4VPhysicalVolume* physVol ) const; 131 133 void ComputeDimensions(G4Para& para, const G4int copyNo, 132 134 const G4VPhysicalVolume* pv) const; … … 167 169 G4double offset, G4double step, 168 170 G4VSolid* msolid, DivisionType divType ); 169 virtual~G4ParameterisationParaZ();170 171 virtualG4double GetMaxParameter() const;172 173 v irtual void ComputeTransformation( const G4int copyNo,174 171 ~G4ParameterisationParaZ(); 172 173 G4double GetMaxParameter() const; 174 175 void ComputeTransformation( const G4int copyNo, 176 G4VPhysicalVolume* physVol ) const; 175 177 void ComputeDimensions(G4Para& para, const G4int copyNo, 176 178 const G4VPhysicalVolume* pv) const; -
trunk/source/geometry/divisions/include/G4ParameterisationPolycone.hh
r1337 r1347 25 25 // 26 26 // 27 // $Id: G4ParameterisationPolycone.hh,v 1. 8 2009/05/14 14:19:32 ivanaExp $28 // GEANT4 tag $Name: geant4-09-04- beta-01$27 // $Id: G4ParameterisationPolycone.hh,v 1.9 2010/07/02 10:46:27 gcosmo Exp $ 28 // GEANT4 tag $Name: geant4-09-04-ref-00 $ 29 29 // 30 30 // classes G4ParameterisationPolyconeRho, … … 51 51 52 52 // Dummy declarations to get rid of warnings ... 53 // 53 54 class G4Trd; 54 55 class G4Trap; … … 85 86 G4VSolid* motherSolid, 86 87 DivisionType divType ); 87 virtual~G4ParameterisationPolyconeRho();88 89 v irtual void CheckParametersValidity();90 91 virtualG4double GetMaxParameter() const;92 93 v irtual void ComputeTransformation( const G4int copyNo,94 88 ~G4ParameterisationPolyconeRho(); 89 90 void CheckParametersValidity(); 91 92 G4double GetMaxParameter() const; 93 94 void ComputeTransformation( const G4int copyNo, 95 G4VPhysicalVolume* physVol ) const; 95 96 void ComputeDimensions( G4Polycone& pcone, const G4int copyNo, 96 97 const G4VPhysicalVolume* physVol ) const; … … 134 135 G4VSolid* motherSolid, 135 136 DivisionType divType ); 136 virtual~G4ParameterisationPolyconePhi();137 138 virtualG4double GetMaxParameter() const;139 140 v irtual void ComputeTransformation( const G4int copyNo,141 137 ~G4ParameterisationPolyconePhi(); 138 139 G4double GetMaxParameter() const; 140 141 void ComputeTransformation( const G4int copyNo, 142 G4VPhysicalVolume* physVol ) const; 142 143 void ComputeDimensions( G4Polycone& pcone, const G4int copyNo, 143 144 const G4VPhysicalVolume* physVol ) const; … … 181 182 G4VSolid* motherSolid, 182 183 DivisionType divType ); 183 virtual~G4ParameterisationPolyconeZ();184 185 v irtual void CheckParametersValidity();186 187 virtualG4double GetMaxParameter() const;188 189 v irtual void ComputeTransformation( const G4int copyNo,190 184 ~G4ParameterisationPolyconeZ(); 185 186 void CheckParametersValidity(); 187 188 G4double GetMaxParameter() const; 189 190 void ComputeTransformation( const G4int copyNo, 191 G4VPhysicalVolume* physVol ) const; 191 192 void ComputeDimensions( G4Polycone& pcone, const G4int copyNo, 192 193 const G4VPhysicalVolume* physVol ) const; 193 194 194 private: 195 G4double GetR(G4double z, G4double z1, G4double r1, G4double z2, G4double r2) const; 195 private: 196 197 G4double GetR(G4double z, G4double z1, G4double r1, 198 G4double z2, G4double r2) const; 196 199 G4double GetRmin(G4double z, G4int nsegment) const; 197 200 G4double GetRmax(G4double z, G4int nsegment) const; 198 201 202 // Dummy declarations to get rid of warnings ... 203 204 void ComputeDimensions (G4Trd&,const G4int, 205 const G4VPhysicalVolume*) const {} 206 void ComputeDimensions (G4Trap&,const G4int, 207 const G4VPhysicalVolume*) const {} 208 void ComputeDimensions (G4Box&,const G4int, 209 const G4VPhysicalVolume*) const {} 210 void ComputeDimensions (G4Orb&,const G4int, 211 const G4VPhysicalVolume*) const {} 212 void ComputeDimensions (G4Sphere&,const G4int, 213 const G4VPhysicalVolume*) const {} 214 void ComputeDimensions (G4Torus&,const G4int, 215 const G4VPhysicalVolume*) const {} 216 void ComputeDimensions (G4Para&,const G4int, 217 const G4VPhysicalVolume*) const {} 218 void ComputeDimensions (G4Hype&,const G4int, 219 const G4VPhysicalVolume*) const {} 220 void ComputeDimensions (G4Tubs&,const G4int, 221 const G4VPhysicalVolume*) const {} 222 void ComputeDimensions (G4Cons&,const G4int, 223 const G4VPhysicalVolume*) const {} 224 void ComputeDimensions (G4Polyhedra&,const G4int, 225 const G4VPhysicalVolume*) const {} 226 private: 227 199 228 G4int fNSegment; 200 229 G4PolyconeHistorical* fOrigParamMother; 201 202 // Dummy declarations to get rid of warnings ...203 204 void ComputeDimensions (G4Trd&,const G4int,205 const G4VPhysicalVolume*) const {}206 void ComputeDimensions (G4Trap&,const G4int,207 const G4VPhysicalVolume*) const {}208 void ComputeDimensions (G4Box&,const G4int,209 const G4VPhysicalVolume*) const {}210 void ComputeDimensions (G4Orb&,const G4int,211 const G4VPhysicalVolume*) const {}212 void ComputeDimensions (G4Sphere&,const G4int,213 const G4VPhysicalVolume*) const {}214 void ComputeDimensions (G4Torus&,const G4int,215 const G4VPhysicalVolume*) const {}216 void ComputeDimensions (G4Para&,const G4int,217 const G4VPhysicalVolume*) const {}218 void ComputeDimensions (G4Hype&,const G4int,219 const G4VPhysicalVolume*) const {}220 void ComputeDimensions (G4Tubs&,const G4int,221 const G4VPhysicalVolume*) const {}222 void ComputeDimensions (G4Cons&,const G4int,223 const G4VPhysicalVolume*) const {}224 void ComputeDimensions (G4Polyhedra&,const G4int,225 const G4VPhysicalVolume*) const {}226 230 }; 227 231 -
trunk/source/geometry/divisions/include/G4ParameterisationPolyhedra.hh
r1337 r1347 25 25 // 26 26 // 27 // $Id: G4ParameterisationPolyhedra.hh,v 1. 9 2009/05/14 14:19:32 ivanaExp $28 // GEANT4 tag $Name: geant4-09-04- beta-01$27 // $Id: G4ParameterisationPolyhedra.hh,v 1.10 2010/07/02 10:46:27 gcosmo Exp $ 28 // GEANT4 tag $Name: geant4-09-04-ref-00 $ 29 29 // 30 30 // classes G4ParameterisationPolyhedraRho, … … 51 51 52 52 // Dummy declarations to get rid of warnings ... 53 // 53 54 class G4Trd; 54 55 class G4Trap; … … 91 92 G4VSolid* motherSolid, 92 93 DivisionType divType ); 93 virtual~G4ParameterisationPolyhedraRho();94 95 v irtual void CheckParametersValidity();96 97 virtualG4double GetMaxParameter() const;98 99 v irtual void ComputeTransformation( const G4int copyNo,100 94 ~G4ParameterisationPolyhedraRho(); 95 96 void CheckParametersValidity(); 97 98 G4double GetMaxParameter() const; 99 100 void ComputeTransformation( const G4int copyNo, 101 G4VPhysicalVolume* physVol ) const; 101 102 void ComputeDimensions( G4Polyhedra& phedra, const G4int copyNo, 102 103 const G4VPhysicalVolume* physVol ) const; … … 140 141 G4VSolid* motherSolid, 141 142 DivisionType divType ); 142 virtual~G4ParameterisationPolyhedraPhi();143 144 v irtual void CheckParametersValidity();145 146 virtualG4double GetMaxParameter() const;147 148 v irtual void ComputeTransformation( const G4int copyNo,149 143 ~G4ParameterisationPolyhedraPhi(); 144 145 void CheckParametersValidity(); 146 147 G4double GetMaxParameter() const; 148 149 void ComputeTransformation( const G4int copyNo, 150 G4VPhysicalVolume* physVol ) const; 150 151 void ComputeDimensions( G4Polyhedra& phedra, const G4int copyNo, 151 152 const G4VPhysicalVolume* physVol ) const; … … 189 190 G4VSolid* motherSolid, 190 191 DivisionType divType ); 191 virtual~G4ParameterisationPolyhedraZ();192 193 v irtual void CheckParametersValidity();194 195 virtualG4double GetMaxParameter() const;196 197 v irtual void ComputeTransformation( const G4int copyNo,198 192 ~G4ParameterisationPolyhedraZ(); 193 194 void CheckParametersValidity(); 195 196 G4double GetMaxParameter() const; 197 198 void ComputeTransformation( const G4int copyNo, 199 G4VPhysicalVolume* physVol ) const; 199 200 void ComputeDimensions( G4Polyhedra& phedra, const G4int copyNo, 200 201 const G4VPhysicalVolume* physVol ) const; 201 202 202 private: 203 G4double GetR(G4double z, G4double z1, G4double r1, G4double z2, G4double r2) const; 203 private: 204 205 G4double GetR(G4double z, G4double z1, G4double r1, 206 G4double z2, G4double r2) const; 204 207 G4double GetRmin(G4double z, G4int nsegment) const; 205 208 G4double GetRmax(G4double z, G4int nsegment) const; 206 209 210 // Dummy declarations to get rid of warnings ... 211 void ComputeDimensions (G4Trd&,const G4int, 212 const G4VPhysicalVolume*) const {} 213 void ComputeDimensions (G4Trap&,const G4int, 214 const G4VPhysicalVolume*) const {} 215 void ComputeDimensions (G4Box&,const G4int, 216 const G4VPhysicalVolume*) const {} 217 void ComputeDimensions (G4Sphere&,const G4int, 218 const G4VPhysicalVolume*) const {} 219 void ComputeDimensions (G4Orb&,const G4int, 220 const G4VPhysicalVolume*) const {} 221 void ComputeDimensions (G4Torus&,const G4int, 222 const G4VPhysicalVolume*) const {} 223 void ComputeDimensions (G4Para&,const G4int, 224 const G4VPhysicalVolume*) const {} 225 void ComputeDimensions (G4Hype&,const G4int, 226 const G4VPhysicalVolume*) const {} 227 void ComputeDimensions (G4Tubs&,const G4int, 228 const G4VPhysicalVolume*) const {} 229 void ComputeDimensions (G4Cons&,const G4int, 230 const G4VPhysicalVolume*) const {} 231 void ComputeDimensions (G4Polycone&,const G4int, 232 const G4VPhysicalVolume*) const {} 233 private: 234 207 235 G4int fNSegment; 208 236 G4PolyhedraHistorical* fOrigParamMother; 209 210 // Dummy declarations to get rid of warnings ...211 void ComputeDimensions (G4Trd&,const G4int,212 const G4VPhysicalVolume*) const {}213 void ComputeDimensions (G4Trap&,const G4int,214 const G4VPhysicalVolume*) const {}215 void ComputeDimensions (G4Box&,const G4int,216 const G4VPhysicalVolume*) const {}217 void ComputeDimensions (G4Sphere&,const G4int,218 const G4VPhysicalVolume*) const {}219 void ComputeDimensions (G4Orb&,const G4int,220 const G4VPhysicalVolume*) const {}221 void ComputeDimensions (G4Torus&,const G4int,222 const G4VPhysicalVolume*) const {}223 void ComputeDimensions (G4Para&,const G4int,224 const G4VPhysicalVolume*) const {}225 void ComputeDimensions (G4Hype&,const G4int,226 const G4VPhysicalVolume*) const {}227 void ComputeDimensions (G4Tubs&,const G4int,228 const G4VPhysicalVolume*) const {}229 void ComputeDimensions (G4Cons&,const G4int,230 const G4VPhysicalVolume*) const {}231 void ComputeDimensions (G4Polycone&,const G4int,232 const G4VPhysicalVolume*) const {}233 237 }; 234 238 -
trunk/source/geometry/divisions/include/G4ParameterisationTrd.hh
r1337 r1347 25 25 // 26 26 // 27 // $Id: G4ParameterisationTrd.hh,v 1. 8 2008/12/03 16:48:48 arceExp $28 // GEANT4 tag $Name: geant4-09-04- beta-01$27 // $Id: G4ParameterisationTrd.hh,v 1.9 2010/07/02 10:46:27 gcosmo Exp $ 28 // GEANT4 tag $Name: geant4-09-04-ref-00 $ 29 29 // 30 30 // classes G4ParameterisationTrdX … … 45 45 #define G4ParameterisationTrd_H 1 46 46 47 #include <vector> 48 47 49 #include "G4VDivisionParameterisation.hh" 48 50 #include "G4VSolid.hh" … … 51 53 52 54 // Dummy declarations to get rid of warnings ... 55 // 53 56 class G4Cons; 54 57 class G4Box; … … 61 64 class G4Polycone; 62 65 class G4Polyhedra; 63 #include <vector>64 66 65 67 class G4VParameterisationTrd : public G4VDivisionParameterisation … … 73 75 virtual ~G4VParameterisationTrd(); 74 76 75 76 protected: 77 G4bool bDivInTrap;77 protected: 78 79 G4bool bDivInTrap; 78 80 }; 79 81 … … 85 87 G4double width, G4double offset, 86 88 G4VSolid* motherSolid, DivisionType divType ); 87 virtual~G4ParameterisationTrdX();88 89 v irtual void CheckParametersValidity();90 91 virtualG4double GetMaxParameter() const;92 93 v irtual void ComputeTransformation(const G4int copyNo,94 95 96 v irtual void ComputeDimensions(G4Trd& trd, const G4int copyNo,97 const G4VPhysicalVolume* pv) const; 98 99 v irtual void ComputeDimensions(G4Trap& trd, const G4int copyNo,89 ~G4ParameterisationTrdX(); 90 91 void CheckParametersValidity(); 92 93 G4double GetMaxParameter() const; 94 95 void ComputeTransformation(const G4int copyNo, 96 G4VPhysicalVolume* physVol) const; 97 98 void ComputeDimensions(G4Trd& trd, const G4int copyNo, 99 const G4VPhysicalVolume* pv) const; 100 101 void ComputeDimensions(G4Trap& trd, const G4int copyNo, 100 102 const G4VPhysicalVolume* pv) const; 101 103 102 virtualG4VSolid* ComputeSolid(const G4int, G4VPhysicalVolume *);104 G4VSolid* ComputeSolid(const G4int, G4VPhysicalVolume *); 103 105 104 106 … … 126 128 const G4VPhysicalVolume*) const {} 127 129 128 void ComputeTrapParams(); 129 G4Trap* theTrap; 130 void ComputeTrapParams(); 130 131 }; 131 132 … … 138 139 G4double width, G4double offset, 139 140 G4VSolid* motherSolid, DivisionType divType ); 140 virtual~G4ParameterisationTrdY();141 142 v irtual void CheckParametersValidity();143 144 virtualG4double GetMaxParameter() const;145 146 v irtual void ComputeTransformation(const G4int copyNo,147 141 ~G4ParameterisationTrdY(); 142 143 void CheckParametersValidity(); 144 145 G4double GetMaxParameter() const; 146 147 void ComputeTransformation(const G4int copyNo, 148 G4VPhysicalVolume *physVol) const; 148 149 149 150 void ComputeDimensions(G4Trd& trd, const G4int copyNo, … … 184 185 G4double width, G4double offset, 185 186 G4VSolid* motherSolid, DivisionType divType ); 186 virtual~G4ParameterisationTrdZ();187 188 virtualG4double GetMaxParameter() const;189 190 v irtual void ComputeTransformation(const G4int copyNo,191 187 ~G4ParameterisationTrdZ(); 188 189 G4double GetMaxParameter() const; 190 191 void ComputeTransformation(const G4int copyNo, 192 G4VPhysicalVolume* physVol) const; 192 193 void ComputeDimensions(G4Trd& trd, const G4int copyNo, 193 194 const G4VPhysicalVolume* pv) const; -
trunk/source/geometry/divisions/include/G4ParameterisationTubs.hh
r1337 r1347 25 25 // 26 26 // 27 // $Id: G4ParameterisationTubs.hh,v 1. 6 2006/06/29 18:18:24 gunterExp $28 // GEANT4 tag $Name: geant4-09-04- beta-01$27 // $Id: G4ParameterisationTubs.hh,v 1.7 2010/07/02 10:46:27 gcosmo Exp $ 28 // GEANT4 tag $Name: geant4-09-04-ref-00 $ 29 29 // 30 30 // classes G4ParameterisationTubsRho … … 50 50 51 51 // Dummy declarations to get rid of warnings ... 52 // 52 53 class G4Trd; 53 54 class G4Trap; … … 79 80 G4double offset, G4double step, 80 81 G4VSolid* motherSolid, DivisionType divType ); 81 virtual~G4ParameterisationTubsRho();82 83 virtualG4double GetMaxParameter() const;84 85 v irtual void ComputeTransformation(const G4int copyNo,86 82 ~G4ParameterisationTubsRho(); 83 84 G4double GetMaxParameter() const; 85 86 void ComputeTransformation(const G4int copyNo, 87 G4VPhysicalVolume* physVol) const; 87 88 void ComputeDimensions(G4Tubs& tubs, const G4int copyNo, 88 89 const G4VPhysicalVolume* physVol) const; … … 122 123 G4double offset, G4double step, 123 124 G4VSolid* motherSolid, DivisionType divType ); 124 virtual~G4ParameterisationTubsPhi();125 126 virtualG4double GetMaxParameter() const;127 128 v irtual void ComputeTransformation(const G4int copyNo,129 125 ~G4ParameterisationTubsPhi(); 126 127 G4double GetMaxParameter() const; 128 129 void ComputeTransformation(const G4int copyNo, 130 G4VPhysicalVolume* physVol) const; 130 131 void ComputeDimensions(G4Tubs& tubs, const G4int copyNo, 131 132 const G4VPhysicalVolume* physVol) const; … … 165 166 G4double offset, G4double step, 166 167 G4VSolid* motherSolid, DivisionType divType ); 167 virtual~G4ParameterisationTubsZ();168 169 virtualG4double GetMaxParameter() const;170 171 v irtual void ComputeTransformation(const G4int copyNo,172 168 ~G4ParameterisationTubsZ(); 169 170 G4double GetMaxParameter() const; 171 172 void ComputeTransformation(const G4int copyNo, 173 G4VPhysicalVolume* physVol) const; 173 174 void ComputeDimensions(G4Tubs& tubs, const G4int copyNo, 174 175 const G4VPhysicalVolume* physVol) const; -
trunk/source/geometry/divisions/include/G4VDivisionParameterisation.hh
r1337 r1347 25 25 // 26 26 // 27 // $Id: G4VDivisionParameterisation.hh,v 1.1 1 2007/05/11 13:26:26gcosmo Exp $28 // GEANT4 tag $Name: geant4-09-04- beta-01$27 // $Id: G4VDivisionParameterisation.hh,v 1.13 2010/11/10 09:15:48 gcosmo Exp $ 28 // GEANT4 tag $Name: geant4-09-04-ref-00 $ 29 29 // 30 30 // class G4VDivisionParameterisation … … 39 39 // 09.05.01 - P.Arce, Initial version 40 40 // 08.04.04 - I.Hrivnacova, Implemented reflection 41 // 21.04.10 - M.Asai, Added gaps 41 42 //--------------------------------------------------------------------- 42 43 #ifndef G4VDivisionParameterisation_H … … 74 75 inline void SetType(const G4String& type); 75 76 inline G4int VolumeFirstCopyNo() const; 76 77 inline void SetHalfGap(G4double hg); 78 inline G4double GetHalfGap() const; 79 77 80 protected: // with description 78 81 … … 107 110 108 111 G4double kCarTolerance; 112 113 G4double fhgap; 109 114 }; 110 115 -
trunk/source/geometry/divisions/include/G4VDivisionParameterisation.icc
r1337 r1347 25 25 // 26 26 // 27 // $Id: G4VDivisionParameterisation.icc,v 1. 4 2006/06/29 18:18:29 gunterExp $28 // GEANT4 tag $Name: geant4-09-04- beta-01$27 // $Id: G4VDivisionParameterisation.icc,v 1.5 2010/11/10 09:15:55 gcosmo Exp $ 28 // GEANT4 tag $Name: geant4-09-04-ref-00 $ 29 29 // 30 30 // class G4VDivisionParameterisation Inline Implementation file … … 79 79 return theVoluFirstCopyNo; 80 80 } 81 82 inline 83 void G4VDivisionParameterisation::SetHalfGap(G4double hg) 84 { 85 fhgap = hg; 86 } 87 88 inline 89 G4double G4VDivisionParameterisation::GetHalfGap() const 90 { 91 return fhgap; 92 } -
trunk/source/geometry/divisions/src/G4PVDivision.cc
r1337 r1347 25 25 // 26 26 // 27 // $Id: G4PVDivision.cc,v 1.2 2 2008/12/03 16:41:45 arceExp $28 // GEANT4 tag $Name: geant4-09-04- beta-01$27 // $Id: G4PVDivision.cc,v 1.24 2010/09/06 09:28:24 gcosmo Exp $ 28 // GEANT4 tag $Name: geant4-09-04-ref-00 $ 29 29 // 30 30 // class G4PVDivision Implementation file … … 62 62 G4Exception("G4PVDivision::G4PVDivision()", "InvalidSetup", 63 63 FatalException, message_1); 64 return; 64 65 } 65 66 if (pLogical == pMotherLogical) 66 67 { 67 G4String message_2 = 68 "Cannot place a volume inside itself! Volume: " + pName; 68 G4String message_2 = "Cannot place a volume inside itself! Volume: "+ pName; 69 69 G4Exception("G4PVDivision::G4PVDivision()", "InvalidSetup", 70 70 FatalException, message_2); … … 90 90 if (!pMotherLogical) 91 91 { 92 G4String message_1 = 93 "NULL pointer specified as mother! Volume: " + pName; 92 G4String message_1 = "NULL pointer specified as mother! Volume: " + pName; 94 93 G4Exception("G4PVDivision::G4PVDivision()", "InvalidSetup", 95 94 FatalException, message_1); 95 return; 96 96 } 97 97 if (pLogical == pMotherLogical) 98 98 { 99 G4String message_2 = 100 "Cannot place a volume inside itself! Volume: " + pName; 99 G4String message_2 = "Cannot place a volume inside itself! Volume: "+ pName; 101 100 G4Exception("G4PVDivision::G4PVDivision()", "InvalidSetup", 102 101 FatalException, message_2); … … 120 119 if (!pMotherLogical) 121 120 { 122 G4String message_1 = 123 "NULL pointer specified as mother! Volume: " + pName; 121 G4String message_1 = "NULL pointer specified as mother! Volume: " + pName; 124 122 G4Exception("G4PVDivision::G4PVDivision()", "InvalidSetup", 125 123 FatalException, message_1); 124 return; 126 125 } 127 126 if (pLogical == pMotherLogical) 128 127 { 129 G4String message_2 = 130 "Cannot place a volume inside itself! Volume: " + pName; 128 G4String message_2 = "Cannot place a volume inside itself! Volume: "+ pName; 131 129 G4Exception("G4PVDivision::G4PVDivision()", "InvalidSetup", 132 130 FatalException, message_2); -
trunk/source/geometry/divisions/src/G4PVDivisionFactory.cc
r1337 r1347 25 25 // 26 26 // 27 // $Id: G4PVDivisionFactory.cc,v 1. 2 2006/06/29 18:18:33 gunterExp $28 // GEANT4 tag $Name: geant4-09-04- beta-01$27 // $Id: G4PVDivisionFactory.cc,v 1.3 2010/07/02 10:46:27 gcosmo Exp $ 28 // GEANT4 tag $Name: geant4-09-04-ref-00 $ 29 29 // 30 30 // class G4PVDivisionFactory Implementation file … … 137 137 "WrongType", FatalException, 138 138 "Unexpected parameterisation type !"); 139 return 0; 139 140 } 141 else 142 { 143 EAxis axis = divParam->GetAxis(); 144 G4int nofDivisions = divParam->GetNoDiv(); 145 G4double width = divParam->GetWidth(); 146 G4double offset = divParam->GetOffset(); 140 147 141 EAxis axis = divParam->GetAxis(); 142 G4int nofDivisions = divParam->GetNoDiv(); 143 G4double width = divParam->GetWidth(); 144 G4double offset = divParam->GetOffset(); 145 146 return new G4PVDivision(pName, pLogical, pMotherLogical, 147 axis, nofDivisions, width, offset); 148 return new G4PVDivision(pName, pLogical, pMotherLogical, 149 axis, nofDivisions, width, offset); 150 } 148 151 } 149 152 -
trunk/source/geometry/divisions/src/G4ParameterisationBox.cc
r1337 r1347 25 25 // 26 26 // 27 // $Id: G4ParameterisationBox.cc,v 1.1 0 2006/06/29 18:18:35 gunterExp $28 // GEANT4 tag $Name: geant4-09-04- beta-01$27 // $Id: G4ParameterisationBox.cc,v 1.12 2010/11/10 09:15:56 gcosmo Exp $ 28 // GEANT4 tag $Name: geant4-09-04-ref-00 $ 29 29 // 30 30 // class G4ParameterisationBox Implementation file … … 32 32 // 26.05.03 - P.Arce, Initial version 33 33 // 08.04.04 - I.Hrivnacova, Implemented reflection 34 // 21.04.10 - M.Asai, Added gaps 34 35 // -------------------------------------------------------------------- 35 36 … … 152 153 G4Box* msol = (G4Box*)(fmotherSolid); 153 154 154 G4double pDx = fwidth/2. ;155 G4double pDx = fwidth/2. - fhgap; 155 156 G4double pDy = msol->GetYHalfLength(); 156 157 G4double pDz = msol->GetZHalfLength(); … … 254 255 255 256 G4double pDx = msol->GetXHalfLength(); 256 G4double pDy = fwidth/2. ;257 G4double pDy = fwidth/2. - fhgap; 257 258 G4double pDz = msol->GetZHalfLength(); 258 259 … … 356 357 G4double pDx = msol->GetXHalfLength(); 357 358 G4double pDy = msol->GetYHalfLength(); 358 G4double pDz = fwidth/2. ;359 G4double pDz = fwidth/2. - fhgap; 359 360 360 361 box.SetXHalfLength( pDx ); -
trunk/source/geometry/divisions/src/G4ParameterisationCons.cc
r1337 r1347 25 25 // 26 26 // 27 // $Id: G4ParameterisationCons.cc,v 1. 9 2006/06/29 18:18:38 gunterExp $28 // GEANT4 tag $Name: geant4-09-04- beta-01$27 // $Id: G4ParameterisationCons.cc,v 1.11 2010/11/10 09:15:58 gcosmo Exp $ 28 // GEANT4 tag $Name: geant4-09-04-ref-00 $ 29 29 // 30 30 // class G4ParameterisationCons Implementation file … … 32 32 // 26.05.03 - P.Arce, Initial version 33 33 // 08.04.04 - I.Hrivnacova, Implemented reflection 34 // 21.04.10 - M.Asai, Added gaps 34 35 // -------------------------------------------------------------------- 35 36 … … 188 189 G4double pDz = msol->GetZHalfLength(); 189 190 191 G4double d_half_gap = fhgap * pRMax2 / pRMax1; 190 192 //- already rotated double pSR = foffset + copyNo*fwidth; 191 193 G4double pSPhi = msol->GetStartPhiAngle(); 192 194 G4double pDPhi = msol->GetDeltaPhiAngle();; 193 195 194 cons.SetInnerRadiusMinusZ( pRMin1 );195 cons.SetOuterRadiusMinusZ( pRMax1 );196 cons.SetInnerRadiusPlusZ( pRMin2 );197 cons.SetOuterRadiusPlusZ( pRMax2 );196 cons.SetInnerRadiusMinusZ( pRMin1 + fhgap ); 197 cons.SetOuterRadiusMinusZ( pRMax1 - fhgap ); 198 cons.SetInnerRadiusPlusZ( pRMin2 + d_half_gap ); 199 cons.SetOuterRadiusPlusZ( pRMax2 - d_half_gap ); 198 200 cons.SetZHalfLength( pDz ); 199 201 cons.SetStartPhiAngle( pSPhi ); … … 295 297 296 298 //- already rotated double pSPhi = foffset + copyNo*fwidth; 297 G4double pSPhi = foffset + msol->GetStartPhiAngle() ;298 G4double pDPhi = fwidth ;299 G4double pSPhi = foffset + msol->GetStartPhiAngle() + fhgap; 300 G4double pDPhi = fwidth - 2.*fhgap; 299 301 300 302 cons.SetInnerRadiusMinusZ( pRMin1 ); … … 396 398 G4Cons* msol = (G4Cons*)(fmotherSolid); 397 399 398 G4double mHalfLength = msol->GetZHalfLength() ;400 G4double mHalfLength = msol->GetZHalfLength() - fhgap; 399 401 G4double aRInner = (msol->GetInnerRadiusPlusZ() 400 402 - msol->GetInnerRadiusMinusZ()) / (2*mHalfLength); … … 405 407 G4double bROuter = (msol->GetOuterRadiusPlusZ() 406 408 + msol->GetOuterRadiusMinusZ()) / 2; 407 G4double xMinusZ = -mHalfLength + OffsetZ() + fwidth*copyNo ;408 G4double xPlusZ = -mHalfLength + OffsetZ() + fwidth*(copyNo+1) ;409 G4double xMinusZ = -mHalfLength + OffsetZ() + fwidth*copyNo + fhgap; 410 G4double xPlusZ = -mHalfLength + OffsetZ() + fwidth*(copyNo+1) - fhgap; 409 411 cons.SetInnerRadiusMinusZ( aRInner * xMinusZ + bRInner ); 410 412 cons.SetOuterRadiusMinusZ( aROuter * xMinusZ + bROuter ); … … 412 414 cons.SetOuterRadiusPlusZ( aROuter * xPlusZ + bROuter ); 413 415 414 G4double pDz = fwidth / 2. ;416 G4double pDz = fwidth / 2. - fhgap; 415 417 G4double pSPhi = msol->GetStartPhiAngle(); 416 418 G4double pDPhi = msol->GetDeltaPhiAngle(); -
trunk/source/geometry/divisions/src/G4ParameterisationPara.cc
r1337 r1347 25 25 // 26 26 // 27 // $Id: G4ParameterisationPara.cc,v 1.1 1 2006/06/29 18:18:42 gunterExp $28 // GEANT4 tag $Name: geant4-09-04- beta-01$27 // $Id: G4ParameterisationPara.cc,v 1.13 2010/11/10 09:16:03 gcosmo Exp $ 28 // GEANT4 tag $Name: geant4-09-04-ref-00 $ 29 29 // 30 30 // class G4ParameterisationPara Implementation file … … 32 32 // 26.05.03 - P.Arce, Initial version 33 33 // 08.04.04 - I.Hrivnacova, Implemented reflection 34 // 21.04.10 - M.Asai, Added gaps 34 35 // -------------------------------------------------------------------- 35 36 … … 162 163 163 164 //---- Get 164 G4double pDx = fwidth/2. ;165 G4double pDx = fwidth/2. - fhgap; 165 166 G4double pDy = msol->GetYHalfLength(); 166 167 G4double pDz = msol->GetZHalfLength(); … … 265 266 //---- Get 266 267 G4double pDx = msol->GetXHalfLength(); 267 G4double pDy = fwidth/2. ;268 G4double pDy = fwidth/2. - fhgap; 268 269 G4double pDz = msol->GetZHalfLength(); 269 270 G4double pAlpha = std::atan(msol->GetTanAlpha()); … … 366 367 G4double pDx = msol->GetXHalfLength(); 367 368 G4double pDy = msol->GetYHalfLength(); 369 G4double pDz = fwidth/2. - fhgap; 368 370 G4double pAlpha = std::atan(msol->GetTanAlpha()); 369 371 G4double pTheta = msol->GetSymAxis().theta(); 370 372 G4double pPhi = msol->GetSymAxis().phi(); 371 G4double pDz = fwidth/2.;372 373 373 374 para.SetAllParameters ( pDx, pDy, pDz, pAlpha, pTheta, pPhi ); -
trunk/source/geometry/divisions/src/G4ParameterisationPolycone.cc
r1337 r1347 26 26 // 27 27 // $Id: G4ParameterisationPolycone.cc,v 1.17 2009/05/18 19:30:29 ivana Exp $ 28 // GEANT4 tag $Name: geant4-09-04- beta-01$28 // GEANT4 tag $Name: geant4-09-04-ref-00 $ 29 29 // 30 30 // class G4ParameterisationPolycone Implementation file -
trunk/source/geometry/divisions/src/G4ParameterisationPolyhedra.cc
r1337 r1347 26 26 // 27 27 // $Id: G4ParameterisationPolyhedra.cc,v 1.19 2009/05/20 08:35:52 ivana Exp $ 28 // GEANT4 tag $Name: geant4-09-04- beta-01$28 // GEANT4 tag $Name: geant4-09-04-ref-00 $ 29 29 // 30 30 // class G4ParameterisationPolyhedra Implementation file -
trunk/source/geometry/divisions/src/G4ParameterisationTrd.cc
r1337 r1347 25 25 // 26 26 // 27 // $Id: G4ParameterisationTrd.cc,v 1.1 6 2008/12/18 12:57:20 gunterExp $28 // GEANT4 tag $Name: geant4-09-04- beta-01$27 // $Id: G4ParameterisationTrd.cc,v 1.19 2010/11/10 09:16:08 gcosmo Exp $ 28 // GEANT4 tag $Name: geant4-09-04-ref-00 $ 29 29 // 30 30 // class G4ParameterisationTrd Implementation file … … 32 32 // 26.05.03 - P.Arce, Initial version 33 33 // 08.04.04 - I.Hrivnacova, Implemented reflection 34 // 21.04.10 - M.Asai, Added gaps 34 35 // -------------------------------------------------------------------- 35 36 … … 50 51 G4double offset, G4VSolid* msolid, 51 52 DivisionType divType ) 52 : G4VDivisionParameterisation( axis, nDiv, width, offset, divType, msolid ) 53 : G4VDivisionParameterisation( axis, nDiv, width, offset, divType, msolid ), 54 bDivInTrap(false) 53 55 { 54 56 G4Trd* msol = (G4Trd*)(msolid); … … 141 143 G4ThreeVector origin(0.,0.,0.); 142 144 G4double posi; 143 if( !bDivInTrap ) { 145 if( !bDivInTrap ) 146 { 144 147 posi = -mdx + foffset + (copyNo+0.5)*fwidth; 145 } else { 148 } 149 else 150 { 146 151 G4double aveHL = (msol->GetXHalfLength1()+msol->GetXHalfLength2())/2.; 147 152 posi = - aveHL + foffset + (copyNo+0.5)*aveHL/fnDiv*2; … … 181 186 G4double pDy2 = msol->GetYHalfLength2(); 182 187 G4double pDz = msol->GetZHalfLength(); 183 G4double pDx = fwidth/2. ;188 G4double pDx = fwidth/2. - fhgap; 184 189 185 190 trd.SetAllParameters ( pDx, pDx, pDy1, pDy2, pDz ); … … 203 208 else 204 209 { 205 return theTrap;210 return fmotherSolid; 206 211 } 207 212 } … … 232 237 alp, 233 238 pDy2, 234 pDx1 ,235 pDx2 ,239 pDx1 - fhgap, 240 pDx2 - fhgap * pDx2/pDx1, 236 241 alp); 237 242 … … 249 254 { 250 255 G4VDivisionParameterisation::CheckParametersValidity(); 251 256 /* 252 257 G4Trd* msol = (G4Trd*)(fmotherSolid); 253 258 … … 258 263 if( std::fabs(mpDx1 - mpDx2) > kCarTolerance ) 259 264 { 260 return;261 262 265 G4cerr << "ERROR - G4ParameterisationTrdX::CheckParametersValidity()" 263 266 << G4endl … … 270 273 "Invalid solid specification. NOT supported."); 271 274 } 275 */ 272 276 } 273 277 … … 370 374 G4double pDx2 = msol->GetXHalfLength2(); 371 375 G4double pDz = msol->GetZHalfLength(); 372 G4double pDy = fwidth/2. ;376 G4double pDy = fwidth/2. - fhgap; 373 377 374 378 trd.SetAllParameters ( pDx1, pDx2, pDy, pDy, pDz ); … … 501 505 G4double pDy1 = msol->GetYHalfLength1(); 502 506 G4double DDy = (msol->GetYHalfLength2() - msol->GetYHalfLength1() ); 503 G4double pDz = fwidth/2. ;507 G4double pDz = fwidth/2. - fhgap; 504 508 G4double zLength = 2*msol->GetZHalfLength(); 505 509 506 trd.SetAllParameters( pDx1+DDx*(OffsetZ()+copyNo*fwidth )/zLength,507 pDx1+DDx*(OffsetZ()+(copyNo+1)*fwidth )/zLength,508 pDy1+DDy*(OffsetZ()+copyNo*fwidth )/zLength,509 pDy1+DDy*(OffsetZ()+(copyNo+1)*fwidth )/zLength, pDz );510 trd.SetAllParameters( pDx1+DDx*(OffsetZ()+copyNo*fwidth+fhgap)/zLength, 511 pDx1+DDx*(OffsetZ()+(copyNo+1)*fwidth-fhgap)/zLength, 512 pDy1+DDy*(OffsetZ()+copyNo*fwidth+fhgap)/zLength, 513 pDy1+DDy*(OffsetZ()+(copyNo+1)*fwidth-fhgap)/zLength, pDz ); 510 514 511 515 #ifdef G4DIVDEBUG -
trunk/source/geometry/divisions/src/G4ParameterisationTubs.cc
r1337 r1347 25 25 // 26 26 // 27 // $Id: G4ParameterisationTubs.cc,v 1. 8 2006/06/29 18:18:50 gunterExp $28 // GEANT4 tag $Name: geant4-09-04- beta-01$27 // $Id: G4ParameterisationTubs.cc,v 1.10 2010/11/10 09:16:13 gcosmo Exp $ 28 // GEANT4 tag $Name: geant4-09-04-ref-00 $ 29 29 // 30 30 // class G4ParameterisationTubs Implementation file … … 32 32 // 26.05.03 - P.Arce, Initial version 33 33 // 08.04.04 - I.Hrivnacova, Implemented reflection 34 // 21.04.10 - M.Asai, Added gaps 34 35 // -------------------------------------------------------------------- 35 36 … … 156 157 G4Tubs* msol = (G4Tubs*)(fmotherSolid); 157 158 158 G4double pRMin = msol->GetInnerRadius() + foffset + fwidth * copyNo ;159 G4double pRMax = msol->GetInnerRadius() + foffset + fwidth * (copyNo+1) ;159 G4double pRMin = msol->GetInnerRadius() + foffset + fwidth * copyNo + fhgap; 160 G4double pRMax = msol->GetInnerRadius() + foffset + fwidth * (copyNo+1) - fhgap; 160 161 G4double pDz = msol->GetZHalfLength(); 161 162 //- already rotated G4double pSR = foffset + copyNo*fwidth; … … 269 270 G4double pDz = msol->GetZHalfLength(); 270 271 //----- already rotated in 'ComputeTransformation' 271 G4double pSPhi = msol->GetStartPhiAngle() ;272 G4double pDPhi = fwidth ;272 G4double pSPhi = msol->GetStartPhiAngle() + fhgap; 273 G4double pDPhi = fwidth - 2.*fhgap; 273 274 274 275 tubs.SetInnerRadius( pRMin ); … … 379 380 G4double pRMax = msol->GetOuterRadius(); 380 381 // G4double pDz = msol->GetZHalfLength() / GetNoDiv(); 381 G4double pDz = fwidth/2. ;382 G4double pDz = fwidth/2. - fhgap; 382 383 G4double pSPhi = msol->GetStartPhiAngle(); 383 384 G4double pDPhi = msol->GetDeltaPhiAngle(); -
trunk/source/geometry/divisions/src/G4VDivisionParameterisation.cc
r1337 r1347 25 25 // 26 26 // 27 // $Id: G4VDivisionParameterisation.cc,v 1.1 4 2008/12/03 16:41:15 arceExp $28 // GEANT4 tag $Name: geant4-09-04- beta-01$27 // $Id: G4VDivisionParameterisation.cc,v 1.16 2010/11/10 09:16:18 gcosmo Exp $ 28 // GEANT4 tag $Name: geant4-09-04-ref-00 $ 29 29 // 30 30 // class G4VDivisionParameterisation Implementation file … … 32 32 // 26.05.03 - P.Arce, Initial version 33 33 // 08.04.04 - I.Hrivnacova, Implemented reflection 34 // 21.04.10 - M.Asai, Added gaps 34 35 // -------------------------------------------------------------------- 35 36 … … 50 51 : faxis(axis), fnDiv( nDiv), fwidth(step), foffset(offset), 51 52 fDivisionType(divType), fmotherSolid( motherSolid ), fReflectedSolid(false), 52 fDeleteSolid(false) 53 fDeleteSolid(false), theVoluFirstCopyNo(1), fhgap(0.) 53 54 { 54 55 #ifdef G4DIVDEBUG … … 61 62 } 62 63 #endif 63 64 theVoluFirstCopyNo = 1;65 64 kCarTolerance = G4GeometryTolerance::GetInstance()->GetSurfaceTolerance(); 66 65 } -
trunk/source/geometry/divisions/test/ExDivisions/exampleDiv.cc
r1316 r1347 26 26 // 27 27 // $Id: exampleDiv.cc,v 1.4 2009/05/18 13:49:53 gcosmo Exp $ 28 // GEANT4 tag $Name: geant4-09-04- beta-cand-01$28 // GEANT4 tag $Name: geant4-09-04-ref-00 $ 29 29 // 30 30 -
trunk/source/geometry/divisions/test/ExDivisions/include/ExDivDetectorConstruction.hh
r1316 r1347 26 26 // 27 27 // $Id: ExDivDetectorConstruction.hh,v 1.3 2006/06/29 18:19:06 gunter Exp $ 28 // GEANT4 tag $Name: geant4-09-04- beta-cand-01$28 // GEANT4 tag $Name: geant4-09-04-ref-00 $ 29 29 // 30 30 //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -
trunk/source/geometry/divisions/test/ExDivisions/include/ExDivEventAction.hh
r1316 r1347 26 26 // 27 27 // $Id: ExDivEventAction.hh,v 1.2 2006/06/29 18:19:08 gunter Exp $ 28 // GEANT4 tag $Name: geant4-09-04- beta-cand-01$28 // GEANT4 tag $Name: geant4-09-04-ref-00 $ 29 29 // 30 30 //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -
trunk/source/geometry/divisions/test/ExDivisions/include/ExDivPhysicsList.hh
r1316 r1347 26 26 // 27 27 // $Id: ExDivPhysicsList.hh,v 1.2 2006/06/29 18:19:11 gunter Exp $ 28 // GEANT4 tag $Name: geant4-09-04- beta-cand-01$28 // GEANT4 tag $Name: geant4-09-04-ref-00 $ 29 29 // 30 30 //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -
trunk/source/geometry/divisions/test/ExDivisions/include/ExDivPrimaryGeneratorAction.hh
r1316 r1347 26 26 // 27 27 // $Id: ExDivPrimaryGeneratorAction.hh,v 1.2 2006/06/29 18:19:13 gunter Exp $ 28 // GEANT4 tag $Name: geant4-09-04- beta-cand-01$28 // GEANT4 tag $Name: geant4-09-04-ref-00 $ 29 29 // 30 30 //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -
trunk/source/geometry/divisions/test/ExDivisions/include/ExDivRunAction.hh
r1316 r1347 26 26 // 27 27 // $Id: ExDivRunAction.hh,v 1.2 2006/06/29 18:19:15 gunter Exp $ 28 // GEANT4 tag $Name: geant4-09-04- beta-cand-01$28 // GEANT4 tag $Name: geant4-09-04-ref-00 $ 29 29 // 30 30 //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -
trunk/source/geometry/divisions/test/ExDivisions/include/ExDivSteppingAction.hh
r1316 r1347 26 26 // 27 27 // $Id: ExDivSteppingAction.hh,v 1.2 2006/06/29 18:19:18 gunter Exp $ 28 // GEANT4 tag $Name: geant4-09-04- beta-cand-01$28 // GEANT4 tag $Name: geant4-09-04-ref-00 $ 29 29 // 30 30 //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -
trunk/source/geometry/divisions/test/ExDivisions/include/ExDivSteppingVerbose.hh
r1316 r1347 26 26 // 27 27 // $Id: ExDivSteppingVerbose.hh,v 1.2 2006/06/29 18:19:20 gunter Exp $ 28 // GEANT4 tag $Name: geant4-09-04- beta-cand-01$28 // GEANT4 tag $Name: geant4-09-04-ref-00 $ 29 29 // 30 30 // This class manages the verbose outputs in G4SteppingManager. -
trunk/source/geometry/divisions/test/ExDivisions/src/ExDivDetectorConstruction.cc
r1316 r1347 26 26 // 27 27 // $Id: ExDivDetectorConstruction.cc,v 1.3 2006/06/29 18:19:53 gunter Exp $ 28 // GEANT4 tag $Name: geant4-09-04- beta-cand-01$28 // GEANT4 tag $Name: geant4-09-04-ref-00 $ 29 29 // 30 30 //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -
trunk/source/geometry/divisions/test/ExDivisions/src/ExDivEventAction.cc
r1316 r1347 26 26 // 27 27 // $Id: ExDivEventAction.cc,v 1.2 2006/06/29 18:19:55 gunter Exp $ 28 // GEANT4 tag $Name: geant4-09-04- beta-cand-01$28 // GEANT4 tag $Name: geant4-09-04-ref-00 $ 29 29 // 30 30 //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -
trunk/source/geometry/divisions/test/ExDivisions/src/ExDivPhysicsList.cc
r1316 r1347 25 25 // 26 26 // 27 // $Id: ExDivPhysicsList.cc,v 1. 2 2006/06/29 18:19:57 gunterExp $28 // GEANT4 tag $Name: geant4-09-04- beta-cand-01$27 // $Id: ExDivPhysicsList.cc,v 1.3 2010/06/16 08:51:13 gcosmo Exp $ 28 // GEANT4 tag $Name: geant4-09-04-ref-00 $ 29 29 // 30 30 //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... … … 150 150 #include "G4PhotoElectricEffect.hh" 151 151 152 #include "G4MultipleScattering.hh" 152 #include "G4eMultipleScattering.hh" 153 #include "G4hMultipleScattering.hh" 154 #include "G4MuMultipleScattering.hh" 153 155 154 156 #include "G4eIonisation.hh" … … 182 184 } else if (particleName == "e-") { 183 185 //electron 184 pmanager->AddProcess(new G4 MultipleScattering,-1, 1,1);186 pmanager->AddProcess(new G4eMultipleScattering,-1, 1,1); 185 187 pmanager->AddProcess(new G4eIonisation, -1, 2,2); 186 188 pmanager->AddProcess(new G4eBremsstrahlung, -1,-1,3); … … 188 190 } else if (particleName == "e+") { 189 191 //positron 190 pmanager->AddProcess(new G4 MultipleScattering,-1, 1,1);192 pmanager->AddProcess(new G4eMultipleScattering,-1, 1,1); 191 193 pmanager->AddProcess(new G4eIonisation, -1, 2,2); 192 194 pmanager->AddProcess(new G4eBremsstrahlung, -1,-1,3); … … 196 198 particleName == "mu-" ) { 197 199 //muon 198 pmanager->AddProcess(new G4Mu ltipleScattering,-1, 1,1);200 pmanager->AddProcess(new G4MuMultipleScattering,-1, 1,1); 199 201 pmanager->AddProcess(new G4MuIonisation, -1, 2,2); 200 202 pmanager->AddProcess(new G4MuBremsstrahlung, -1,-1,3); … … 205 207 (particle->GetParticleName() != "chargedgeantino")) { 206 208 //all others charged particles except geantino 207 pmanager->AddProcess(new G4 MultipleScattering,-1, 1,1);209 pmanager->AddProcess(new G4hMultipleScattering,-1, 1,1); 208 210 pmanager->AddProcess(new G4hIonisation, -1, 2,2); 209 211 ///pmanager->AddProcess(new G4hUserSpecialCuts, -1,-1,3); -
trunk/source/geometry/divisions/test/ExDivisions/src/ExDivPrimaryGeneratorAction.cc
r1316 r1347 26 26 // 27 27 // $Id: ExDivPrimaryGeneratorAction.cc,v 1.3 2006/06/29 18:19:59 gunter Exp $ 28 // GEANT4 tag $Name: geant4-09-04- beta-cand-01$28 // GEANT4 tag $Name: geant4-09-04-ref-00 $ 29 29 // 30 30 //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -
trunk/source/geometry/divisions/test/ExDivisions/src/ExDivRunAction.cc
r1316 r1347 26 26 // 27 27 // $Id: ExDivRunAction.cc,v 1.2 2006/06/29 18:20:01 gunter Exp $ 28 // GEANT4 tag $Name: geant4-09-04- beta-cand-01$28 // GEANT4 tag $Name: geant4-09-04-ref-00 $ 29 29 // 30 30 //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -
trunk/source/geometry/divisions/test/ExDivisions/src/ExDivSteppingAction.cc
r1316 r1347 26 26 // 27 27 // $Id: ExDivSteppingAction.cc,v 1.2 2006/06/29 18:20:04 gunter Exp $ 28 // GEANT4 tag $Name: geant4-09-04- beta-cand-01$28 // GEANT4 tag $Name: geant4-09-04-ref-00 $ 29 29 // 30 30 //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -
trunk/source/geometry/divisions/test/ExDivisions/src/ExDivSteppingVerbose.cc
r1316 r1347 26 26 // 27 27 // $Id: ExDivSteppingVerbose.cc,v 1.2 2006/06/29 18:20:06 gunter Exp $ 28 // GEANT4 tag $Name: geant4-09-04- beta-cand-01$28 // GEANT4 tag $Name: geant4-09-04-ref-00 $ 29 29 // 30 30 //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -
trunk/source/geometry/divisions/test/ExDivisions/src/ExDivTesterBox.cc
r1316 r1347 26 26 // 27 27 // $Id: ExDivTesterBox.cc,v 1.3 2006/06/29 18:20:08 gunter Exp $ 28 // GEANT4 tag $Name: geant4-09-04- beta-cand-01$28 // GEANT4 tag $Name: geant4-09-04-ref-00 $ 29 29 // 30 30 // class ExDivTesterBox Implementation file -
trunk/source/geometry/divisions/test/ExDivisions/src/ExDivTesterCons.cc
r1316 r1347 26 26 // 27 27 // $Id: ExDivTesterCons.cc,v 1.3 2006/06/29 18:20:10 gunter Exp $ 28 // GEANT4 tag $Name: geant4-09-04- beta-cand-01$28 // GEANT4 tag $Name: geant4-09-04-ref-00 $ 29 29 // 30 30 // class ExDivTesterCons Implementation file -
trunk/source/geometry/divisions/test/ExDivisions/src/ExDivTesterPara.cc
r1316 r1347 26 26 // 27 27 // $Id: ExDivTesterPara.cc,v 1.3 2006/06/29 18:20:12 gunter Exp $ 28 // GEANT4 tag $Name: geant4-09-04- beta-cand-01$28 // GEANT4 tag $Name: geant4-09-04-ref-00 $ 29 29 // 30 30 // class ExDivTesterPara Implementation file -
trunk/source/geometry/divisions/test/ExDivisions/src/ExDivTesterPolycone.cc
r1316 r1347 26 26 // 27 27 // $Id: ExDivTesterPolycone.cc,v 1.3 2006/06/29 18:20:18 gunter Exp $ 28 // GEANT4 tag $Name: geant4-09-04- beta-cand-01$28 // GEANT4 tag $Name: geant4-09-04-ref-00 $ 29 29 // 30 30 // class ExDivTesterPolycone Implementation file -
trunk/source/geometry/divisions/test/ExDivisions/src/ExDivTesterPolyhedra.cc
r1316 r1347 26 26 // 27 27 // $Id: ExDivTesterPolyhedra.cc,v 1.3 2006/06/29 18:20:24 gunter Exp $ 28 // GEANT4 tag $Name: geant4-09-04- beta-cand-01$28 // GEANT4 tag $Name: geant4-09-04-ref-00 $ 29 29 // 30 30 // class ExDivTesterPolyhedra Implementation file -
trunk/source/geometry/divisions/test/ExDivisions/src/ExDivTesterTrd.cc
r1316 r1347 26 26 // 27 27 // $Id: ExDivTesterTrd.cc,v 1.3 2006/06/29 18:20:28 gunter Exp $ 28 // GEANT4 tag $Name: geant4-09-04- beta-cand-01$28 // GEANT4 tag $Name: geant4-09-04-ref-00 $ 29 29 // 30 30 // class ExDivTesterTrd Implementation file -
trunk/source/geometry/divisions/test/ExDivisions/src/ExDivTesterTubs.cc
r1316 r1347 26 26 // 27 27 // $Id: ExDivTesterTubs.cc,v 1.3 2006/06/29 18:20:30 gunter Exp $ 28 // GEANT4 tag $Name: geant4-09-04- beta-cand-01$28 // GEANT4 tag $Name: geant4-09-04-ref-00 $ 29 29 // 30 30 // class ExDivTesterTubs Implementation file -
trunk/source/geometry/divisions/test/ExDivisions/src/ExVDivTester.cc
r1316 r1347 26 26 // 27 27 // $Id: ExVDivTester.cc,v 1.7 2009/05/16 09:15:33 arce Exp $ 28 // GEANT4 tag $Name: geant4-09-04- beta-cand-01$28 // GEANT4 tag $Name: geant4-09-04-ref-00 $ 29 29 // 30 30 // class ExVDivTester Implementation file -
trunk/source/geometry/divisions/test/testG4PVDivision.cc
r1316 r1347 26 26 // 27 27 // $Id: testG4PVDivision.cc,v 1.5 2009/05/14 14:19:32 ivana Exp $ 28 // GEANT4 tag $Name: geant4-09-04- beta-cand-01$28 // GEANT4 tag $Name: geant4-09-04-ref-00 $ 29 29 // 30 30 // test for G4PVDivision classes
Note: See TracChangeset
for help on using the changeset viewer.