G4QParentCluster.cc

Go to the documentation of this file.
00001 //
00002 // ********************************************************************
00003 // * License and Disclaimer                                           *
00004 // *                                                                  *
00005 // * The  Geant4 software  is  copyright of the Copyright Holders  of *
00006 // * the Geant4 Collaboration.  It is provided  under  the terms  and *
00007 // * conditions of the Geant4 Software License,  included in the file *
00008 // * LICENSE and available at  http://cern.ch/geant4/license .  These *
00009 // * include a list of copyright holders.                             *
00010 // *                                                                  *
00011 // * Neither the authors of this software system, nor their employing *
00012 // * institutes,nor the agencies providing financial support for this *
00013 // * work  make  any representation or  warranty, express or implied, *
00014 // * regarding  this  software system or assume any liability for its *
00015 // * use.  Please see the license in the file  LICENSE  and URL above *
00016 // * for the full disclaimer and the limitation of liability.         *
00017 // *                                                                  *
00018 // * This  code  implementation is the result of  the  scientific and *
00019 // * technical work of the GEANT4 collaboration.                      *
00020 // * By using,  copying,  modifying or  distributing the software (or *
00021 // * any work based  on the software)  you  agree  to acknowledge its *
00022 // * use  in  resulting  scientific  publications,  and indicate your *
00023 // * acceptance of all terms of the Geant4 Software license.          *
00024 // ********************************************************************
00025 //
00026 //
00027 // $Id$
00028 //
00029 //      ---------------- G4QParentCluster ----------------
00030 //             by Mikhail Kossov, Sept 1999.
00031 //      class fora Parent nuclear cluster in the CHIPS Model
00032 // -------------------------------------------------------------------
00033 // Short description: The parent cluster is the cluster, which can be
00034 // used for the nuclear fragment production. Different clusters csn be
00035 // used as the parent cluser for the particular G4QCandidate (nuclear
00036 // fragment), e.g. t and He3 for the t-fragment production. So the
00037 // G4QParentClusterVector is needed.
00038 // -------------------------------------------------------------------
00039 //#define debug
00040 //#define pdebug
00041 
00042 #include "G4QParentClusterVector.hh"
00043 
00044 G4QParentCluster::G4QParentCluster(G4int PDGCode) : thePDGCode(PDGCode),theProbability(0.),
00045   nQPart2(0), lowLimit(0), highLimit(0), theEnvBoundedMass(0), theEnvBindingEnergy(0),
00046   theNucBoundedMass(0), theNucBindingEnergy(0) {}
00047 
00048 G4QParentCluster::G4QParentCluster(G4int PDGCode, G4double prob) : thePDGCode(PDGCode),
00049   theProbability(prob), nQPart2(0), lowLimit(0), highLimit(0), theEnvBoundedMass(0),
00050   theEnvBindingEnergy(0), theNucBoundedMass(0), theNucBindingEnergy(0) {}
00051 
00052 G4QParentCluster::G4QParentCluster(const G4QParentCluster& rhs)
00053 {
00054   thePDGCode          = rhs.thePDGCode;
00055   theProbability      = rhs.theProbability;
00056   nQPart2             = rhs.nQPart2;
00057   transQC             = rhs.transQC;
00058   lowLimit            = rhs.lowLimit;
00059   highLimit           = rhs.highLimit;
00060   theEnvBoundedMass   = rhs.theEnvBoundedMass;
00061   theEnvBindingEnergy = rhs.theEnvBindingEnergy;
00062   theNucBoundedMass   = rhs.theNucBoundedMass;
00063   theNucBindingEnergy = rhs.theNucBindingEnergy;
00064 }
00065 
00066 G4QParentCluster::G4QParentCluster(G4QParentCluster* rhs)
00067 {
00068   thePDGCode          = rhs->thePDGCode;
00069   theProbability      = rhs->theProbability;
00070   nQPart2             = rhs->nQPart2;
00071   transQC             = rhs->transQC;
00072   lowLimit            = rhs->lowLimit;
00073   highLimit           = rhs->highLimit;
00074   theEnvBoundedMass   = rhs->theEnvBoundedMass;
00075   theEnvBindingEnergy = rhs->theEnvBindingEnergy;
00076   theNucBoundedMass   = rhs->theNucBoundedMass;
00077   theNucBindingEnergy = rhs->theNucBindingEnergy;
00078 }
00079 
00080 const G4QParentCluster& G4QParentCluster::operator=(const G4QParentCluster& rhs)
00081 {
00082   if(this != &rhs)                          // Beware of self assignment
00083   {
00084     thePDGCode          = rhs.thePDGCode;
00085     theProbability      = rhs.theProbability;
00086     nQPart2             = rhs.nQPart2;
00087     transQC             = rhs.transQC;
00088     lowLimit            = rhs.lowLimit;
00089     highLimit           = rhs.highLimit;
00090     theEnvBoundedMass   = rhs.theEnvBoundedMass;
00091     theEnvBindingEnergy = rhs.theEnvBindingEnergy;
00092     theNucBoundedMass   = rhs.theNucBoundedMass;
00093     theNucBindingEnergy = rhs.theNucBindingEnergy;
00094   }
00095   return *this;
00096 }
00097 
00098 G4QParentCluster::~G4QParentCluster() {}
00099 
00100 // Standard output for G4QParentCluster
00101 std::ostream& operator<<(std::ostream& lhs, G4QParentCluster& rhs)
00102 {
00103   lhs << "[ParClPDG=" << rhs.GetPDGCode() << ", probab=" << rhs.GetProbability() << "]";
00104   return lhs;
00105 }
00106 
00107 // Standard output for const G4QParentCluster
00108 std::ostream& operator<<(std::ostream& lhs, const G4QParentCluster& rhs)
00109 {
00110   lhs << "[ParClPDG=" << rhs.GetPDGCode() << ", probab=" << rhs.GetProbability() << "]";
00111   return lhs;
00112 }
00113 
00114 
00115 
00116 
00117 

Generated on Mon May 27 17:49:38 2013 for Geant4 by  doxygen 1.4.7