Import Geant4 10.7.0.beta source tree
This commit is contained in:
+3
-4
@@ -89,6 +89,9 @@ public:
|
||||
|
||||
virtual ~G4MoleculeDefinition();
|
||||
|
||||
G4MoleculeDefinition(const G4MoleculeDefinition&) = delete;
|
||||
G4MoleculeDefinition& operator=(const G4MoleculeDefinition&) = delete;
|
||||
|
||||
// Set the electronic configuration at ground level
|
||||
void SetLevelOccupation(G4int,
|
||||
G4int eNb = 2);
|
||||
@@ -174,10 +177,6 @@ public:
|
||||
|
||||
protected:
|
||||
G4MoleculeDefinition();
|
||||
G4MoleculeDefinition(const G4MoleculeDefinition&);
|
||||
|
||||
private:
|
||||
const G4MoleculeDefinition & operator=(const G4MoleculeDefinition &right);
|
||||
|
||||
private:
|
||||
G4int fCharge;
|
||||
|
||||
@@ -279,42 +279,6 @@ G4MoleculeDefinition::GetDecayChannels(const G4MolecularConfiguration* conf)
|
||||
return 0;
|
||||
}
|
||||
|
||||
//___________________________________________________________________________
|
||||
// Protected
|
||||
//___________________________________________________________________________
|
||||
|
||||
G4MoleculeDefinition::G4MoleculeDefinition(const G4MoleculeDefinition& right) :
|
||||
G4ParticleDefinition((const G4ParticleDefinition &) right),
|
||||
fDiffusionCoefficient(right.fDiffusionCoefficient),
|
||||
fAtomsNb(right.fAtomsNb),
|
||||
fVanDerVaalsRadius(right.fVanDerVaalsRadius)
|
||||
{
|
||||
if (right.fElectronOccupancy != 0)
|
||||
{
|
||||
fElectronOccupancy = new G4ElectronOccupancy(*(right.fElectronOccupancy));
|
||||
}
|
||||
else fElectronOccupancy = 0;
|
||||
|
||||
if (right.fDecayTable != 0)
|
||||
{
|
||||
fDecayTable = new G4MolecularDissociationTable(*(right.fDecayTable));
|
||||
}
|
||||
else fDecayTable = 0;
|
||||
|
||||
fCharge = right.fCharge;
|
||||
}
|
||||
|
||||
//___________________________________________________________________________
|
||||
|
||||
const G4MoleculeDefinition&
|
||||
G4MoleculeDefinition::operator=(const G4MoleculeDefinition &right)
|
||||
{
|
||||
if (this != &right)
|
||||
{
|
||||
}
|
||||
return *this;
|
||||
}
|
||||
|
||||
//___________________________________________________________________________
|
||||
|
||||
void G4MoleculeDefinition::Finalize()
|
||||
|
||||
+58
@@ -0,0 +1,58 @@
|
||||
//
|
||||
// ********************************************************************
|
||||
// * 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. *
|
||||
// ********************************************************************
|
||||
//
|
||||
//
|
||||
/*
|
||||
* G4FakeMolecule.hh
|
||||
*
|
||||
* Created on: Jul 23, 2019
|
||||
* Author: W. G. Shin
|
||||
* J. Ramos-Mendez and B. Faddegon
|
||||
*/
|
||||
|
||||
#ifndef G4FakeMolecule_h
|
||||
#define G4FakeMolecule_h 1
|
||||
|
||||
#include "globals.hh"
|
||||
#include "G4ios.hh"
|
||||
#include "G4ParticleDefinition.hh"
|
||||
#include "G4MoleculeDefinition.hh"
|
||||
|
||||
// ######################################################################
|
||||
// ### FakeMolecule ###
|
||||
// ######################################################################
|
||||
|
||||
class G4FakeMolecule : public G4MoleculeDefinition
|
||||
{
|
||||
private:
|
||||
static /*G4ThreadLocal*/ G4FakeMolecule* theInstance;
|
||||
G4FakeMolecule() {}
|
||||
virtual ~G4FakeMolecule() {}
|
||||
|
||||
public:
|
||||
static G4FakeMolecule* Definition();
|
||||
};
|
||||
|
||||
#endif
|
||||
@@ -0,0 +1,58 @@
|
||||
//
|
||||
// ********************************************************************
|
||||
// * 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. *
|
||||
// ********************************************************************
|
||||
//
|
||||
//
|
||||
/*
|
||||
* G4HO2.hh
|
||||
*
|
||||
* Created on: Jul 23, 2019
|
||||
* Author: W. G. Shin
|
||||
* J. Ramos-Mendez and B. Faddegon
|
||||
*/
|
||||
|
||||
#ifndef G4HO2_h
|
||||
#define G4HO2_h 1
|
||||
|
||||
#include "globals.hh"
|
||||
#include "G4ios.hh"
|
||||
#include "G4ParticleDefinition.hh"
|
||||
#include "G4MoleculeDefinition.hh"
|
||||
|
||||
// ######################################################################
|
||||
// ### HYDROPEROXIDE ###
|
||||
// ######################################################################
|
||||
|
||||
class G4HO2 : public G4MoleculeDefinition
|
||||
{
|
||||
private:
|
||||
static /*G4ThreadLocal*/ G4HO2* theInstance;
|
||||
G4HO2() {}
|
||||
virtual ~G4HO2() {}
|
||||
|
||||
public:
|
||||
static G4HO2* Definition();
|
||||
};
|
||||
|
||||
#endif
|
||||
@@ -0,0 +1,58 @@
|
||||
//
|
||||
// ********************************************************************
|
||||
// * 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. *
|
||||
// ********************************************************************
|
||||
//
|
||||
//
|
||||
/*
|
||||
* G4O2.hh
|
||||
*
|
||||
* Created on: Jul 23, 2019
|
||||
* Author: W. G. Shin
|
||||
* J. Ramos-Mendez and B. Faddegon
|
||||
*/
|
||||
|
||||
#ifndef G4O2_h
|
||||
#define G4O2_h 1
|
||||
|
||||
#include "globals.hh"
|
||||
#include "G4ios.hh"
|
||||
#include "G4ParticleDefinition.hh"
|
||||
#include "G4MoleculeDefinition.hh"
|
||||
|
||||
// ######################################################################
|
||||
// ### OXYGEN ###
|
||||
// ######################################################################
|
||||
|
||||
class G4O2 : public G4MoleculeDefinition
|
||||
{
|
||||
private:
|
||||
static /*G4ThreadLocal*/ G4O2* theInstance;
|
||||
G4O2() {}
|
||||
virtual ~G4O2() {}
|
||||
|
||||
public:
|
||||
static G4O2* Definition();
|
||||
};
|
||||
|
||||
#endif
|
||||
@@ -0,0 +1,58 @@
|
||||
//
|
||||
// ********************************************************************
|
||||
// * 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. *
|
||||
// ********************************************************************
|
||||
//
|
||||
//
|
||||
/*
|
||||
* G4O3.hh
|
||||
*
|
||||
* Created on: Jul 23, 2019
|
||||
* Author: W. G. Shin
|
||||
* J. Ramos-Mendez and B. Faddegon
|
||||
*/
|
||||
|
||||
#ifndef G4O3_h
|
||||
#define G4O3_h 1
|
||||
|
||||
#include "globals.hh"
|
||||
#include "G4ios.hh"
|
||||
#include "G4ParticleDefinition.hh"
|
||||
#include "G4MoleculeDefinition.hh"
|
||||
|
||||
// ######################################################################
|
||||
// ### OZONE ###
|
||||
// ######################################################################
|
||||
|
||||
class G4O3 : public G4MoleculeDefinition
|
||||
{
|
||||
private:
|
||||
static /*G4ThreadLocal*/ G4O3* theInstance;
|
||||
G4O3() {}
|
||||
virtual ~G4O3() {}
|
||||
|
||||
public:
|
||||
static G4O3* Definition();
|
||||
};
|
||||
|
||||
#endif
|
||||
@@ -0,0 +1,58 @@
|
||||
//
|
||||
// ********************************************************************
|
||||
// * 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. *
|
||||
// ********************************************************************
|
||||
//
|
||||
//
|
||||
/*
|
||||
* G4Oxygen.hh
|
||||
*
|
||||
* Created on: Jul 23, 2019
|
||||
* Author: W. G. Shin
|
||||
* J. Ramos-Mendez and B. Faddegon
|
||||
*/
|
||||
|
||||
#ifndef G4Oxygen_h
|
||||
#define G4Oxygen_h 1
|
||||
|
||||
#include "globals.hh"
|
||||
#include "G4ios.hh"
|
||||
#include "G4ParticleDefinition.hh"
|
||||
#include "G4MoleculeDefinition.hh"
|
||||
|
||||
// ######################################################################
|
||||
// ### Oxygen ###
|
||||
// ######################################################################
|
||||
|
||||
class G4Oxygen : public G4MoleculeDefinition
|
||||
{
|
||||
private:
|
||||
static /*G4ThreadLocal*/ G4Oxygen* theInstance;
|
||||
G4Oxygen() {}
|
||||
virtual ~G4Oxygen() {}
|
||||
|
||||
public:
|
||||
static G4Oxygen* Definition();
|
||||
};
|
||||
|
||||
#endif
|
||||
@@ -34,21 +34,31 @@ include(Geant4MacroDefineModule)
|
||||
GEANT4_DEFINE_MODULE(NAME G4emdna-moltypes
|
||||
HEADERS
|
||||
G4Electron_aq.hh
|
||||
G4FakeMolecule.hh
|
||||
G4H2.hh
|
||||
G4H2O2.hh
|
||||
G4H2O.hh
|
||||
G4H3O.hh
|
||||
G4HO2.hh
|
||||
G4Hydrogen.hh
|
||||
G4O2.hh
|
||||
G4O3.hh
|
||||
G4OH.hh
|
||||
G4Oxygen.hh
|
||||
G4DNAMolecule.hh
|
||||
SOURCES
|
||||
G4Electron_aq.cc
|
||||
G4FakeMolecule.cc
|
||||
G4H2.cc
|
||||
G4H2O2.cc
|
||||
G4H2O.cc
|
||||
G4H3O.cc
|
||||
G4HO2.cc
|
||||
G4Hydrogen.cc
|
||||
G4O2.cc
|
||||
G4O3.cc
|
||||
G4OH.cc
|
||||
G4Oxygen.cc
|
||||
G4DNAMolecule.cc
|
||||
GRANULAR_DEPENDENCIES
|
||||
G4geometrymng
|
||||
|
||||
@@ -0,0 +1,79 @@
|
||||
//
|
||||
// ********************************************************************
|
||||
// * 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. *
|
||||
// ********************************************************************
|
||||
//
|
||||
//
|
||||
/*
|
||||
* G4FakeMolecule.cc
|
||||
*
|
||||
* Created on: Jul 23, 2019
|
||||
* Author: W. G. Shin
|
||||
* J. Ramos-Mendez and B. Faddegon
|
||||
*/
|
||||
|
||||
#include "G4FakeMolecule.hh"
|
||||
#include "G4PhysicalConstants.hh"
|
||||
#include "G4SystemOfUnits.hh"
|
||||
#include "G4ParticleTable.hh"
|
||||
|
||||
// ######################################################################
|
||||
// ### FakeMolecule ###
|
||||
// ######################################################################
|
||||
G4FakeMolecule* G4FakeMolecule::theInstance = 0;
|
||||
|
||||
G4FakeMolecule* G4FakeMolecule::Definition()
|
||||
{
|
||||
if (theInstance != 0) return theInstance;
|
||||
const G4String name = "None";
|
||||
// search in particle table]
|
||||
G4ParticleTable* pTable = G4ParticleTable::GetParticleTable();
|
||||
G4ParticleDefinition* anInstance = pTable->FindParticle(name);
|
||||
// G4ParticleDefinition* anInstance = 0;
|
||||
if (anInstance == 0)
|
||||
{
|
||||
const G4String formatedName = "None";
|
||||
|
||||
// create molecule
|
||||
//
|
||||
// G4MoleculeDefinition(const G4String& name,
|
||||
// G4double mass,
|
||||
// G4double diffCoeff,
|
||||
// G4int charge = 0,
|
||||
// G4int electronicLevels = 0,
|
||||
// G4double radius = -1,
|
||||
// G4int atomsNumber = -1,
|
||||
// G4double lifetime = -1,
|
||||
// G4String aType = "",
|
||||
// G4FakeParticleID ID = G4FakeParticleID::Create()
|
||||
// );
|
||||
|
||||
G4double mass = 0 * g / Avogadro * c_squared;
|
||||
anInstance = new G4MoleculeDefinition(name, mass, 0 * (m * m / s), 0, 0,
|
||||
0 * angstrom, 0);
|
||||
((G4MoleculeDefinition*) anInstance)->SetLevelOccupation(0); // Set 2 electrons on 1 single occupancy
|
||||
((G4MoleculeDefinition*) anInstance)->SetFormatedName(formatedName);
|
||||
}
|
||||
theInstance = reinterpret_cast<G4FakeMolecule*>(anInstance);
|
||||
return theInstance;
|
||||
}
|
||||
@@ -0,0 +1,79 @@
|
||||
//
|
||||
// ********************************************************************
|
||||
// * 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. *
|
||||
// ********************************************************************
|
||||
//
|
||||
//
|
||||
/*
|
||||
* G4HO2.cc
|
||||
*
|
||||
* Created on: Jul 23, 2019
|
||||
* Author: W. G. Shin
|
||||
* J. Ramos-Mendez and B. Faddegon
|
||||
*/
|
||||
|
||||
#include "G4HO2.hh"
|
||||
#include "G4PhysicalConstants.hh"
|
||||
#include "G4SystemOfUnits.hh"
|
||||
#include "G4ParticleTable.hh"
|
||||
|
||||
// ######################################################################
|
||||
// ### HO2 ###
|
||||
// ######################################################################
|
||||
G4HO2* G4HO2::theInstance = 0;
|
||||
|
||||
G4HO2* G4HO2::Definition()
|
||||
{
|
||||
if (theInstance != 0) return theInstance;
|
||||
const G4String name = "HO_2";
|
||||
// search in particle table]
|
||||
G4ParticleTable* pTable = G4ParticleTable::GetParticleTable();
|
||||
G4ParticleDefinition* anInstance = pTable->FindParticle(name);
|
||||
if (anInstance == 0)
|
||||
{
|
||||
const G4String formatedName = "HO_{2}";
|
||||
|
||||
// create molecule
|
||||
//
|
||||
// G4MoleculeDefinition(const G4String& name,
|
||||
// G4double mass,
|
||||
// G4double diffCoeff,
|
||||
// G4int charge = 0,
|
||||
// G4int electronicLevels = 0,
|
||||
// G4double radius = -1,
|
||||
// G4int atomsNumber = -1,
|
||||
// G4double lifetime = -1,
|
||||
// G4String aType = "",
|
||||
// G4FakeParticleID ID = G4FakeParticleID::Create()
|
||||
// );
|
||||
|
||||
G4double mass = 33.0034 * g / Avogadro * c_squared;
|
||||
anInstance = new G4MoleculeDefinition(name, mass, 2.3e-9 * (m * m / s), 0, 0,
|
||||
2.1 * angstrom, 3);
|
||||
|
||||
((G4MoleculeDefinition*) anInstance)->SetLevelOccupation(0); // Set 2 electrons on 1 single occupancy
|
||||
((G4MoleculeDefinition*) anInstance)->SetFormatedName(formatedName);
|
||||
}
|
||||
theInstance = reinterpret_cast<G4HO2*>(anInstance);
|
||||
return theInstance;
|
||||
}
|
||||
@@ -0,0 +1,79 @@
|
||||
//
|
||||
// ********************************************************************
|
||||
// * 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. *
|
||||
// ********************************************************************
|
||||
//
|
||||
//
|
||||
/*
|
||||
* G4O2.cc
|
||||
*
|
||||
* Created on: Jul 23, 2019
|
||||
* Author: W. G. Shin
|
||||
* J. Ramos-Mendez and B. Faddegon
|
||||
*/
|
||||
|
||||
#include "G4O2.hh"
|
||||
#include "G4PhysicalConstants.hh"
|
||||
#include "G4SystemOfUnits.hh"
|
||||
#include "G4ParticleTable.hh"
|
||||
|
||||
// ######################################################################
|
||||
// ### Oxygen molecule ###
|
||||
// ######################################################################
|
||||
G4O2* G4O2::theInstance = 0;
|
||||
|
||||
G4O2* G4O2::Definition()
|
||||
{
|
||||
if (theInstance != 0) return theInstance;
|
||||
const G4String name = "O_2";
|
||||
// search in particle table]
|
||||
G4ParticleTable* pTable = G4ParticleTable::GetParticleTable();
|
||||
G4ParticleDefinition* anInstance = pTable->FindParticle(name);
|
||||
if (anInstance == 0)
|
||||
{
|
||||
const G4String formatedName = "O_{2}";
|
||||
|
||||
// create molecule
|
||||
//
|
||||
// G4MoleculeDefinition(const G4String& name,
|
||||
// G4double mass,
|
||||
// G4double diffCoeff,
|
||||
// G4int charge = 0,
|
||||
// G4int electronicLevels = 0,
|
||||
// G4double radius = -1,
|
||||
// G4int atomsNumber = -1,
|
||||
// G4double lifetime = -1,
|
||||
// G4String aType = "",
|
||||
// G4FakeParticleID ID = G4FakeParticleID::Create()
|
||||
// );
|
||||
|
||||
G4double mass = 31.99546 * g / Avogadro * c_squared;
|
||||
anInstance = new G4MoleculeDefinition(name, mass, 2.4e-9 * (m * m / s), 0, 0,
|
||||
1.7 * angstrom, 2);
|
||||
|
||||
((G4MoleculeDefinition*) anInstance)->SetLevelOccupation(0); // not implemented
|
||||
((G4MoleculeDefinition*) anInstance)->SetFormatedName(formatedName);
|
||||
}
|
||||
theInstance = reinterpret_cast<G4O2*>(anInstance);
|
||||
return theInstance;
|
||||
}
|
||||
@@ -0,0 +1,79 @@
|
||||
//
|
||||
// ********************************************************************
|
||||
// * 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. *
|
||||
// ********************************************************************
|
||||
//
|
||||
//
|
||||
/*
|
||||
* G4O3.cc
|
||||
*
|
||||
* Created on: Jul 23, 2019
|
||||
* Author: W. G. Shin
|
||||
* J. Ramos-Mendez and B. Faddegon
|
||||
*/
|
||||
|
||||
#include "G4O3.hh"
|
||||
#include "G4PhysicalConstants.hh"
|
||||
#include "G4SystemOfUnits.hh"
|
||||
#include "G4ParticleTable.hh"
|
||||
|
||||
// ######################################################################
|
||||
// ### Ozone ###
|
||||
// ######################################################################
|
||||
G4O3* G4O3::theInstance = 0;
|
||||
|
||||
G4O3* G4O3::Definition()
|
||||
{
|
||||
if (theInstance != 0) return theInstance;
|
||||
const G4String name = "O_3";
|
||||
// search in particle table]
|
||||
G4ParticleTable* pTable = G4ParticleTable::GetParticleTable();
|
||||
G4ParticleDefinition* anInstance = pTable->FindParticle(name);
|
||||
if (anInstance == 0)
|
||||
{
|
||||
const G4String formatedName = "O_{3}";
|
||||
|
||||
// create molecule
|
||||
//
|
||||
// G4MoleculeDefinition(const G4String& name,
|
||||
// G4double mass,
|
||||
// G4double diffCoeff,
|
||||
// G4int charge = 0,
|
||||
// G4int electronicLevels = 0,
|
||||
// G4double radius = -1,
|
||||
// G4int atomsNumber = -1,
|
||||
// G4double lifetime = -1,
|
||||
// G4String aType = "",
|
||||
// G4FakeParticleID ID = G4FakeParticleID::Create()
|
||||
// );
|
||||
|
||||
G4double mass = 47.99319 * g / Avogadro * c_squared;
|
||||
anInstance = new G4MoleculeDefinition(name, mass, 2.0e-9 * (m * m / s), 0, 0,
|
||||
2.0 * angstrom, 3);
|
||||
|
||||
((G4MoleculeDefinition*) anInstance)->SetLevelOccupation(0); // Set 2 electrons on 1 single occupancy
|
||||
((G4MoleculeDefinition*) anInstance)->SetFormatedName(formatedName);
|
||||
}
|
||||
theInstance = reinterpret_cast<G4O3*>(anInstance);
|
||||
return theInstance;
|
||||
}
|
||||
@@ -0,0 +1,78 @@
|
||||
//
|
||||
// ********************************************************************
|
||||
// * 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. *
|
||||
// ********************************************************************
|
||||
//
|
||||
/*
|
||||
* G4Oxygen.cc
|
||||
*
|
||||
* Created on: Jul 23, 2019
|
||||
* Author: W. G. Shin
|
||||
* J. Ramos-Mendez and B. Faddegon
|
||||
*/
|
||||
|
||||
#include "G4Oxygen.hh"
|
||||
#include "G4PhysicalConstants.hh"
|
||||
#include "G4SystemOfUnits.hh"
|
||||
#include "G4ParticleTable.hh"
|
||||
|
||||
// ######################################################################
|
||||
// ### Oxygen ###
|
||||
// ######################################################################
|
||||
G4Oxygen* G4Oxygen::theInstance = 0;
|
||||
|
||||
G4Oxygen* G4Oxygen::Definition()
|
||||
{
|
||||
if (theInstance != 0) return theInstance;
|
||||
const G4String name = "O";
|
||||
// search in particle table]
|
||||
G4ParticleTable* pTable = G4ParticleTable::GetParticleTable();
|
||||
G4ParticleDefinition* anInstance = pTable->FindParticle(name);
|
||||
// G4ParticleDefinition* anInstance = 0;
|
||||
if (anInstance == 0)
|
||||
{
|
||||
const G4String formatedName = "O";
|
||||
|
||||
// create molecule
|
||||
//
|
||||
// G4MoleculeDefinition(const G4String& name,
|
||||
// G4double mass,
|
||||
// G4double diffCoeff,
|
||||
// G4int charge = 0,
|
||||
// G4int electronicLevels = 0,
|
||||
// G4double radius = -1,
|
||||
// G4int atomsNumber = -1,
|
||||
// G4double lifetime = -1,
|
||||
// G4String aType = "",
|
||||
// G4FakeParticleID ID = G4FakeParticleID::Create()
|
||||
// );
|
||||
|
||||
G4double mass = 15.99773 * g / Avogadro * c_squared;
|
||||
anInstance = new G4MoleculeDefinition(name, mass, 2.0e-9 * (m * m / s), 0, 0,
|
||||
2.0 * angstrom, 1);
|
||||
((G4MoleculeDefinition*) anInstance)->SetLevelOccupation(0); // Set 2 electrons on 1 single occupancy
|
||||
((G4MoleculeDefinition*) anInstance)->SetFormatedName(formatedName);
|
||||
}
|
||||
theInstance = reinterpret_cast<G4Oxygen*>(anInstance);
|
||||
return theInstance;
|
||||
}
|
||||
Reference in New Issue
Block a user