Import Geant4 8.2.0 source tree

This commit is contained in:
Gabriele Cosmo
2016-06-09 14:55:03 +02:00
parent 216a75eeb1
commit fe73f43734
6714 changed files with 118229 additions and 68144 deletions
+7 -4
View File
@@ -23,7 +23,7 @@
// * acceptance of all terms of the Geant4 Software license. *
// ********************************************************************
//
// $Id: A01app.cc,v 1.7 2006/06/29 16:30:23 gunter Exp $
// $Id: A01app.cc,v 1.8 2006/11/06 19:46:06 allison Exp $
// --------------------------------------------------------------
//
// --------------------------------------------------------------
@@ -37,14 +37,14 @@
#include "G4RunManager.hh"
#include "G4UImanager.hh"
#include "G4UIterminal.hh"
#ifdef G4UI_USE_TCSH
#include "G4UItcsh.hh"
#endif
#include "A01DetectorConstruction.hh"
#include "A01PhysicsList.hh"
#include "A01PrimaryGeneratorAction.hh"
#include "A01TrackingAction.hh"
#include "A01EventAction.hh"
#ifdef G4VIS_USE
@@ -74,7 +74,6 @@ int main(int argc,char** argv)
// optional user action classes
runManager->SetUserAction(new A01EventAction);
//runManager->SetUserAction(new A01TrackingAction);
if(argc>1)
// execute an argument macro file if exist
@@ -87,7 +86,11 @@ int main(int argc,char** argv)
else
// start interactive session
{
#ifdef G4UI_USE_TCSH
G4UIsession* session = new G4UIterminal(new G4UItcsh);
#else
G4UIsession* session = new G4UIterminal();
#endif
session->SessionStart();
delete session;
}
+4 -3
View File
@@ -1,4 +1,4 @@
# $Id: GNUmakefile,v 1.9 2005/03/31 16:04:00 duns Exp $
# $Id: GNUmakefile,v 1.10 2006/11/10 21:04:51 duns Exp $
# --------------------------------------------------------------
# GNUmakefile for examples module
# --------------------------------------------------------------
@@ -14,8 +14,9 @@ endif
.PHONY: all
all: lib bin
# A01PhysicsList use hadronic-lists, so it needs below include command.
#include hadlist.gmk
#
# A01 uses its own physics lists.
#
include $(G4INSTALL)/config/binmake.gmk
+14 -1
View File
@@ -1,4 +1,4 @@
$Id: History,v 1.38 2006/06/01 18:07:06 perl Exp $
$Id: History,v 1.41 2006/11/14 07:11:18 perl Exp $
-------------------------------------------------------------------
=========================================================
@@ -10,6 +10,19 @@ $Id: History,v 1.38 2006/06/01 18:07:06 perl Exp $
----------------------------------------------------------
---------------------------------------------------------------------------
13 November 2006 - Joseph Perl (exampleA01-V08-01-02)
- Remove unused attributes from hit classes.
10 November 2006 - Mark Donszelmann (exampleA01-V08-01-01)
- Fixed Makefile
- Fixed limits on histogram
6 November 2006 - John Allison (exampleA01-V08-01-00)
- Change "Bookkeeping" to "Physics" in G4AttDefs.
- Removed tracking action. Use "/vis/scene/add/trajectories rich", etc.
- Invoke G4UIterminal(new G4UItcsh) if G4UI_USE_TCSH set.
1 June 2006 - Joseph Perl (exampleA01-V08-00-01)
- Add Time attribute to Hit classes.
@@ -1,44 +0,0 @@
//
// ********************************************************************
// * License and Disclaimer *
// * *
// * The Geant4 software is copyright of the Copyright Holders of *
// * the Geant4 Collaboration. It is provided under the terms and *
// * conditions of the Geant4 Software License, included in the file *
// * LICENSE and available at http://cern.ch/geant4/license . These *
// * include a list of copyright holders. *
// * *
// * Neither the authors of this software system, nor their employing *
// * institutes,nor the agencies providing financial support for this *
// * work make any representation or warranty, express or implied, *
// * regarding this software system or assume any liability for its *
// * use. Please see the license in the file LICENSE and URL above *
// * for the full disclaimer and the limitation of liability. *
// * *
// * This code implementation is the result of the scientific and *
// * technical work of the GEANT4 collaboration. *
// * By using, copying, modifying or distributing the software (or *
// * any work based on the software) you agree to acknowledge its *
// * use in resulting scientific publications, and indicate your *
// * acceptance of all terms of the Geant4 Software license. *
// ********************************************************************
//
// $Id: A01TrackingAction.hh,v 1.4 2006/06/29 16:31:39 gunter Exp $
// --------------------------------------------------------------
//
#ifndef A01TrackingAction_h
#define A01TrackingAction_h 1
#include "G4UserTrackingAction.hh"
class A01TrackingAction : public G4UserTrackingAction
{
public:
A01TrackingAction();
virtual ~A01TrackingAction();
virtual void PreUserTrackingAction(const G4Track*);
};
#endif
+2 -2
View File
@@ -14,9 +14,9 @@
#/vis/viewer/set/culling global false
#/vis/scene/endOfEventAction accumulate
#
# Add volume to scene
# Draw detector
#
#/vis/scene/add/volume
/vis/drawVolume
#
# Add trajectories to scene
#
@@ -23,7 +23,7 @@
// * acceptance of all terms of the Geant4 Software license. *
// ********************************************************************
//
// $Id: A01DriftChamberHit.cc,v 1.9 2006/06/29 16:32:28 gunter Exp $
// $Id: A01DriftChamberHit.cc,v 1.11 2006/11/14 07:11:18 perl Exp $
// --------------------------------------------------------------
//
#include "A01DriftChamberHit.hh"
@@ -100,29 +100,17 @@ const std::map<G4String,G4AttDef>* A01DriftChamberHit::GetAttDefs() const
= G4AttDefStore::GetInstance("A01DriftChamberHit",isNew);
if (isNew) {
G4String HitType("HitType");
(*store)[HitType] = G4AttDef(HitType,"Hit Type","Bookkeeping","","G4String");
(*store)[HitType] = G4AttDef(HitType,"Hit Type","Physics","","G4String");
G4String ID("ID");
(*store)[ID] = G4AttDef(ID,"ID","Bookkeeping","","G4int");
G4String Column("Column");
(*store)[Column] = G4AttDef(Column,"Column ID","Bookkeeping","","G4int");
G4String Row("Row");
(*store)[Row] = G4AttDef(Row,"Row ID","Bookkeeping","","G4int");
(*store)[ID] = G4AttDef(ID,"ID","Physics","","G4int");
G4String Time("Time");
(*store)[Time] = G4AttDef(Time,"Time","Physics","G4BestUnit","G4double");
G4String Energy("Energy");
(*store)[Energy] = G4AttDef(Energy,"Energy Deposited","Physics","G4BestUnit","G4double");
G4String Pos("Pos");
(*store)[Pos] = G4AttDef(Pos, "Position",
"Physics","G4BestUnit","G4ThreeVector");
G4String LVol("LVol");
(*store)[LVol] = G4AttDef(LVol,"Logical Volume","Bookkeeping","","G4String");
}
return store;
}
@@ -136,25 +124,12 @@ std::vector<G4AttValue>* A01DriftChamberHit::CreateAttValues() const
values->push_back
(G4AttValue("ID",G4UIcommand::ConvertToString(layerID),""));
values->push_back
(G4AttValue("Column"," ",""));
values->push_back
(G4AttValue("Row"," ",""));
values->push_back
(G4AttValue("Time",G4BestUnit(time,"Time"),""));
G4double noEnergy = 0.*MeV;
values->push_back
(G4AttValue("Energy",G4BestUnit(noEnergy,"Energy"),""));
values->push_back
(G4AttValue("Pos",G4BestUnit(worldPos,"Length"),""));
values->push_back
(G4AttValue("LVol"," ",""));
return values;
}
@@ -23,7 +23,7 @@
// * acceptance of all terms of the Geant4 Software license. *
// ********************************************************************
//
// $Id: A01EmCalorimeterHit.cc,v 1.10 2006/06/29 16:32:35 gunter Exp $
// $Id: A01EmCalorimeterHit.cc,v 1.12 2006/11/14 07:11:19 perl Exp $
// --------------------------------------------------------------
//
@@ -109,19 +109,10 @@ const std::map<G4String,G4AttDef>* A01EmCalorimeterHit::GetAttDefs() const
= G4AttDefStore::GetInstance("A01EmCalorimeterHit",isNew);
if (isNew) {
G4String HitType("HitType");
(*store)[HitType] = G4AttDef(HitType,"Hit Type","Bookkeeping","","G4String");
(*store)[HitType] = G4AttDef(HitType,"Hit Type","Physics","","G4String");
G4String ID("ID");
(*store)[ID] = G4AttDef(ID,"ID","Bookkeeping","","G4int");
G4String Column("Column");
(*store)[Column] = G4AttDef(Column,"Column ID","Bookkeeping","","G4int");
G4String Row("Row");
(*store)[Row] = G4AttDef(Row,"Row ID","Bookkeeping","","G4int");
G4String Time("Time");
(*store)[Time] = G4AttDef(Time,"Time","Physics","G4BestUnit","G4double");
(*store)[ID] = G4AttDef(ID,"ID","Physics","","G4int");
G4String Energy("Energy");
(*store)[Energy] = G4AttDef(Energy,"Energy Deposited","Physics","G4BestUnit","G4double");
@@ -131,7 +122,7 @@ const std::map<G4String,G4AttDef>* A01EmCalorimeterHit::GetAttDefs() const
"Physics","G4BestUnit","G4ThreeVector");
G4String LVol("LVol");
(*store)[LVol] = G4AttDef(LVol,"Logical Volume","Bookkeeping","","G4String");
(*store)[LVol] = G4AttDef(LVol,"Logical Volume","Physics","","G4String");
}
return store;
}
@@ -145,16 +136,6 @@ std::vector<G4AttValue>* A01EmCalorimeterHit::CreateAttValues() const
values->push_back
(G4AttValue("ID",G4UIcommand::ConvertToString(cellID),""));
values->push_back
(G4AttValue("Column"," ",""));
values->push_back
(G4AttValue("Row"," ",""));
G4double noTime = 0.*s;
values->push_back
(G4AttValue("Time",G4BestUnit(noTime,"Time"),""));
values->push_back
(G4AttValue("Energy",G4BestUnit(edep,"Energy"),""));
@@ -23,7 +23,7 @@
// * acceptance of all terms of the Geant4 Software license. *
// ********************************************************************
//
// $Id: A01EventAction.cc,v 1.8 2006/06/29 16:32:37 gunter Exp $
// $Id: A01EventAction.cc,v 1.9 2006/11/10 21:04:51 duns Exp $
// --------------------------------------------------------------
//
@@ -82,8 +82,8 @@ A01EventAction::A01EventAction()
if (hFactory)
{
// Create some histograms
dc1Hits = hFactory->createHistogram1D("Drift Chamber 1 # Hits",10,0,10);
dc2Hits = hFactory->createHistogram1D("Drift Chamber 2 # Hits",10,0,10);
dc1Hits = hFactory->createHistogram1D("Drift Chamber 1 # Hits",50,0,50);
dc2Hits = hFactory->createHistogram1D("Drift Chamber 2 # Hits",50,0,50);
// Create some clouds (Scatter Plots)
dc1XY = hFactory->createCloud2D("Drift Chamber 1 X vs Y");
@@ -23,7 +23,7 @@
// * acceptance of all terms of the Geant4 Software license. *
// ********************************************************************
//
// $Id: A01HadCalorimeterHit.cc,v 1.9 2006/06/29 16:32:46 gunter Exp $
// $Id: A01HadCalorimeterHit.cc,v 1.11 2006/11/14 07:11:19 perl Exp $
// --------------------------------------------------------------
//
@@ -109,19 +109,13 @@ const std::map<G4String,G4AttDef>* A01HadCalorimeterHit::GetAttDefs() const
= G4AttDefStore::GetInstance("A01HadCalorimeterHit",isNew);
if (isNew) {
G4String HitType("HitType");
(*store)[HitType] = G4AttDef(HitType,"Hit Type","Bookkeeping","","G4String");
G4String ID("ID");
(*store)[ID] = G4AttDef(ID,"ID","Bookkeeping","","G4int");
(*store)[HitType] = G4AttDef(HitType,"Hit Type","Physics","","G4String");
G4String Column("Column");
(*store)[Column] = G4AttDef(Column,"Column ID","Bookkeeping","","G4int");
(*store)[Column] = G4AttDef(Column,"Column ID","Physics","","G4int");
G4String Row("Row");
(*store)[Row] = G4AttDef(Row,"Row ID","Bookkeeping","","G4int");
G4String Time("Time");
(*store)[Time] = G4AttDef(Time,"Time","Physics","G4BestUnit","G4double");
(*store)[Row] = G4AttDef(Row,"Row ID","Physics","","G4int");
G4String Energy("Energy");
(*store)[Energy] = G4AttDef(Energy,"Energy Deposited","Physics","G4BestUnit","G4double");
@@ -129,9 +123,6 @@ const std::map<G4String,G4AttDef>* A01HadCalorimeterHit::GetAttDefs() const
G4String Pos("Pos");
(*store)[Pos] = G4AttDef(Pos, "Position",
"Physics","G4BestUnit","G4ThreeVector");
G4String LVol("LVol");
(*store)[LVol] = G4AttDef(LVol,"Logical Volume","Bookkeeping","","G4String");
}
return store;
}
@@ -142,28 +133,18 @@ std::vector<G4AttValue>* A01HadCalorimeterHit::CreateAttValues() const
values->push_back(G4AttValue("HitType","HadCalorimeterHit",""));
values->push_back
(G4AttValue("ID"," ",""));
values->push_back
(G4AttValue("Column",G4UIcommand::ConvertToString(columnID),""));
values->push_back
(G4AttValue("Row",G4UIcommand::ConvertToString(rowID),""));
G4double noTime = 0.*s;
values->push_back
(G4AttValue("Time",G4BestUnit(noTime,"Time"),""));
values->push_back
(G4AttValue("Energy",G4BestUnit(edep,"Energy"),""));
values->push_back
(G4AttValue("Pos",G4BestUnit(pos,"Length"),""));
values->push_back
(G4AttValue("LVol"," ",""));
return values;
}
@@ -23,7 +23,7 @@
// * acceptance of all terms of the Geant4 Software license. *
// ********************************************************************
//
// $Id: A01HodoscopeHit.cc,v 1.9 2006/06/29 16:32:52 gunter Exp $
// $Id: A01HodoscopeHit.cc,v 1.11 2006/11/14 07:11:19 perl Exp $
// --------------------------------------------------------------
//
#include "A01HodoscopeHit.hh"
@@ -97,29 +97,20 @@ const std::map<G4String,G4AttDef>* A01HodoscopeHit::GetAttDefs() const
= G4AttDefStore::GetInstance("A01HodoscopeHit",isNew);
if (isNew) {
G4String HitType("HitType");
(*store)[HitType] = G4AttDef(HitType,"Hit Type","Bookkeeping","","G4String");
(*store)[HitType] = G4AttDef(HitType,"Hit Type","Physics","","G4String");
G4String ID("ID");
(*store)[ID] = G4AttDef(ID,"ID","Bookkeeping","","G4int");
G4String Column("Column");
(*store)[Column] = G4AttDef(Column,"Column ID","Bookkeeping","","G4int");
G4String Row("Row");
(*store)[Row] = G4AttDef(Row,"Row ID","Bookkeeping","","G4int");
(*store)[ID] = G4AttDef(ID,"ID","Physics","","G4int");
G4String Time("Time");
(*store)[Time] = G4AttDef(Time,"Time","Physics","G4BestUnit","G4double");
G4String Energy("Energy");
(*store)[Energy] = G4AttDef(Energy,"Energy Deposited","Physics","G4BestUnit","G4double");
G4String Pos("Pos");
(*store)[Pos] = G4AttDef(Pos, "Position",
"Physics","G4BestUnit","G4ThreeVector");
G4String LVol("LVol");
(*store)[LVol] = G4AttDef(LVol,"Logical Volume","Bookkeeping","","G4String");
(*store)[LVol] = G4AttDef(LVol,"Logical Volume","Physics","","G4String");
}
return store;
}
@@ -133,19 +124,9 @@ std::vector<G4AttValue>* A01HodoscopeHit::CreateAttValues() const
values->push_back
(G4AttValue("ID",G4UIcommand::ConvertToString(id),""));
values->push_back
(G4AttValue("Column"," ",""));
values->push_back
(G4AttValue("Row"," ",""));
values->push_back
(G4AttValue("Time",G4BestUnit(time,"Time"),""));
G4double noEnergy = 0.*MeV;
values->push_back
(G4AttValue("Energy",G4BestUnit(noEnergy,"Energy"),""));
values->push_back
(G4AttValue("Pos",G4BestUnit(pos,"Length"),""));
@@ -1,47 +0,0 @@
//
// ********************************************************************
// * License and Disclaimer *
// * *
// * The Geant4 software is copyright of the Copyright Holders of *
// * the Geant4 Collaboration. It is provided under the terms and *
// * conditions of the Geant4 Software License, included in the file *
// * LICENSE and available at http://cern.ch/geant4/license . These *
// * include a list of copyright holders. *
// * *
// * Neither the authors of this software system, nor their employing *
// * institutes,nor the agencies providing financial support for this *
// * work make any representation or warranty, express or implied, *
// * regarding this software system or assume any liability for its *
// * use. Please see the license in the file LICENSE and URL above *
// * for the full disclaimer and the limitation of liability. *
// * *
// * This code implementation is the result of the scientific and *
// * technical work of the GEANT4 collaboration. *
// * By using, copying, modifying or distributing the software (or *
// * any work based on the software) you agree to acknowledge its *
// * use in resulting scientific publications, and indicate your *
// * acceptance of all terms of the Geant4 Software license. *
// ********************************************************************
//
// $Id: A01TrackingAction.cc,v 1.5 2006/06/29 16:33:09 gunter Exp $
// --------------------------------------------------------------
//
#include "A01TrackingAction.hh"
#include "G4TrackingManager.hh"
#include "G4Track.hh"
#include "G4Trajectory.hh"
A01TrackingAction::A01TrackingAction()
{;}
A01TrackingAction::~A01TrackingAction()
{;}
void A01TrackingAction::PreUserTrackingAction(const G4Track* aTrack)
{
fpTrackingManager->SetStoreTrajectory(true);
fpTrackingManager->SetTrajectory(new G4Trajectory(aTrack));
}
+1 -1
View File
@@ -1,6 +1,6 @@
*************************************************************
Geant4 version $Name: geant4-08-01 $ (25-June-2004)
Geant4 version $Name: geant4-08-02 $ (25-June-2004)
Copyright : Geant4 Collaboration
Reference : NIM A 506 (2003), 250-303
WWW : http://cern.ch/geant4
+7 -18
View File
@@ -1,36 +1,25 @@
#
# Macro file for A01app
#
# Set verbosity
#
/control/verbose 2
# /vis/verbose confirmations
#
# Create a scene handler and viewer for HepRep
#
/vis/open HepRepFile
#/vis/open DAWNFILE
#
# Create a new empty scene
# Draw detector
#
/vis/scene/create
#
# Declare that the world volume should be added to the scene
#
/vis/scene/add/volume
#
# Attach scene to scenehandler
#
/vis/sceneHandler/attach
#
# Draw a picture that has just the detector (no trajectories or hits).
#
/vis/viewer/flush
/vis/drawVolume
#
# Declare that trajectories and hits should be added to the scene
#
/vis/scene/add/trajectories
/vis/scene/add/hits
#
# Store particle trajactories for visualisation
#
/tracking/storeTrajectory 1
#
# Execute the visualization via the /vis/viewer/flush that comes
# automatically at the end of each /run.
#