Index: trunk/source/processes/hadronic/models/de_excitation/util/src/G4AlphaCoulombBarrier.cc
===================================================================
--- trunk/source/processes/hadronic/models/de_excitation/util/src/G4AlphaCoulombBarrier.cc	(revision 1340)
+++ trunk/source/processes/hadronic/models/de_excitation/util/src/G4AlphaCoulombBarrier.cc	(revision 1347)
@@ -25,6 +25,6 @@
 //
 //
-// $Id: G4AlphaCoulombBarrier.cc,v 1.5 2008/09/19 13:32:54 ahoward Exp $
-// GEANT4 tag $Name: geant4-09-03-ref-09 $
+// $Id: G4AlphaCoulombBarrier.cc,v 1.6 2010/11/15 12:44:06 vnivanch Exp $
+// GEANT4 tag $Name: geant4-09-04-ref-00 $
 //
 // Hadronic Process: Nuclear De-excitations
@@ -35,28 +35,9 @@
 #include "G4HadronicException.hh"
 
-G4AlphaCoulombBarrier::G4AlphaCoulombBarrier(const G4AlphaCoulombBarrier & ) : G4CoulombBarrier()
-{
-    throw G4HadronicException(__FILE__, __LINE__, "G4AlphaCoulombBarrier::copy_constructor meant to not be accessable.");
-}
+G4AlphaCoulombBarrier::G4AlphaCoulombBarrier() : G4CoulombBarrier(4,2) {}
+G4AlphaCoulombBarrier::~G4AlphaCoulombBarrier() {}
 
 
-const G4AlphaCoulombBarrier & G4AlphaCoulombBarrier::operator=(const G4AlphaCoulombBarrier & )
-{
-    throw G4HadronicException(__FILE__, __LINE__, "G4AlphaCoulombBarrier::operator= meant to not be accessable.");
-    return *this;
-}
-
-G4bool G4AlphaCoulombBarrier::operator==(const G4AlphaCoulombBarrier & ) const 
-{
-    return false;
-}
-
-G4bool G4AlphaCoulombBarrier::operator!=(const G4AlphaCoulombBarrier & ) const 
-{
-    return true;
-}
-
-
-G4double G4AlphaCoulombBarrier::BarrierPenetrationFactor(const G4double aZ) const
+G4double G4AlphaCoulombBarrier::BarrierPenetrationFactor(G4double aZ) const
 {
     // Data comes from 
Index: trunk/source/processes/hadronic/models/de_excitation/util/src/G4CameronGilbertPairingCorrections.cc
===================================================================
--- trunk/source/processes/hadronic/models/de_excitation/util/src/G4CameronGilbertPairingCorrections.cc	(revision 1340)
+++ trunk/source/processes/hadronic/models/de_excitation/util/src/G4CameronGilbertPairingCorrections.cc	(revision 1347)
@@ -25,6 +25,6 @@
 //
 //
-// $Id: G4CameronGilbertPairingCorrections.cc,v 1.6 2009/11/30 10:33:33 gcosmo Exp $
-// GEANT4 tag $Name: geant4-09-03-ref-09 $
+// $Id: G4CameronGilbertPairingCorrections.cc,v 1.7 2010/11/15 16:09:46 vnivanch Exp $
+// GEANT4 tag $Name: geant4-09-04-ref-00 $
 //
 // Hadronic Process: Nuclear De-excitations
@@ -79,6 +79,8 @@
 G4CameronGilbertPairingCorrections* G4CameronGilbertPairingCorrections::GetInstance()
 {
-  static G4CameronGilbertPairingCorrections theCorrections;
-  if (!theInstance)  { theInstance = &theCorrections; }
+  if (!theInstance)  { 
+    static G4CameronGilbertPairingCorrections theCorrections;
+    theInstance = &theCorrections; 
+  }
   return theInstance;
 }
Index: trunk/source/processes/hadronic/models/de_excitation/util/src/G4CameronGilbertShellCorrections.cc
===================================================================
--- trunk/source/processes/hadronic/models/de_excitation/util/src/G4CameronGilbertShellCorrections.cc	(revision 1340)
+++ trunk/source/processes/hadronic/models/de_excitation/util/src/G4CameronGilbertShellCorrections.cc	(revision 1347)
@@ -25,6 +25,6 @@
 //
 //
-// $Id: G4CameronGilbertShellCorrections.cc,v 1.6 2009/11/30 10:33:33 gcosmo Exp $
-// GEANT4 tag $Name: geant4-09-03-ref-09 $
+// $Id: G4CameronGilbertShellCorrections.cc,v 1.7 2010/11/15 16:09:46 vnivanch Exp $
+// GEANT4 tag $Name: geant4-09-04-ref-00 $
 //
 // Hadronic Process: Nuclear De-excitations
@@ -79,6 +79,8 @@
 G4CameronGilbertShellCorrections* G4CameronGilbertShellCorrections::GetInstance()
 {
-  static G4CameronGilbertShellCorrections theCorrections;
-  if (!theInstance)  { theInstance = &theCorrections; }
+  if (!theInstance)  { 
+    static G4CameronGilbertShellCorrections theCorrections;
+    theInstance = &theCorrections; 
+  }
   return theInstance;
 }
Index: trunk/source/processes/hadronic/models/de_excitation/util/src/G4CameronShellPlusPairingCorrections.cc
===================================================================
--- trunk/source/processes/hadronic/models/de_excitation/util/src/G4CameronShellPlusPairingCorrections.cc	(revision 1340)
+++ trunk/source/processes/hadronic/models/de_excitation/util/src/G4CameronShellPlusPairingCorrections.cc	(revision 1347)
@@ -25,6 +25,6 @@
 //
 //
-// $Id: G4CameronShellPlusPairingCorrections.cc,v 1.6 2009/11/30 10:33:33 gcosmo Exp $
-// GEANT4 tag $Name: geant4-09-03-ref-09 $
+// $Id: G4CameronShellPlusPairingCorrections.cc,v 1.7 2010/11/15 16:09:46 vnivanch Exp $
+// GEANT4 tag $Name: geant4-09-04-ref-00 $
 //
 // Hadronic Process: Nuclear De-excitations
@@ -97,6 +97,8 @@
 G4CameronShellPlusPairingCorrections* G4CameronShellPlusPairingCorrections::GetInstance()
 {
-  static G4CameronShellPlusPairingCorrections theCorrections;
-  if (!theInstance)  { theInstance = &theCorrections; }
+  if (!theInstance)  { 
+    static G4CameronShellPlusPairingCorrections theCorrections;
+    theInstance = &theCorrections; 
+  }
   return theInstance;
 }
Index: trunk/source/processes/hadronic/models/de_excitation/util/src/G4CameronTruranHilfPairingCorrections.cc
===================================================================
--- trunk/source/processes/hadronic/models/de_excitation/util/src/G4CameronTruranHilfPairingCorrections.cc	(revision 1340)
+++ trunk/source/processes/hadronic/models/de_excitation/util/src/G4CameronTruranHilfPairingCorrections.cc	(revision 1347)
@@ -25,6 +25,6 @@
 //
 //
-// $Id: G4CameronTruranHilfPairingCorrections.cc,v 1.6 2009/11/30 10:33:33 gcosmo Exp $
-// GEANT4 tag $Name: geant4-09-03-ref-09 $
+// $Id: G4CameronTruranHilfPairingCorrections.cc,v 1.7 2010/11/15 16:09:46 vnivanch Exp $
+// GEANT4 tag $Name: geant4-09-04-ref-00 $
 //
 // Hadronic Process: Nuclear De-excitations
@@ -84,6 +84,8 @@
 G4CameronTruranHilfPairingCorrections* G4CameronTruranHilfPairingCorrections::GetInstance()
 {
-  static G4CameronTruranHilfPairingCorrections theCorrections;
-  if (!theInstance)  { theInstance = &theCorrections; }
+  if (!theInstance)  { 
+    static G4CameronTruranHilfPairingCorrections theCorrections;
+    theInstance = &theCorrections; 
+  }
   return theInstance;
 }
Index: trunk/source/processes/hadronic/models/de_excitation/util/src/G4CameronTruranHilfShellCorrections.cc
===================================================================
--- trunk/source/processes/hadronic/models/de_excitation/util/src/G4CameronTruranHilfShellCorrections.cc	(revision 1340)
+++ trunk/source/processes/hadronic/models/de_excitation/util/src/G4CameronTruranHilfShellCorrections.cc	(revision 1347)
@@ -25,6 +25,6 @@
 //
 //
-// $Id: G4CameronTruranHilfShellCorrections.cc,v 1.6 2009/11/30 10:33:33 gcosmo Exp $
-// GEANT4 tag $Name: geant4-09-03-ref-09 $
+// $Id: G4CameronTruranHilfShellCorrections.cc,v 1.7 2010/11/15 16:09:46 vnivanch Exp $
+// GEANT4 tag $Name: geant4-09-04-ref-00 $
 //
 // Hadronic Process: Nuclear De-excitations
@@ -86,6 +86,8 @@
 G4CameronTruranHilfShellCorrections* G4CameronTruranHilfShellCorrections::GetInstance()
 {
-  static G4CameronTruranHilfShellCorrections theCorrections;
-  if (!theInstance)  { theInstance = &theCorrections; }
+  if (!theInstance)  { 
+    static G4CameronTruranHilfShellCorrections theCorrections;
+    theInstance = &theCorrections; 
+  }
   return theInstance;
 }
Index: trunk/source/processes/hadronic/models/de_excitation/util/src/G4ConstantLevelDensityParameter.cc
===================================================================
--- trunk/source/processes/hadronic/models/de_excitation/util/src/G4ConstantLevelDensityParameter.cc	(revision 1340)
+++ trunk/source/processes/hadronic/models/de_excitation/util/src/G4ConstantLevelDensityParameter.cc	(revision 1347)
@@ -35,35 +35,9 @@
 #include "G4HadronicException.hh"
 
-G4ConstantLevelDensityParameter::
-G4ConstantLevelDensityParameter(const G4ConstantLevelDensityParameter& ) :
- G4VLevelDensityParameter(),  EvapLevelDensityParameter(0.125*(1./MeV))
-{
-  throw G4HadronicException(__FILE__, __LINE__, "G4ConstantLevelDensityParameter::copy_constructor meant to not be accessable");
-}
+G4ConstantLevelDensityParameter::G4ConstantLevelDensityParameter() 
+  :  EvapLevelDensityParameter(0.125/MeV) 
+{}
 
 G4ConstantLevelDensityParameter::~G4ConstantLevelDensityParameter()
-{
-}
+{}
 
-const G4ConstantLevelDensityParameter & G4ConstantLevelDensityParameter::
-operator=(const G4ConstantLevelDensityParameter &)
-{
-  throw G4HadronicException(__FILE__, __LINE__, "G4ConstantLevelDensityParameter::operator= meant to not be accessable");
-  return *this;
-}
-
-
-G4bool G4ConstantLevelDensityParameter::operator==(const G4ConstantLevelDensityParameter &) const
-{
-  return false;
-}
-
-G4bool G4ConstantLevelDensityParameter::operator!=(const G4ConstantLevelDensityParameter &) const
-{
-  return true;
-}
-
-
-
-
-
Index: trunk/source/processes/hadronic/models/de_excitation/util/src/G4CookPairingCorrections.cc
===================================================================
--- trunk/source/processes/hadronic/models/de_excitation/util/src/G4CookPairingCorrections.cc	(revision 1340)
+++ trunk/source/processes/hadronic/models/de_excitation/util/src/G4CookPairingCorrections.cc	(revision 1347)
@@ -25,6 +25,6 @@
 //
 //
-// $Id: G4CookPairingCorrections.cc,v 1.6 2009/11/30 10:33:33 gcosmo Exp $
-// GEANT4 tag $Name: geant4-09-03-ref-09 $
+// $Id: G4CookPairingCorrections.cc,v 1.7 2010/11/15 16:09:46 vnivanch Exp $
+// GEANT4 tag $Name: geant4-09-04-ref-00 $
 //
 // Hadronic Process: Nuclear De-excitations
@@ -78,6 +78,8 @@
 G4CookPairingCorrections* G4CookPairingCorrections::GetInstance()
 {
-  static G4CookPairingCorrections theCorrections;
-  if (!theInstance)  { theInstance = &theCorrections; }
+  if (!theInstance)  { 
+    static G4CookPairingCorrections theCorrections;
+    theInstance = &theCorrections; 
+  }
   return theInstance;
 }
Index: trunk/source/processes/hadronic/models/de_excitation/util/src/G4CookShellCorrections.cc
===================================================================
--- trunk/source/processes/hadronic/models/de_excitation/util/src/G4CookShellCorrections.cc	(revision 1340)
+++ trunk/source/processes/hadronic/models/de_excitation/util/src/G4CookShellCorrections.cc	(revision 1347)
@@ -25,6 +25,6 @@
 //
 //
-// $Id: G4CookShellCorrections.cc,v 1.6 2009/11/30 10:33:33 gcosmo Exp $
-// GEANT4 tag $Name: geant4-09-03-ref-09 $
+// $Id: G4CookShellCorrections.cc,v 1.7 2010/11/15 16:09:46 vnivanch Exp $
+// GEANT4 tag $Name: geant4-09-04-ref-00 $
 //
 // Hadronic Process: Nuclear De-excitations
@@ -78,6 +78,8 @@
 G4CookShellCorrections* G4CookShellCorrections::GetInstance()
 {
-  static G4CookShellCorrections theCorrections;
-  if (!theInstance)  { theInstance = &theCorrections; }
+  if (!theInstance) { 
+    static G4CookShellCorrections theCorrections;
+    theInstance = &theCorrections; 
+  }
   return theInstance;
 }
Index: trunk/source/processes/hadronic/models/de_excitation/util/src/G4CoulombBarrier.cc
===================================================================
--- trunk/source/processes/hadronic/models/de_excitation/util/src/G4CoulombBarrier.cc	(revision 1340)
+++ trunk/source/processes/hadronic/models/de_excitation/util/src/G4CoulombBarrier.cc	(revision 1347)
@@ -24,47 +24,32 @@
 // ********************************************************************
 //
-//
-// $Id: G4CoulombBarrier.cc,v 1.9 2009/03/04 11:05:02 gcosmo Exp $
-// GEANT4 tag $Name: geant4-09-03-ref-09 $
+// $Id: G4CoulombBarrier.cc,v 1.10 2010/11/15 12:44:06 vnivanch Exp $
+// GEANT4 tag $Name: geant4-09-04-ref-00 $
 //
 // Hadronic Process: Nuclear De-excitations
 // by V. Lara (Dec 1999)
-// modified barrier by JMQ (test30) by 14-11-07 
+//
+// 14-11-2007 modified barrier by JMQ (test30) 
+// 15-11-2010 V.Ivanchenko use G4Pow and cleanup 
 
 #include "G4CoulombBarrier.hh"
 #include "G4HadronicException.hh"
+#include "G4Pow.hh"
 #include <sstream>
 
-G4CoulombBarrier::G4CoulombBarrier()
-  : G4VCoulombBarrier(1,0) {}
+G4CoulombBarrier::G4CoulombBarrier(): G4VCoulombBarrier(1,0) 
+{}
 
-G4CoulombBarrier::G4CoulombBarrier(const G4int anA,const G4int aZ)
-  : G4VCoulombBarrier(anA,aZ) {}
+G4CoulombBarrier::G4CoulombBarrier(G4int anA, G4int aZ)
+  : G4VCoulombBarrier(anA,aZ) 
+{}
 
-G4CoulombBarrier::~G4CoulombBarrier() {}
+G4CoulombBarrier::~G4CoulombBarrier() 
+{}
 
-G4CoulombBarrier::G4CoulombBarrier(const G4CoulombBarrier & ) : G4VCoulombBarrier()
+G4double G4CoulombBarrier::BarrierPenetrationFactor(G4double ) const 
 {
-  throw G4HadronicException(__FILE__, __LINE__, "G4CoulombBarrier::copy_constructor meant to not be accessable.");
+  return 1.0;
 }
-
-
-const G4CoulombBarrier & G4CoulombBarrier::operator=(const G4CoulombBarrier & )
-{
-  throw G4HadronicException(__FILE__, __LINE__, "G4CoulombBarrier::operator= meant to not be accessable.");
-  return *this;
-}
-
-G4bool G4CoulombBarrier::operator==(const G4CoulombBarrier & ) const 
-{
-  return false;
-}
-
-G4bool G4CoulombBarrier::operator!=(const G4CoulombBarrier & ) const 
-{
-  return true;
-}
-
-
 
 G4double G4CoulombBarrier::GetCoulombBarrier(const G4int ARes, const G4int ZRes, const G4double) const 
@@ -85,31 +70,27 @@
   } else {
 
-// JMQ: old coulomb barrier commented since it does not agree with Dostrovski's prescription
-// and too low  barriers are obtained (for protons at least)
-// calculation of K penetration factor is correct
-//    G4double CompoundRadius = CalcCompoundRadius(static_cast<G4double>(ZRes));
-//    Barrier = elm_coupling/CompoundRadius * static_cast<G4double>(GetZ())*static_cast<G4double>(ZRes)/
-//      (std::pow(static_cast<G4double>(GetA()),1./3.) + std::pow(static_cast<G4double>(ARes),1./3.));
+    // JMQ: old coulomb barrier commented since it does not agree with Dostrovski's prescription
+    // and too low  barriers are obtained (for protons at least)
+    // calculation of K penetration factor is correct
+    //    G4double CompoundRadius = CalcCompoundRadius(static_cast<G4double>(ZRes));
+    //    Barrier = elm_coupling/CompoundRadius * static_cast<G4double>(GetZ())*static_cast<G4double>(ZRes)/
+    //      (std::pow(static_cast<G4double>(GetA()),1./3.) + std::pow(static_cast<G4double>(ARes),1./3.));
 
-///New coulomb Barrier according to original Dostrovski's paper 
-   G4double rho=1.2*fermi; 
-   if(GetA()==1 && GetZ()==1){  rho=0.0;}  
+    ///New coulomb Barrier according to original Dostrovski's paper 
+    G4double rho=1.2*fermi; 
+    if(GetA()==1 && GetZ()==1){  rho=0.0;}  
 
-   G4double RN=1.5*fermi;  
-Barrier=elm_coupling* static_cast<G4double>(GetZ())*static_cast<G4double>(ZRes)/(RN*std::pow(static_cast<G4double>(ARes),1./3.)+rho);
+    G4double RN=1.5*fermi;  
+    // VI cleanup 
+    Barrier=elm_coupling*(GetZ()*ZRes)/(RN * G4Pow::GetInstance()->Z13(ARes) + rho);
 
     // Barrier penetration coeficient
     G4double K = BarrierPenetrationFactor(ZRes);
 
-
     Barrier *= K;
-//
-
- 	
-
 		
-// JMQ : the following statement has unknown origin and dimensionally is meaningless( energy divided by mass number in argument of sqrt function). Energy dependence of Coulomb barrier penetrability should be included in proper way (if needed..)
-//   Barrier /= (1.0 + std::sqrt(U/(2.0*static_cast<G4double>(ARes))));
-//
+    // JMQ : the following statement has unknown origin and dimensionally is meaningless( energy divided by mass number in argument of sqrt function). Energy dependence of Coulomb barrier penetrability should be included in proper way (if needed..)
+    //   Barrier /= (1.0 + std::sqrt(U/(2.0*static_cast<G4double>(ARes))));
+    //
   }
   return Barrier;
