Ignore:
Timestamp:
Dec 22, 2010, 3:52:27 PM (14 years ago)
Author:
garnier
Message:

geant4 tag 9.4

Location:
trunk/source/processes/hadronic/models/qmd/src
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • trunk/source/processes/hadronic/models/qmd/src/G4QMDMeanField.cc

    r962 r1347  
    392392      G4ThreeVector ri = system->GetParticipant( i )->GetPosition(); 
    393393      G4LorentzVector p4i = system->GetParticipant( i )->Get4Momentum(); 
    394      
     394
    395395      G4ThreeVector betai = p4i.v()/p4i.e();
    396396     
    397       ffr[i] = betai;
     397//    R-JQMD
     398      G4double Vi = GetPotential( i );
     399      G4double p_zero = std::sqrt( p4i.e()*p4i.e() + 2*p4i.m()*Vi);
     400      G4ThreeVector betai_R = p4i.v()/p_zero;
     401      G4double mi_R = p4i.m()/p_zero;
     402//
     403      ffr[i] = betai_R;
    398404      ffp[i] = G4ThreeVector( 0.0 );
     405
     406      if ( false )
     407      {
     408         ffr[i] = betai;
     409         mi_R = 1.0;
     410      }
    399411
    400412      for ( G4int j = 0 ; j < system->GetTotalNumberOfParticipant() ; j ++ )
     
    417429                           * ( 1. - 2. * std::abs( jcharge - icharge ) )
    418430                       + cl * rhc[j][i];
     431         ccpp *= mi_R;
    419432
    420433/*
     
    435448
    436449
    437            G4ThreeVector rij = ri - rj;   
    438            G4ThreeVector betaij =  ( p4i + p4j ).v()/eij;   
    439 
    440            G4ThreeVector cij = betaij - betai;   
    441 
    442            ffr[i] = ffr[i] + 2*ccrr* ( rij + grbb*cij );
     450         G4ThreeVector rij = ri - rj;   
     451         G4ThreeVector betaij =  ( p4i + p4j ).v()/eij;   
     452
     453         G4ThreeVector cij = betaij - betai;   
     454
     455         ffr[i] = ffr[i] + 2*ccrr* ( rij + grbb*cij );
    443456           
    444            ffp[i] = ffp[i] - 2*ccpp* ( rij + grbb*betaij );
     457         ffp[i] = ffp[i] - 2*ccpp* ( rij + grbb*betaij );
    445458
    446459      }
     
    450463   //std::cout << "gradu 1 " << ffr[1] << " " << ffp[1] << std::endl;
    451464
     465}
     466
     467
     468
     469G4double G4QMDMeanField::GetPotential( G4int i )
     470{
     471   G4int n = system->GetTotalNumberOfParticipant();
     472
     473   G4double rhoa = 0.0;
     474   G4double rho3 = 0.0;
     475   G4double rhos = 0.0;
     476   G4double rhoc = 0.0;
     477
     478
     479   G4int icharge = system->GetParticipant(i)->GetChargeInUnitOfEplus();
     480   G4int inuc = system->GetParticipant(i)->GetNuc();
     481
     482   for ( G4int j = 0 ; j < n ; j ++ )
     483   {
     484      G4int jcharge = system->GetParticipant(j)->GetChargeInUnitOfEplus();
     485      G4int jnuc = system->GetParticipant(j)->GetNuc();
     486
     487      rhoa += rha[j][i];
     488      rhoc += rhe[j][i];
     489      rhos += rha[j][i] * jnuc * inuc
     490                * ( 1 - 2 * std::abs ( jcharge - icharge ) );
     491   }
     492
     493   rho3 = std::pow ( rhoa , gamm );
     494
     495   G4double potential = c0 * rhoa
     496                      + c3 * rho3
     497                      + cs * rhos
     498                      + cl * rhoc;
     499
     500   return potential;
    452501}
    453502
  • trunk/source/processes/hadronic/models/qmd/src/G4QMDReaction.cc

    r1228 r1347  
    4343G4QMDReaction::G4QMDReaction()
    4444: system ( NULL )
    45 , deltaT ( 1 ) // in fsec
     45, deltaT ( 1 ) // in fsec (c=1)
    4646, maxTime ( 100 ) // will have maxTime-th time step
     47, envelopF ( 1.05 ) // 10% for Peripheral reactions
    4748, gem ( true )
    4849, frag ( false )
     
    155156
    156157// impact parameter
    157       G4double bmax = 1.05*(bmax_0/fermi);  // 10% for Peripheral reactions
     158      //G4double bmax = 1.05*(bmax_0/fermi);  // 10% for Peripheral reactions
     159      G4double bmax = envelopF*(bmax_0/fermi);
    158160      G4double b = bmax * std::sqrt ( G4UniformRand() );
    159161//071112
Note: See TracChangeset for help on using the changeset viewer.