Import Geant4 9.6.0 source tree
This commit is contained in:
@@ -0,0 +1,80 @@
|
||||
#----------------------------------------------------------------------------
|
||||
# Setup the project
|
||||
cmake_minimum_required(VERSION 2.6 FATAL_ERROR)
|
||||
project(xray_fluorescence)
|
||||
|
||||
#----------------------------------------------------------------------------
|
||||
# Find Geant4 package, activating all available UI and Vis drivers by default
|
||||
# You can set WITH_GEANT4_UIVIS to OFF via the command line or
|
||||
# ccmake/cmake-gui
|
||||
# to build a batch mode only executable
|
||||
#
|
||||
option(WITH_GEANT4_UIVIS "Build example with Geant4 UI and Vis drivers" ON)
|
||||
if(WITH_GEANT4_UIVIS)
|
||||
find_package(Geant4 REQUIRED ui_all vis_all)
|
||||
else()
|
||||
find_package(Geant4 REQUIRED)
|
||||
endif()
|
||||
|
||||
#----------------------------------------------------------------------------
|
||||
# Setup Geant4 include directories and compile definitions
|
||||
#
|
||||
include(${Geant4_USE_FILE})
|
||||
|
||||
|
||||
#----------------------------------------------------------------------------
|
||||
# Find AIDA (optional package)
|
||||
#
|
||||
set(CMAKE_MODULE_PATH ${PROJECT_SOURCE_DIR}/cmake ${CMAKE_MODULE_PATH})
|
||||
find_package(AIDA QUIET)
|
||||
if(AIDA_FOUND)
|
||||
message(STATUS "G4 Examples: AIDA found. --> xray_fluorescence example with AIDA enabled.")
|
||||
# Uncomment this line if suitable (some customization may be needed)
|
||||
add_definitions(-DG4ANALYSIS_USE)
|
||||
else()
|
||||
message(STATUS "G4 Example: AIDA not found --> xray_fluorescence example with AIDA disabled.")
|
||||
endif()
|
||||
|
||||
#----------------------------------------------------------------------------
|
||||
# Locate sources and headers for this project
|
||||
#
|
||||
include_directories(${PROJECT_SOURCE_DIR}/include
|
||||
${Geant4_INCLUDE_DIR}
|
||||
${AIDA_INCLUDE_DIR})
|
||||
file(GLOB sources ${PROJECT_SOURCE_DIR}/src/*.cc)
|
||||
file(GLOB headers ${PROJECT_SOURCE_DIR}/include/*.hh)
|
||||
|
||||
#----------------------------------------------------------------------------
|
||||
# Add the executable, and link it to the Geant4 libraries
|
||||
#
|
||||
add_executable(XrayFluo XrayFluo.cc ${sources} ${headers})
|
||||
target_link_libraries(XrayFluo ${Geant4_LIBRARIES} ${AIDA_LIBRARIES} )
|
||||
|
||||
#----------------------------------------------------------------------------
|
||||
# Copy all scripts to the build directory, i.e. the directory in which we
|
||||
# build xray_fluorescence. This is so that we can run the executable directly because it
|
||||
# relies on these scripts being in the current working directory.
|
||||
#
|
||||
set(xray_fluorescence_SCRIPTS
|
||||
initInter.mac livermore.mac vis.mac
|
||||
)
|
||||
|
||||
foreach(_script ${xray_fluorescence_SCRIPTS})
|
||||
configure_file(
|
||||
${PROJECT_SOURCE_DIR}/${_script}
|
||||
${PROJECT_BINARY_DIR}/${_script}
|
||||
COPYONLY
|
||||
)
|
||||
endforeach()
|
||||
|
||||
#----------------------------------------------------------------------------
|
||||
# Add program to the project targets
|
||||
# (this avoids the need of typing the program name after make)
|
||||
#
|
||||
add_custom_target(xray_fluorescence DEPENDS XrayFluo)
|
||||
|
||||
#----------------------------------------------------------------------------
|
||||
# Install the executable to 'bin' directory under CMAKE_INSTALL_PREFIX
|
||||
#
|
||||
install(TARGETS XrayFluo DESTINATION bin)
|
||||
|
||||
@@ -19,24 +19,46 @@ committal in the CVS repository !
|
||||
* Reverse chronological order (last date on top), please *
|
||||
----------------------------------------------------------
|
||||
|
||||
28-11-2012 G. Cosmo Tag: XrayFluo-V09-05-06
|
||||
- Fixed cases of variable shadowing.
|
||||
|
||||
06-11-2012 L. Pandola Tag: XrayFluo-V09-05-05
|
||||
- Fix syntax in CMakeLists.txt
|
||||
|
||||
26-10-2012 L. Pandola Tag: XrayFluo-V09-05-04
|
||||
- Replace CMakeLists.txt to deal with UI/VIS
|
||||
|
||||
12-10-2012 G. Cosmo Tag: XrayFluo-V09-05-03
|
||||
- Explicit inclusion of units and constants headers.
|
||||
|
||||
13-06-2012 G. Cosmo Tag: XrayFluo-V09-05-02
|
||||
- Fixed compilation warnings for extra parenthesis from MacOSX/clang.
|
||||
|
||||
15-12-2011 P. Mato Tag: XrayFluo-V09-05-01
|
||||
- XrayFluoNistMaterials.cc
|
||||
Fixed the induced memory corruption problem only intermittently visible
|
||||
on MacOSX. The vectors to define materials needed to be cleared properly.
|
||||
|
||||
08-12-2011 P. Mato Tag: XrayFluo-V09-05-00
|
||||
- Added CMakeLists.txt file.
|
||||
|
||||
25-11-2011 G.Folger Tag: XrayFluo-V09-04-05
|
||||
fix compilation error on Windows.
|
||||
- Fix compilation error on Windows.
|
||||
|
||||
16-11-2011 G.Folger Tag: XrayFluo-V09-04-04
|
||||
migrate to new G4Exception
|
||||
- Migrated to new G4Exception.
|
||||
|
||||
03-11-2011 A.Mantero Tag: XrayFluo-V09-04-03
|
||||
update for README file
|
||||
- Update for README file.
|
||||
|
||||
03-11-2011 A.Mantero Tag: XrayFluo-V09-04-02
|
||||
Updates for 9.5
|
||||
- Migrated PhysicsList to all pre-built PL generating deexcitation products
|
||||
- Added example for macro (livermore.mac)
|
||||
- removed old macros
|
||||
- Removed XrayFluoPhysListEmStandardFLUO.cc
|
||||
- Migrated PhysicsList to all pre-built PL generating deexcitation products.
|
||||
- Added example for macro (livermore.mac).
|
||||
- removed old macros.
|
||||
- Removed XrayFluoPhysListEmStandardFLUO.cc.
|
||||
|
||||
27-03-2011 A.Mantero Tag: XrayFluo-V09-04-01
|
||||
Re commit of the previous tag.
|
||||
- Re commit of the previous tag.
|
||||
|
||||
07-02-2011 A.Mantero Tag: XrayFluo-V09-04-00
|
||||
- migrated physicslist to standard EM+Fluo (with PIXE)
|
||||
|
||||
@@ -40,6 +40,8 @@
|
||||
#ifndef FluoDataSet_hh
|
||||
#define FluoDataSet_hh 1
|
||||
|
||||
#include <CLHEP/Units/SystemOfUnits.h>
|
||||
|
||||
#include "globals.hh"
|
||||
#include "G4DataVector.hh"
|
||||
#include "G4VEMDataSet.hh"
|
||||
@@ -54,12 +56,12 @@ public:
|
||||
G4DataVector* points,
|
||||
G4DataVector* values,
|
||||
const G4VDataSetAlgorithm* interpolation,
|
||||
G4double unitE = MeV, G4double unitData = barn);
|
||||
G4double unitE = CLHEP::MeV, G4double unitData = CLHEP::barn);
|
||||
|
||||
XrayFluoDataSet(G4int Z,
|
||||
const G4String& dataFile,
|
||||
const G4VDataSetAlgorithm* interpolation,
|
||||
G4double unitE = MeV, G4double unitData = barn);
|
||||
G4double unitE = CLHEP::MeV, G4double unitData = CLHEP::barn);
|
||||
|
||||
~XrayFluoDataSet();
|
||||
|
||||
@@ -121,6 +123,4 @@ private:
|
||||
|
||||
};
|
||||
|
||||
|
||||
|
||||
#endif
|
||||
|
||||
@@ -41,14 +41,16 @@
|
||||
#ifndef XrayFluoDetectorConstruction_hh
|
||||
#define XrayFluoDetectorConstruction_hh 1
|
||||
|
||||
#include <CLHEP/Units/SystemOfUnits.h>
|
||||
|
||||
#include "globals.hh"
|
||||
#include "G4RotationMatrix.hh"
|
||||
#include "G4VUserDetectorConstruction.hh"
|
||||
#include "G4Navigator.hh"
|
||||
|
||||
#include "XrayFluoSiLiDetectorType.hh"
|
||||
#include "XrayFluoHPGeDetectorType.hh"
|
||||
#include "XrayFluoSD.hh"
|
||||
#include "G4VUserDetectorConstruction.hh"
|
||||
#include "globals.hh"
|
||||
#include "G4RotationMatrix.hh"
|
||||
#include "G4Navigator.hh"
|
||||
|
||||
#include "XrayFluoGeometry.hh"
|
||||
|
||||
class G4Box;
|
||||
@@ -324,32 +326,26 @@ inline void XrayFluoDetectorConstruction::ComputeApparateParameters()
|
||||
|
||||
if (phaseSpaceFlag) {
|
||||
|
||||
WorldSizeZ = 10 *m;
|
||||
WorldSizeXY = 10 *m;
|
||||
WorldSizeZ = 10 *CLHEP::m;
|
||||
WorldSizeXY = 10 *CLHEP::m;
|
||||
|
||||
}
|
||||
else {
|
||||
|
||||
DeviceThickness = PixelThickness+OhmicNegThickness+OhmicPosThickness+windowThickness;//change!
|
||||
|
||||
G4cout << "DeviceThickness(cm): "<< DeviceThickness/cm << G4endl;
|
||||
G4cout << "DeviceThickness(cm): "<< DeviceThickness/CLHEP::cm << G4endl;
|
||||
|
||||
DeviceSizeY =(NbOfPixelRows * std::max(ContactSizeXY,PixelSizeXY));
|
||||
DeviceSizeX =(NbOfPixelColumns * std::max(ContactSizeXY,PixelSizeXY));
|
||||
|
||||
G4cout << "DeviceSizeX(cm): "<< DeviceSizeX/cm <<G4endl;
|
||||
G4cout << "DeviceSizeY(cm): "<< DeviceSizeY/cm << G4endl;
|
||||
G4cout << "DeviceSizeX(cm): "<< DeviceSizeX/CLHEP::cm <<G4endl;
|
||||
G4cout << "DeviceSizeY(cm): "<< DeviceSizeY/CLHEP::cm << G4endl;
|
||||
|
||||
WorldSizeZ = (2 * (DistDe +1.4142 *(std::max(std::max(DeviceThickness,DeviceSizeY), DeviceSizeX))))+5*m;
|
||||
WorldSizeXY = 2 * (DistDe +1.4142 *Dia1SizeXY)+5*m;
|
||||
WorldSizeZ = (2 * (DistDe +1.4142 *(std::max(std::max(DeviceThickness,DeviceSizeY), DeviceSizeX))))+5*CLHEP::m;
|
||||
WorldSizeXY = 2 * (DistDe +1.4142 *Dia1SizeXY)+5*CLHEP::m;
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
#endif
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
+11
-16
@@ -39,13 +39,14 @@
|
||||
#ifndef XrayFluoMercuryDetectorConstruction_hh
|
||||
#define XrayFluoMercuryDetectorConstruction_hh 1
|
||||
|
||||
#include <CLHEP/Units/SystemOfUnits.h>
|
||||
|
||||
#include "globals.hh"
|
||||
#include "G4VUserDetectorConstruction.hh"
|
||||
#include "G4RotationMatrix.hh"
|
||||
#include "XrayFluoSiLiDetectorType.hh"
|
||||
#include "XrayFluoHPGeDetectorType.hh"
|
||||
#include "XrayFluoSD.hh"
|
||||
#include "G4VUserDetectorConstruction.hh"
|
||||
#include "globals.hh"
|
||||
#include "G4RotationMatrix.hh"
|
||||
|
||||
|
||||
class G4Box;
|
||||
class G4Tubs;
|
||||
@@ -84,7 +85,7 @@ public:
|
||||
inline void SetOribitHeight(G4double size)
|
||||
{distDe = size;};
|
||||
inline void SetLatitude(G4double lat)
|
||||
{ThetaHPGe = 180.* deg - lat;};
|
||||
{ThetaHPGe = 180.* CLHEP::deg - lat;};
|
||||
|
||||
void PrintApparateParameters();
|
||||
|
||||
@@ -250,7 +251,7 @@ public:
|
||||
|
||||
//Inclinaton of the orbit respect Mercury respect the equator (latitude)
|
||||
|
||||
G4double GetOrbitInclination() {return 180 * deg - ThetaHPGe;};
|
||||
G4double GetOrbitInclination() {return 180 * CLHEP::deg - ThetaHPGe;};
|
||||
G4double GetOrbitDistance() {return distDe;};
|
||||
G4double GetOpticAperture() {return opticAperture;};
|
||||
|
||||
@@ -274,29 +275,23 @@ inline void XrayFluoMercuryDetectorConstruction::ComputeApparateParameters()
|
||||
|
||||
DeviceThickness = PixelThickness+OhmicNegThickness+OhmicPosThickness;
|
||||
|
||||
///G4cout << "DeviceThickness(cm): "<< DeviceThickness/cm << G4endl;
|
||||
///G4cout << "DeviceThickness(cm): "<< DeviceThickness/CLHEP::cm << G4endl;
|
||||
|
||||
DeviceSizeY =(NbOfPixelRows * std::max(ContactSizeXY,PixelSizeXY));
|
||||
DeviceSizeX =(NbOfPixelColumns * std::max(ContactSizeXY,PixelSizeXY));
|
||||
|
||||
screenSizeXY = opticDia;
|
||||
|
||||
G4cout << "DeviceSizeX(cm): "<< DeviceSizeX/cm <<G4endl;
|
||||
G4cout << "DeviceSizeY(cm): "<< DeviceSizeY/cm << G4endl;
|
||||
G4cout << "DeviceSizeX(cm): "<< DeviceSizeX/CLHEP::cm <<G4endl;
|
||||
G4cout << "DeviceSizeY(cm): "<< DeviceSizeY/CLHEP::cm << G4endl;
|
||||
|
||||
//*********************************************************************
|
||||
//** Astronomical distances reduce by a factor 10^-7 due to G4 Bug **
|
||||
//*********************************************************************
|
||||
|
||||
WorldSizeZ = 2 * mercurySunDistance ;
|
||||
WorldSizeXY = (2 * distDe) + 2000 * km ;
|
||||
WorldSizeXY = (2 * distDe) + 2000 * CLHEP::km ;
|
||||
//WorldSizeZ = WorldSizeXY;
|
||||
}
|
||||
|
||||
#endif
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
@@ -39,16 +39,17 @@
|
||||
#ifndef XrayFluoPlaneDetectorConstruction_hh
|
||||
#define XrayFluoPlaneDetectorConstruction_hh 1
|
||||
|
||||
#include <CLHEP/Units/SystemOfUnits.h>
|
||||
|
||||
#include "globals.hh"
|
||||
#include "G4RotationMatrix.hh"
|
||||
#include "G4VUserDetectorConstruction.hh"
|
||||
|
||||
#include "XrayFluoSiLiDetectorType.hh"
|
||||
#include "XrayFluoHPGeDetectorType.hh"
|
||||
#include "XrayFluoSD.hh"
|
||||
#include "G4VUserDetectorConstruction.hh"
|
||||
#include "globals.hh"
|
||||
#include "G4RotationMatrix.hh"
|
||||
|
||||
|
||||
class G4Box;
|
||||
//class G4Tubs;
|
||||
class G4Sphere;
|
||||
class G4LogicalVolume;
|
||||
class G4VPhysicalVolume;
|
||||
@@ -56,9 +57,6 @@ class G4Material;
|
||||
class XrayFluoPlaneDetectorMessenger;
|
||||
class XrayFluoNistMaterials;
|
||||
|
||||
//class XrayFluoSD;
|
||||
//class XrayFluoVDetectorType;
|
||||
|
||||
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
|
||||
|
||||
class XrayFluoPlaneDetectorConstruction : public G4VUserDetectorConstruction
|
||||
@@ -284,25 +282,19 @@ inline void XrayFluoPlaneDetectorConstruction::ComputeApparateParameters()
|
||||
|
||||
DeviceThickness = PixelThickness+OhmicNegThickness+OhmicPosThickness;
|
||||
|
||||
G4cout << "DeviceThickness(cm): "<< DeviceThickness/cm << G4endl;
|
||||
G4cout << "DeviceThickness(cm): "<< DeviceThickness/CLHEP::cm << G4endl;
|
||||
|
||||
DeviceSizeY =(NbOfPixelRows * std::max(ContactSizeXY,PixelSizeXY));
|
||||
DeviceSizeX =(NbOfPixelColumns * std::max(ContactSizeXY,PixelSizeXY));
|
||||
|
||||
screenSizeXY = 2 * DeviceThickness + std::max(DeviceSizeY,DeviceSizeX);
|
||||
|
||||
G4cout << "DeviceSizeX(cm): "<< DeviceSizeX/cm <<G4endl;
|
||||
G4cout << "DeviceSizeY(cm): "<< DeviceSizeY/cm << G4endl;
|
||||
G4cout << "DeviceSizeX(cm): "<< DeviceSizeX/CLHEP::cm <<G4endl;
|
||||
G4cout << "DeviceSizeY(cm): "<< DeviceSizeY/CLHEP::cm << G4endl;
|
||||
|
||||
WorldSizeZ = (2 * (DistDe + DeviceThickness + screenThickness)) + 5*m;
|
||||
WorldSizeXY = (2 * (planeSizeXY))+ 5*m;
|
||||
WorldSizeZ = (2 * (DistDe + DeviceThickness + screenThickness)) + 5*CLHEP::m;
|
||||
WorldSizeXY = (2 * (planeSizeXY))+ 5*CLHEP::m;
|
||||
|
||||
}
|
||||
|
||||
#endif
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
@@ -40,6 +40,8 @@
|
||||
#include "XrayFluoDetectorConstruction.hh"
|
||||
#include "XrayFluoDetectorMessenger.hh"
|
||||
#include "XrayFluoSD.hh"
|
||||
#include "G4PhysicalConstants.hh"
|
||||
#include "G4SystemOfUnits.hh"
|
||||
#include "G4Material.hh"
|
||||
#include "G4ThreeVector.hh"
|
||||
#include "G4Box.hh"
|
||||
@@ -663,7 +665,7 @@ G4VPhysicalVolume* XrayFluoDetectorConstruction::ConstructApparate()
|
||||
G4VisAttributes * yellow= new G4VisAttributes( G4Colour(255/255. ,255/255. ,51/255. ));
|
||||
G4VisAttributes * red= new G4VisAttributes( G4Colour(255/255. , 0/255. , 0/255. ));
|
||||
G4VisAttributes * blue= new G4VisAttributes( G4Colour(0/255. , 0/255. , 255/255. ));
|
||||
G4VisAttributes * gray= new G4VisAttributes( G4Colour(128/255. , 128/255. , 128/255. ));
|
||||
G4VisAttributes * grayc= new G4VisAttributes( G4Colour(128/255. , 128/255. , 128/255. ));
|
||||
G4VisAttributes * lightGray= new G4VisAttributes( G4Colour(178/255. , 178/255. , 178/255. ));
|
||||
G4VisAttributes * green= new G4VisAttributes( G4Colour(0/255. , 255/255. , 0/255. ));
|
||||
|
||||
@@ -674,8 +676,8 @@ G4VPhysicalVolume* XrayFluoDetectorConstruction::ConstructApparate()
|
||||
blue->SetVisibility(true);
|
||||
green->SetVisibility(true);
|
||||
green->SetForceSolid(true);
|
||||
gray->SetVisibility(true);
|
||||
gray->SetForceSolid(true);
|
||||
grayc->SetVisibility(true);
|
||||
grayc->SetForceSolid(true);
|
||||
lightGray->SetVisibility(true);
|
||||
lightGray->SetForceSolid(true);
|
||||
simpleBoxVisAtt->SetVisibility(true);
|
||||
@@ -698,7 +700,7 @@ G4VPhysicalVolume* XrayFluoDetectorConstruction::ConstructApparate()
|
||||
|
||||
|
||||
|
||||
if (sampleGranularity) logicGrain->SetVisAttributes(gray);
|
||||
if (sampleGranularity) logicGrain->SetVisAttributes(grayc);
|
||||
|
||||
//always return the physical World
|
||||
|
||||
|
||||
@@ -46,6 +46,7 @@
|
||||
|
||||
#include "XrayFluoAnalysisManager.hh"
|
||||
|
||||
#include "G4SystemOfUnits.hh"
|
||||
#include "G4Event.hh"
|
||||
#include "G4EventManager.hh"
|
||||
#include "G4HCofThisEvent.hh"
|
||||
|
||||
@@ -35,14 +35,16 @@
|
||||
//
|
||||
// -------------------------------------------------------------------
|
||||
|
||||
#include <fstream>
|
||||
#include <sstream>
|
||||
|
||||
#include "XrayFluoHPGeDetectorType.hh"
|
||||
#include "XrayFluoDataSet.hh"
|
||||
#include "G4SystemOfUnits.hh"
|
||||
#include "G4UnitsTable.hh"
|
||||
#include "G4DataVector.hh"
|
||||
#include "G4LogLogInterpolation.hh"
|
||||
#include "G4ios.hh"
|
||||
#include <fstream>
|
||||
#include <sstream>
|
||||
#include "G4UnitsTable.hh"
|
||||
#include "Randomize.hh"
|
||||
|
||||
|
||||
@@ -267,7 +269,7 @@ void XrayFluoHPGeDetectorType::LoadResponseData(G4String fileName)
|
||||
}
|
||||
G4double a = 0;
|
||||
G4int k = 1;
|
||||
G4int s = 0;
|
||||
G4int q = 0;
|
||||
|
||||
G4int Z = 1;
|
||||
G4DataVector* energies = new G4DataVector;
|
||||
@@ -279,7 +281,7 @@ void XrayFluoHPGeDetectorType::LoadResponseData(G4String fileName)
|
||||
G4int nColumns = 2;
|
||||
if (a == -1)
|
||||
{
|
||||
if (s == 0)
|
||||
if (q == 0)
|
||||
{
|
||||
// End of a data set
|
||||
energyMap[Z] = energies;
|
||||
@@ -289,10 +291,10 @@ void XrayFluoHPGeDetectorType::LoadResponseData(G4String fileName)
|
||||
data = new G4DataVector;
|
||||
Z++;
|
||||
}
|
||||
s++;
|
||||
if (s == nColumns)
|
||||
q++;
|
||||
if (q == nColumns)
|
||||
{
|
||||
s = 0;
|
||||
q = 0;
|
||||
}
|
||||
}
|
||||
else if (a == -2)
|
||||
|
||||
@@ -110,7 +110,7 @@ G4bool XrayFluoHPGeSD::ProcessHits(G4Step* aStep,G4TouchableHistory* ROhist)
|
||||
|
||||
// else {G4cout << " il deposito proviene da: Rayleugh" << G4endl;}
|
||||
|
||||
if ((edep==0.)) return false;
|
||||
if (edep==0.) return false;
|
||||
|
||||
// G4cout << " edep = " << edep << G4endl;
|
||||
|
||||
|
||||
@@ -37,6 +37,9 @@
|
||||
#include "XrayFluoMercuryDetectorConstruction.hh"
|
||||
#include "XrayFluoMercuryDetectorMessenger.hh"
|
||||
#include "XrayFluoSD.hh"
|
||||
#include "XrayFluoNistMaterials.hh"
|
||||
#include "G4PhysicalConstants.hh"
|
||||
#include "G4SystemOfUnits.hh"
|
||||
#include "G4Material.hh"
|
||||
#include "G4ThreeVector.hh"
|
||||
#include "G4Box.hh"
|
||||
@@ -52,8 +55,6 @@
|
||||
#include "G4ios.hh"
|
||||
#include "G4PVReplica.hh"
|
||||
#include "G4UserLimits.hh"
|
||||
#include "XrayFluoNistMaterials.hh"
|
||||
|
||||
|
||||
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
|
||||
|
||||
@@ -444,7 +445,7 @@ G4VPhysicalVolume* XrayFluoMercuryDetectorConstruction::ConstructApparate()
|
||||
G4VisAttributes * yellow= new G4VisAttributes( G4Colour(255/255. ,255/255. ,51/255. ));
|
||||
G4VisAttributes * red= new G4VisAttributes( G4Colour(255/255. , 0/255. , 0/255. ));
|
||||
G4VisAttributes * blue= new G4VisAttributes( G4Colour(0/255. , 0/255. , 255/255. ));
|
||||
G4VisAttributes * gray= new G4VisAttributes( G4Colour(128/255. , 128/255. , 128/255. ));
|
||||
G4VisAttributes * grayc= new G4VisAttributes( G4Colour(128/255. , 128/255. , 128/255. ));
|
||||
G4VisAttributes * darkGray= new G4VisAttributes( G4Colour(95/255. , 95/255. , 95/255. ));
|
||||
//G4VisAttributes * green= new G4VisAttributes( G4Colour(25/255. , 255/255. , 25/255. ));
|
||||
yellow->SetVisibility(true);
|
||||
@@ -452,8 +453,8 @@ G4VPhysicalVolume* XrayFluoMercuryDetectorConstruction::ConstructApparate()
|
||||
red->SetVisibility(true);
|
||||
red->SetForceSolid(true);
|
||||
blue->SetVisibility(true);
|
||||
gray->SetVisibility(true);
|
||||
gray->SetForceSolid(true);
|
||||
grayc->SetVisibility(true);
|
||||
grayc->SetForceSolid(true);
|
||||
simpleBoxVisAtt->SetVisibility(true);
|
||||
|
||||
//logicWorld->SetVisAttributes (simpleBoxVisAtt);
|
||||
@@ -467,10 +468,10 @@ G4VPhysicalVolume* XrayFluoMercuryDetectorConstruction::ConstructApparate()
|
||||
logicScreen->SetVisAttributes(red);
|
||||
logicOhmicNeg->SetVisAttributes(yellow);
|
||||
logicOhmicPos->SetVisAttributes(yellow);
|
||||
logicOptic->SetVisAttributes(gray);
|
||||
logicOptic->SetVisAttributes(grayc);
|
||||
|
||||
|
||||
if (mercuryGranularity) logicGrain->SetVisAttributes(gray);
|
||||
if (mercuryGranularity) logicGrain->SetVisAttributes(grayc);
|
||||
|
||||
//always return the physical World
|
||||
|
||||
|
||||
@@ -36,17 +36,19 @@
|
||||
// -------------------------------------------------------------------
|
||||
|
||||
#include "XrayFluoMercuryPrimaryGeneratorAction.hh"
|
||||
#include "G4DataVector.hh"
|
||||
#include "XrayFluoMercuryDetectorConstruction.hh"
|
||||
#include "XrayFluoMercuryPrimaryGeneratorMessenger.hh"
|
||||
#include "XrayFluoRunAction.hh"
|
||||
#include "XrayFluoAnalysisManager.hh"
|
||||
#include "XrayFluoDataSet.hh"
|
||||
#include "G4PhysicalConstants.hh"
|
||||
#include "G4SystemOfUnits.hh"
|
||||
#include "G4DataVector.hh"
|
||||
#include "G4Event.hh"
|
||||
#include "G4ParticleGun.hh"
|
||||
#include "G4ParticleTable.hh"
|
||||
#include "G4ParticleDefinition.hh"
|
||||
#include "Randomize.hh"
|
||||
#include "XrayFluoAnalysisManager.hh"
|
||||
#include "XrayFluoDataSet.hh"
|
||||
|
||||
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
|
||||
|
||||
|
||||
@@ -36,6 +36,8 @@
|
||||
// -------------------------------------------------------------------
|
||||
|
||||
#include "XrayFluoNistMaterials.hh"
|
||||
#include "G4PhysicalConstants.hh"
|
||||
#include "G4SystemOfUnits.hh"
|
||||
|
||||
XrayFluoNistMaterials::XrayFluoNistMaterials()
|
||||
{ CreateMaterials();}
|
||||
@@ -202,6 +204,8 @@ void XrayFluoNistMaterials::CreateMaterials()
|
||||
// Define Icelandic Basalt main components 0029.PP.0035 sample
|
||||
density = 3*g/cm3;
|
||||
G4Material* icelandicBasaltMain= nistMan->ConstructNewMaterial("IceBasaltMain",elements, fractionMass, density);
|
||||
elements.clear();
|
||||
fractionMass.clear();
|
||||
|
||||
// Define Icelandic Basalt traces components 0029.PP.0035 sample
|
||||
density = 3*g/cm3;
|
||||
@@ -263,7 +267,7 @@ void XrayFluoNistMaterials::CreateMaterials()
|
||||
G4Material* doloriteMain = nistMan->ConstructNewMaterial("Dolorite", elements, fractionMass, density);
|
||||
|
||||
elements.clear();
|
||||
natoms.clear();
|
||||
fractionMass.clear();
|
||||
|
||||
// define traces in dolorite 0055.PP.0038 sample
|
||||
|
||||
|
||||
@@ -36,9 +36,10 @@
|
||||
// -------------------------------------------------------------------
|
||||
|
||||
#include "XrayFluoNormalization.hh"
|
||||
#include "XrayFluoDataSet.hh"
|
||||
#include "G4SystemOfUnits.hh"
|
||||
#include "G4VDataSetAlgorithm.hh"
|
||||
#include "G4LogLogInterpolation.hh"
|
||||
#include "XrayFluoDataSet.hh"
|
||||
|
||||
XrayFluoNormalization::XrayFluoNormalization()
|
||||
|
||||
|
||||
@@ -34,6 +34,7 @@
|
||||
#include "XrayFluoPhysicsList.hh"
|
||||
#include "XrayFluoPhysicsListMessenger.hh"
|
||||
|
||||
#include "G4SystemOfUnits.hh"
|
||||
#include "G4LossTableManager.hh"
|
||||
#include "G4EmProcessOptions.hh"
|
||||
#include "G4ProcessManager.hh"
|
||||
|
||||
@@ -37,6 +37,9 @@
|
||||
#include "XrayFluoPlaneDetectorConstruction.hh"
|
||||
#include "XrayFluoPlaneDetectorMessenger.hh"
|
||||
#include "XrayFluoSD.hh"
|
||||
#include "XrayFluoNistMaterials.hh"
|
||||
#include "G4PhysicalConstants.hh"
|
||||
#include "G4SystemOfUnits.hh"
|
||||
#include "G4Material.hh"
|
||||
#include "G4ThreeVector.hh"
|
||||
#include "G4Box.hh"
|
||||
@@ -51,8 +54,6 @@
|
||||
#include "G4ios.hh"
|
||||
#include "G4PVReplica.hh"
|
||||
#include "G4UserLimits.hh"
|
||||
#include "XrayFluoNistMaterials.hh"
|
||||
|
||||
|
||||
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
|
||||
|
||||
@@ -524,15 +525,15 @@ G4VPhysicalVolume* XrayFluoPlaneDetectorConstruction::ConstructApparate()
|
||||
G4VisAttributes * yellow= new G4VisAttributes( G4Colour(255/255. ,255/255. ,51/255. ));
|
||||
G4VisAttributes * red= new G4VisAttributes( G4Colour(255/255. , 0/255. , 0/255. ));
|
||||
G4VisAttributes * blue= new G4VisAttributes( G4Colour(0/255. , 0/255. , 255/255. ));
|
||||
G4VisAttributes * gray= new G4VisAttributes( G4Colour(128/255. , 128/255. , 128/255. ));
|
||||
G4VisAttributes * grayc= new G4VisAttributes( G4Colour(128/255. , 128/255. , 128/255. ));
|
||||
G4VisAttributes * lightGray= new G4VisAttributes( G4Colour(178/255. , 178/255. , 178/255. ));
|
||||
yellow->SetVisibility(true);
|
||||
yellow->SetForceSolid(true);
|
||||
red->SetVisibility(true);
|
||||
red->SetForceSolid(true);
|
||||
blue->SetVisibility(true);
|
||||
gray->SetVisibility(true);
|
||||
gray->SetForceSolid(true);
|
||||
grayc->SetVisibility(true);
|
||||
grayc->SetForceSolid(true);
|
||||
lightGray->SetVisibility(true);
|
||||
lightGray->SetForceSolid(true);
|
||||
simpleBoxVisAtt->SetVisibility(true);
|
||||
@@ -543,13 +544,13 @@ G4VPhysicalVolume* XrayFluoPlaneDetectorConstruction::ConstructApparate()
|
||||
logicPlane->SetVisAttributes(lightGray);
|
||||
|
||||
|
||||
logicScreen->SetVisAttributes(gray);
|
||||
logicScreen->SetVisAttributes(grayc);
|
||||
logicOhmicNeg->SetVisAttributes(yellow);
|
||||
logicOhmicPos->SetVisAttributes(yellow);
|
||||
|
||||
|
||||
|
||||
if (planeGranularity) logicGrain->SetVisAttributes(gray);
|
||||
if (planeGranularity) logicGrain->SetVisAttributes(grayc);
|
||||
|
||||
//always return the physical World
|
||||
|
||||
|
||||
@@ -36,17 +36,20 @@
|
||||
// -------------------------------------------------------------------
|
||||
|
||||
#include "XrayFluoPlanePrimaryGeneratorAction.hh"
|
||||
#include "G4DataVector.hh"
|
||||
#include "XrayFluoPlaneDetectorConstruction.hh"
|
||||
#include "XrayFluoPlanePrimaryGeneratorMessenger.hh"
|
||||
#include "XrayFluoRunAction.hh"
|
||||
#include "XrayFluoAnalysisManager.hh"
|
||||
#include "XrayFluoDataSet.hh"
|
||||
#include "G4PhysicalConstants.hh"
|
||||
#include "G4SystemOfUnits.hh"
|
||||
#include "G4UnitsTable.hh"
|
||||
#include "G4DataVector.hh"
|
||||
#include "G4Event.hh"
|
||||
#include "G4ParticleGun.hh"
|
||||
#include "G4ParticleTable.hh"
|
||||
#include "G4ParticleDefinition.hh"
|
||||
#include "Randomize.hh"
|
||||
#include "XrayFluoAnalysisManager.hh"
|
||||
#include "XrayFluoDataSet.hh"
|
||||
|
||||
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
|
||||
|
||||
|
||||
@@ -36,10 +36,11 @@
|
||||
// -------------------------------------------------------------------
|
||||
|
||||
#include "XrayFluoPrimaryGeneratorAction.hh"
|
||||
//#include "G4DataVector.hh"
|
||||
#include "XrayFluoDetectorConstruction.hh"
|
||||
#include "XrayFluoPrimaryGeneratorMessenger.hh"
|
||||
#include "XrayFluoRunAction.hh"
|
||||
#include "G4PhysicalConstants.hh"
|
||||
#include "G4SystemOfUnits.hh"
|
||||
#include "G4Event.hh"
|
||||
#include "G4ParticleGun.hh"
|
||||
#include "G4ParticleTable.hh"
|
||||
|
||||
@@ -147,7 +147,7 @@ G4bool XrayFluoSD::ProcessHits(G4Step* aStep,G4TouchableHistory*)
|
||||
G4cout << " la particella creata ha energia cinetica: " << secondEnergy << G4endl;
|
||||
*/
|
||||
|
||||
if ((edep==0.)) return false;
|
||||
if (edep==0.) return false;
|
||||
|
||||
//G4cout << " edep = " << edep << G4endl;
|
||||
|
||||
|
||||
@@ -35,17 +35,18 @@
|
||||
//
|
||||
// -------------------------------------------------------------------
|
||||
|
||||
#include <fstream>
|
||||
#include <sstream>
|
||||
|
||||
#include "XrayFluoSiLiDetectorType.hh"
|
||||
#include "XrayFluoDataSet.hh"
|
||||
#include "G4SystemOfUnits.hh"
|
||||
#include "G4UnitsTable.hh"
|
||||
#include "G4DataVector.hh"
|
||||
#include "G4LogLogInterpolation.hh"
|
||||
#include "G4ios.hh"
|
||||
#include <fstream>
|
||||
#include <sstream>
|
||||
#include "G4UnitsTable.hh"
|
||||
#include "Randomize.hh"
|
||||
|
||||
|
||||
XrayFluoSiLiDetectorType::XrayFluoSiLiDetectorType():
|
||||
detectorMaterial("SiLi"),efficiencySet(0)
|
||||
{
|
||||
@@ -331,7 +332,7 @@ void XrayFluoSiLiDetectorType::LoadResponseData(G4String fileName)
|
||||
}
|
||||
G4double a = 0;
|
||||
G4int k = 1;
|
||||
G4int s = 0;
|
||||
G4int q = 0;
|
||||
|
||||
G4int Z = 1;
|
||||
G4DataVector* energies = new G4DataVector;
|
||||
@@ -343,7 +344,7 @@ void XrayFluoSiLiDetectorType::LoadResponseData(G4String fileName)
|
||||
G4int nColumns = 2;
|
||||
if (a == -1)
|
||||
{
|
||||
if (s == 0)
|
||||
if (q == 0)
|
||||
{
|
||||
// End of a data set
|
||||
energyMap[Z] = energies;
|
||||
@@ -353,10 +354,10 @@ void XrayFluoSiLiDetectorType::LoadResponseData(G4String fileName)
|
||||
data = new G4DataVector;
|
||||
Z++;
|
||||
}
|
||||
s++;
|
||||
if (s == nColumns)
|
||||
q++;
|
||||
if (q == nColumns)
|
||||
{
|
||||
s = 0;
|
||||
q = 0;
|
||||
}
|
||||
}
|
||||
else if (a == -2)
|
||||
|
||||
Reference in New Issue
Block a user