Index: trunk/source/processes/hadronic/models/de_excitation/util/src/G4DeuteronCoulombBarrier.cc
===================================================================
--- trunk/source/processes/hadronic/models/de_excitation/util/src/G4DeuteronCoulombBarrier.cc	(revision 1340)
+++ trunk/source/processes/hadronic/models/de_excitation/util/src/G4DeuteronCoulombBarrier.cc	(revision 1347)
@@ -24,7 +24,6 @@
 // ********************************************************************
 //
-//
-// $Id: G4DeuteronCoulombBarrier.cc,v 1.5 2008/09/19 13:32:54 ahoward Exp $
-// GEANT4 tag $Name: geant4-09-03-ref-09 $
+// $Id: G4DeuteronCoulombBarrier.cc,v 1.6 2010/11/15 12:44:06 vnivanch Exp $
+// GEANT4 tag $Name: geant4-09-04-ref-00 $
 //
 // Hadronic Process: Nuclear De-excitations
@@ -34,28 +33,8 @@
 #include "G4DeuteronCoulombBarrier.hh"
 
-G4DeuteronCoulombBarrier::G4DeuteronCoulombBarrier(const G4DeuteronCoulombBarrier & ) : G4CoulombBarrier()
-{
-    throw G4HadronicException(__FILE__, __LINE__, "G4DeuteronCoulombBarrier::copy_constructor meant to not be accessable.");
-}
+G4DeuteronCoulombBarrier::G4DeuteronCoulombBarrier() : G4CoulombBarrier(2,1) {}
+G4DeuteronCoulombBarrier::~G4DeuteronCoulombBarrier() {}
 
-
-const G4DeuteronCoulombBarrier & G4DeuteronCoulombBarrier::operator=(const G4DeuteronCoulombBarrier & )
-{
-    throw G4HadronicException(__FILE__, __LINE__, "G4DeuteronCoulombBarrier::operator= meant to not be accessable.");
-    return *this;
-}
-
-G4bool G4DeuteronCoulombBarrier::operator==(const G4DeuteronCoulombBarrier & ) const 
-{
-    return false;
-}
-
-G4bool G4DeuteronCoulombBarrier::operator!=(const G4DeuteronCoulombBarrier & ) const 
-{
-    return true;
-}
-
-
-G4double G4DeuteronCoulombBarrier::BarrierPenetrationFactor(const G4double aZ) const
+G4double G4DeuteronCoulombBarrier::BarrierPenetrationFactor(G4double aZ) const
 {
     // Data comes from 
Index: trunk/source/processes/hadronic/models/de_excitation/util/src/G4EvaporationLevelDensityParameter.cc
===================================================================
--- trunk/source/processes/hadronic/models/de_excitation/util/src/G4EvaporationLevelDensityParameter.cc	(revision 1340)
+++ trunk/source/processes/hadronic/models/de_excitation/util/src/G4EvaporationLevelDensityParameter.cc	(revision 1347)
@@ -25,6 +25,6 @@
 //
 //
-// $Id: G4EvaporationLevelDensityParameter.cc,v 1.9 2009/03/04 11:05:02 gcosmo Exp $
-// GEANT4 tag $Name: geant4-09-03-ref-09 $
+// $Id: G4EvaporationLevelDensityParameter.cc,v 1.10 2010/11/15 16:09:46 vnivanch Exp $
+// GEANT4 tag $Name: geant4-09-04-ref-00 $
 //
 // Hadronic Process: Nuclear De-excitations
@@ -42,9 +42,9 @@
 
 //JMQ 17-04-08 these are not used at present in G4Evaporation 
-const G4double G4EvaporationLevelDensityParameter::ConstEvapLevelDensityParameter = 0.125*(1./MeV);
-//const G4double G4EvaporationLevelDensityParameter::ConstEvapLevelDensityParameter= 0.0769231*(1./MeV);
-const G4double G4EvaporationLevelDensityParameter::alpha = 0.072*(1./MeV);
-const G4double G4EvaporationLevelDensityParameter::beta = 0.257*(1./MeV);
-const G4double G4EvaporationLevelDensityParameter::gamma = 0.059*(1./MeV);
+const G4double G4EvaporationLevelDensityParameter::ConstEvapLevelDensityParameter = 0.125/MeV;
+//const G4double G4EvaporationLevelDensityParameter::ConstEvapLevelDensityParameter= 0.0769231/MeV;
+const G4double G4EvaporationLevelDensityParameter::alpha = 0.072/MeV;
+const G4double G4EvaporationLevelDensityParameter::beta = 0.257/MeV;
+const G4double G4EvaporationLevelDensityParameter::gamma = 0.059/MeV;
 const G4double G4EvaporationLevelDensityParameter::Bs = 1.0;
 
@@ -52,37 +52,12 @@
 G4EvaporationLevelDensityParameter::~G4EvaporationLevelDensityParameter() {}
 
-G4EvaporationLevelDensityParameter::
-G4EvaporationLevelDensityParameter(const G4EvaporationLevelDensityParameter &) : G4VLevelDensityParameter()
-{
-    throw G4HadronicException(__FILE__, __LINE__, "G4EvaporationLevelDensityParameter::copy_constructor meant to not be accessable");
-}
-
-
-const G4EvaporationLevelDensityParameter & G4EvaporationLevelDensityParameter::
-operator=(const G4EvaporationLevelDensityParameter &)
-{
-    throw G4HadronicException(__FILE__, __LINE__, "G4EvaporationLevelDensityParameter::operator= meant to not be accessable");
-    return *this;
-}
-
-
-G4bool G4EvaporationLevelDensityParameter::operator==(const G4EvaporationLevelDensityParameter &) const
-{
-    return false;
-}
-
-G4bool G4EvaporationLevelDensityParameter::operator!=(const G4EvaporationLevelDensityParameter &) const
-{
-    return true;
-}
-
-G4double G4EvaporationLevelDensityParameter::LevelDensityParameter(const G4int A,const G4int,
-								   const G4double) const 
+G4double 
+G4EvaporationLevelDensityParameter::LevelDensityParameter(G4int A, G4int, G4double) const 
 //JMQ (Apr .08) this is the method used in G4Evaporation 
 {
 
-//JMQ 25/04/08  a=A/10 according to original Gudima's prescription
- G4double a=static_cast<G4double>(A)/10.;
-    return a;
+  //JMQ 25/04/08  a=A/10 according to original Gudima's prescription
+  G4double a=static_cast<G4double>(A)/10.;
+  return a;
 //
 
Index: trunk/source/processes/hadronic/models/de_excitation/util/src/G4He3CoulombBarrier.cc
===================================================================
--- trunk/source/processes/hadronic/models/de_excitation/util/src/G4He3CoulombBarrier.cc	(revision 1340)
+++ trunk/source/processes/hadronic/models/de_excitation/util/src/G4He3CoulombBarrier.cc	(revision 1347)
@@ -25,6 +25,6 @@
 //
 //
-// $Id: G4He3CoulombBarrier.cc,v 1.5 2008/09/19 13:32:54 ahoward Exp $
-// GEANT4 tag $Name: geant4-09-03-ref-09 $
+// $Id: G4He3CoulombBarrier.cc,v 1.6 2010/11/15 12:44:06 vnivanch Exp $
+// GEANT4 tag $Name: geant4-09-04-ref-00 $
 //
 // Hadronic Process: Nuclear De-excitations
@@ -34,28 +34,8 @@
 #include "G4He3CoulombBarrier.hh"
 
-G4He3CoulombBarrier::G4He3CoulombBarrier(const G4He3CoulombBarrier & ) : G4CoulombBarrier()
-{
-    throw G4HadronicException(__FILE__, __LINE__, "G4He3CoulombBarrier::copy_constructor meant to not be accessable.");
-}
+G4He3CoulombBarrier::G4He3CoulombBarrier() : G4CoulombBarrier(3,2) {}
+G4He3CoulombBarrier::~G4He3CoulombBarrier() {}
 
-
-const G4He3CoulombBarrier & G4He3CoulombBarrier::operator=(const G4He3CoulombBarrier & )
-{
-    throw G4HadronicException(__FILE__, __LINE__, "G4He3CoulombBarrier::operator= meant to not be accessable.");
-    return *this;
-}
-
-G4bool G4He3CoulombBarrier::operator==(const G4He3CoulombBarrier & ) const 
-{
-    return false;
-}
-
-G4bool G4He3CoulombBarrier::operator!=(const G4He3CoulombBarrier & ) const 
-{
-    return true;
-}
-
-
-G4double G4He3CoulombBarrier::BarrierPenetrationFactor(const G4double aZ) const
+G4double G4He3CoulombBarrier::BarrierPenetrationFactor(G4double aZ) const
 {
     // Data comes from 
Index: trunk/source/processes/hadronic/models/de_excitation/util/src/G4NeutronCoulombBarrier.cc
===================================================================
--- trunk/source/processes/hadronic/models/de_excitation/util/src/G4NeutronCoulombBarrier.cc	(revision 1340)
+++ trunk/source/processes/hadronic/models/de_excitation/util/src/G4NeutronCoulombBarrier.cc	(revision 1347)
@@ -25,6 +25,6 @@
 //
 //
-// $Id: G4NeutronCoulombBarrier.cc,v 1.5 2008/09/19 13:32:54 ahoward Exp $
-// GEANT4 tag $Name: geant4-09-03-ref-09 $
+// $Id: G4NeutronCoulombBarrier.cc,v 1.6 2010/11/15 12:44:06 vnivanch Exp $
+// GEANT4 tag $Name: geant4-09-04-ref-00 $
 //
 // Hadronic Process: Nuclear De-excitations
@@ -34,24 +34,6 @@
 #include "G4NeutronCoulombBarrier.hh"
 
-G4NeutronCoulombBarrier::G4NeutronCoulombBarrier(const G4NeutronCoulombBarrier & ) : G4CoulombBarrier()
-{
-    throw G4HadronicException(__FILE__, __LINE__, "G4NeutronCoulombBarrier::copy_constructor meant to not be accessable.");
-}
+G4NeutronCoulombBarrier::G4NeutronCoulombBarrier() : G4CoulombBarrier(1,0) {}
+G4NeutronCoulombBarrier::~G4NeutronCoulombBarrier() {}
 
 
-const G4NeutronCoulombBarrier & G4NeutronCoulombBarrier::operator=(const G4NeutronCoulombBarrier & )
-{
-    throw G4HadronicException(__FILE__, __LINE__, "G4NeutronCoulombBarrier::operator= meant to not be accessable.");
-    return *this;
-}
-
-G4bool G4NeutronCoulombBarrier::operator==(const G4NeutronCoulombBarrier & ) const 
-{
-    return false;
-}
-
-G4bool G4NeutronCoulombBarrier::operator!=(const G4NeutronCoulombBarrier & ) const 
-{
-    return true;
-}
-
Index: trunk/source/processes/hadronic/models/de_excitation/util/src/G4PairingCorrection.cc
===================================================================
--- trunk/source/processes/hadronic/models/de_excitation/util/src/G4PairingCorrection.cc	(revision 1340)
+++ trunk/source/processes/hadronic/models/de_excitation/util/src/G4PairingCorrection.cc	(revision 1347)
@@ -24,7 +24,6 @@
 // ********************************************************************
 //
-//
-// $Id: G4PairingCorrection.cc,v 1.6 2009/11/30 10:33:33 gcosmo Exp $
-// GEANT4 tag $Name: geant4-09-03-ref-09 $
+// $Id: G4PairingCorrection.cc,v 1.8 2010/11/15 12:41:58 vnivanch Exp $
+// GEANT4 tag $Name: geant4-09-04-ref-00 $
 //
 // Hadronic Process: Nuclear De-excitations
@@ -33,5 +32,4 @@
 
 #include "G4PairingCorrection.hh"
-
 
 G4PairingCorrection* G4PairingCorrection::theInstance = 0;
@@ -49,6 +47,36 @@
 G4PairingCorrection* G4PairingCorrection::GetInstance()
 {
-  static G4PairingCorrection theCorrections;
-  if (!theInstance)  { theInstance = &theCorrections; }
+  if (!theInstance)  { 
+    static G4PairingCorrection theCorrections;
+    theInstance = &theCorrections; 
+  }
   return theInstance;
 }   
+
+G4double G4PairingCorrection::GetPairingCorrection(G4int A, G4int Z) const
+{
+  G4double PCorrection = 0.0;
+  G4int N = A - Z;
+  if (theCookPairingCorrections->IsInTableThisN(N) &&
+      theCookPairingCorrections->IsInTableThisZ(Z)) 
+    PCorrection = theCookPairingCorrections->GetParingCorrection(A,Z);
+  else if (theCameronGilbertPairingCorrections->IsInTableThisN(N) &&
+	   theCameronGilbertPairingCorrections->IsInTableThisZ(Z))
+    PCorrection = theCameronGilbertPairingCorrections->GetPairingCorrection(A,Z);
+  else {
+    const G4double PairingConstant = 12.0*MeV;
+    G4double Pair = (1 - Z + 2*(Z/2)) + (1 - N + 2*(N/2));
+    PCorrection = Pair*PairingConstant/std::sqrt(static_cast<G4double>(A));
+  }
+  return std::max(PCorrection,0.0);
+}
+
+
+G4double G4PairingCorrection::GetFissionPairingCorrection(G4int A, G4int Z) const 
+{
+  const G4double PairingConstant = 14.0*MeV;
+  G4int N = A - Z;
+  G4double Pair = (1 - Z + 2*(Z/2)) + (1 - N + 2*(N/2));
+  G4double PCorrection = Pair*PairingConstant/std::sqrt(static_cast<G4double>(A));
+  return PCorrection;
+}
Index: trunk/source/processes/hadronic/models/de_excitation/util/src/G4ProtonCoulombBarrier.cc
===================================================================
--- trunk/source/processes/hadronic/models/de_excitation/util/src/G4ProtonCoulombBarrier.cc	(revision 1340)
+++ trunk/source/processes/hadronic/models/de_excitation/util/src/G4ProtonCoulombBarrier.cc	(revision 1347)
@@ -24,7 +24,6 @@
 // ********************************************************************
 //
-//
-// $Id: G4ProtonCoulombBarrier.cc,v 1.5 2008/09/19 13:32:54 ahoward Exp $
-// GEANT4 tag $Name: geant4-09-03-ref-09 $
+// $Id: G4ProtonCoulombBarrier.cc,v 1.6 2010/11/15 12:44:06 vnivanch Exp $
+// GEANT4 tag $Name: geant4-09-04-ref-00 $
 //
 // Hadronic Process: Nuclear De-excitations
@@ -34,28 +33,11 @@
 #include "G4ProtonCoulombBarrier.hh"
 
-G4ProtonCoulombBarrier::G4ProtonCoulombBarrier(const G4ProtonCoulombBarrier & ) : G4CoulombBarrier()
-{
-    throw G4HadronicException(__FILE__, __LINE__, "G4ProtonCoulombBarrier::copy_constructor meant to not be accessable.");
-}
+G4ProtonCoulombBarrier::G4ProtonCoulombBarrier() : G4CoulombBarrier(1,1) 
+{}
 
+G4ProtonCoulombBarrier::~G4ProtonCoulombBarrier() 
+{}
 
-const G4ProtonCoulombBarrier & G4ProtonCoulombBarrier::operator=(const G4ProtonCoulombBarrier & )
-{
-    throw G4HadronicException(__FILE__, __LINE__, "G4ProtonCoulombBarrier::operator= meant to not be accessable.");
-    return *this;
-}
-
-G4bool G4ProtonCoulombBarrier::operator==(const G4ProtonCoulombBarrier & ) const 
-{
-    return false;
-}
-
-G4bool G4ProtonCoulombBarrier::operator!=(const G4ProtonCoulombBarrier & ) const 
-{
-    return true;
-}
-
-
-G4double G4ProtonCoulombBarrier::BarrierPenetrationFactor(const G4double aZ) const
+G4double G4ProtonCoulombBarrier::BarrierPenetrationFactor(G4double aZ) const
 {
     // Data comes from 
Index: trunk/source/processes/hadronic/models/de_excitation/util/src/G4ShellCorrection.cc
===================================================================
--- trunk/source/processes/hadronic/models/de_excitation/util/src/G4ShellCorrection.cc	(revision 1340)
+++ trunk/source/processes/hadronic/models/de_excitation/util/src/G4ShellCorrection.cc	(revision 1347)
@@ -24,11 +24,10 @@
 // ********************************************************************
 //
-//
-// $Id: G4ShellCorrection.cc,v 1.6 2009/11/30 10:33:33 gcosmo Exp $
-// GEANT4 tag $Name: geant4-09-03-ref-09 $
+// $Id: G4ShellCorrection.cc,v 1.7 2010/11/15 11:47:18 vnivanch Exp $
+// GEANT4 tag $Name: geant4-09-04-ref-00 $
 //
 // Hadronic Process: Nuclear De-excitations
 // by V. Lara
-
+// 
 
 #include "G4ShellCorrection.hh"
@@ -50,6 +49,8 @@
 G4ShellCorrection* G4ShellCorrection::GetInstance()
 {
-  static G4ShellCorrection theCorrections;
-  if (!theInstance)  { theInstance = &theCorrections; }
+  if (!theInstance)  { 
+    static G4ShellCorrection theCorrections;
+    theInstance = &theCorrections; 
+  }
   return theInstance;
 }   
Index: trunk/source/processes/hadronic/models/de_excitation/util/src/G4TritonCoulombBarrier.cc
===================================================================
--- trunk/source/processes/hadronic/models/de_excitation/util/src/G4TritonCoulombBarrier.cc	(revision 1340)
+++ trunk/source/processes/hadronic/models/de_excitation/util/src/G4TritonCoulombBarrier.cc	(revision 1347)
@@ -24,7 +24,6 @@
 // ********************************************************************
 //
-//
-// $Id: G4TritonCoulombBarrier.cc,v 1.5 2008/09/19 13:32:54 ahoward Exp $
-// GEANT4 tag $Name: geant4-09-03-ref-09 $
+// $Id: G4TritonCoulombBarrier.cc,v 1.6 2010/11/15 12:44:06 vnivanch Exp $
+// GEANT4 tag $Name: geant4-09-04-ref-00 $
 //
 // Hadronic Process: Nuclear De-excitations
@@ -34,28 +33,8 @@
 #include "G4TritonCoulombBarrier.hh"
 
-G4TritonCoulombBarrier::G4TritonCoulombBarrier(const G4TritonCoulombBarrier & ) : G4CoulombBarrier()
-{
-    throw G4HadronicException(__FILE__, __LINE__, "G4TritonCoulombBarrier::copy_constructor meant to not be accessable.");
-}
+G4TritonCoulombBarrier::G4TritonCoulombBarrier() : G4CoulombBarrier(3,1) {}
+G4TritonCoulombBarrier::~G4TritonCoulombBarrier() {}
 
-
-const G4TritonCoulombBarrier & G4TritonCoulombBarrier::operator=(const G4TritonCoulombBarrier & )
-{
-    throw G4HadronicException(__FILE__, __LINE__, "G4TritonCoulombBarrier::operator= meant to not be accessable.");
-    return *this;
-}
-
-G4bool G4TritonCoulombBarrier::operator==(const G4TritonCoulombBarrier & ) const 
-{
-    return false;
-}
-
-G4bool G4TritonCoulombBarrier::operator!=(const G4TritonCoulombBarrier & ) const 
-{
-    return true;
-}
-
-
-G4double G4TritonCoulombBarrier::BarrierPenetrationFactor(const G4double aZ) const
+G4double G4TritonCoulombBarrier::BarrierPenetrationFactor(G4double aZ) const
 {
     // Data comes from 
Index: trunk/source/processes/hadronic/models/de_excitation/util/src/G4VEmissionProbability.cc
===================================================================
--- trunk/source/processes/hadronic/models/de_excitation/util/src/G4VEmissionProbability.cc	(revision 1340)
+++ trunk/source/processes/hadronic/models/de_excitation/util/src/G4VEmissionProbability.cc	(revision 1347)
@@ -25,45 +25,24 @@
 //
 //
-// $Id: G4VEmissionProbability.cc,v 1.7 2009/03/04 11:05:02 gcosmo Exp $
-// GEANT4 tag $Name: geant4-09-03-ref-09 $
+// $Id: G4VEmissionProbability.cc,v 1.10 2010/11/15 20:30:26 vnivanch Exp $
+// GEANT4 tag $Name: geant4-09-04-ref-00 $
 //
 // Hadronic Process: Nuclear De-excitations
 // by V. Lara (Oct 1998)
 //
-
+// Modifications:
+// 28.10.2010 V.Ivanchenko defined members in constructor and cleaned up
 
 #include "G4VEmissionProbability.hh"
-#include "G4HadronicException.hh"
 
-
-G4VEmissionProbability::G4VEmissionProbability() {}
-G4VEmissionProbability::~G4VEmissionProbability() {}
-
-
-G4VEmissionProbability::G4VEmissionProbability(const G4VEmissionProbability &)
+G4VEmissionProbability::G4VEmissionProbability():OPTxs(3),useSICB(false) 
 {
-    throw G4HadronicException(__FILE__, __LINE__, "G4VEmissionProbability::copy_constructor meant to not be accessable");
+  fG4pow = G4Pow::GetInstance();
+  fPairCorr = G4PairingCorrection::GetInstance();
+  theEvapLDPptr = new G4EvaporationLevelDensityParameter;
 }
 
-
-const G4VEmissionProbability & G4VEmissionProbability::operator=(const G4VEmissionProbability &)
+G4VEmissionProbability::~G4VEmissionProbability() 
 {
-    throw G4HadronicException(__FILE__, __LINE__, "G4VEmissionProbability::operator= meant to not be accessable");
-    return *this;
+  delete theEvapLDPptr;
 }
-
-
-G4bool G4VEmissionProbability::operator==(const G4VEmissionProbability &) const
-{
-    return false;
-}
-
-G4bool G4VEmissionProbability::operator!=(const G4VEmissionProbability &) const
-{
-    return true;
-}
-
-
-
-
-
