Ignore:
Timestamp:
May 29, 2009, 3:55:14 PM (17 years ago)
Author:
garnier
Message:

file release beta

Location:
trunk/source/geometry/navigation/src
Files:
10 edited

Legend:

Unmodified
Added
Removed
  • trunk/source/geometry/navigation/src/G4BrentLocator.cc

    r985 r1058  
    2424// ********************************************************************
    2525//
    26 // $Id: G4BrentLocator.cc,v 1.4 2008/11/14 18:26:35 gcosmo Exp $
    27 // GEANT4 tag $Name: geant4-09-02-cand-01 $
     26// $Id: G4BrentLocator.cc,v 1.8 2009/05/15 12:55:48 tnikitin Exp $
     27// GEANT4 tag $Name: geant4-09-03-beta-cand-01 $
    2828//
    2929// Class G4BrentLocator implementation
     
    154154  static G4int trigger_substepno_print= warn_substeps - 20 ;
    155155
     156  // Counter for restarting Bintermed
     157  //
     158  G4int restartB = 0;
     159
    156160  //-------------------------------------------------------------------------- 
    157161  //  Algorithm for the case if progress in founding intersection is too slow.
     
    164168  //--------------------------------------------------------------------------
    165169
    166   const G4int param_substeps=100; // Test value for the maximum number
     170  const G4int param_substeps=50; // Test value for the maximum number
    167171                                  // of substeps
    168172  const G4double fraction_done=0.3;
     
    183187  if( (TrialPoint - StartPosition).mag() < tolerance * mm )
    184188  {
    185      G4cerr << "WARNING - G4PropagatorInField::LocateIntersectionPoint()"
     189     G4cerr << "WARNING - G4BrentLocator::EstimateIntersectionPoint()"
    186190            << G4endl
    187191            << "          Intermediate F point is on top of starting point A."
    188192            << G4endl;
    189      G4Exception("G4PropagatorInField::LocateIntersectionPoint()",
     193     G4Exception("G4BrentLocator::EstimateIntersectionPoint()",
    190194                 "IntersectionPointIsAtStart", JustWarning,
    191195                 "Intersection point F is exactly at start point A." );
     
    241245          CurrentB_PointVelocity.GetCurveLength() * (1.0 + tolerance) )
    242246      {
    243         G4cerr << "ERROR - G4PropagatorInField::LocateIntersectionPoint()"
     247        G4cerr << "ERROR - G4BrentLocator::EstimateIntersectionPoint()"
    244248               << G4endl
    245249               << "        Intermediate F point is more advanced than"
    246250               << " endpoint B." << G4endl;
    247         G4Exception("G4PropagatorInField::LocateIntersectionPoint()",
     251        G4Exception("G4BrentLocator::EstimateIntersectionPoint()",
    248252                    "IntermediatePointConfusion", FatalException,
    249253                    "Intermediate F point is past end B point" );
     
    371375            //   E    <- H
    372376            //
    373             CurrentA_PointVelocity = ApproxIntersecPointV;
     377            G4FieldTrack InterMed=ApproxIntersecPointV;
    374378            ApproxIntersecPointV = GetChordFinderFor()->ApproxCurvePointS(
    375379                          CurrentA_PointVelocity,CurrentB_PointVelocity,
    376                           CurrentA_PointVelocity,CurrentE_Point,Point_A,PointH,
     380                          InterMed,CurrentE_Point,CurrentF_Point,PointH,
    377381                          false,GetEpsilonStepFor());
     382            CurrentA_PointVelocity = InterMed;
    378383            CurrentE_Point = PointH;
    379384          }
     
    419424                CurrentB_PointVelocity = CurveEndPointVelocity;
    420425                SubStart_PointVelocity = CurrentA_PointVelocity;
     426                ApproxIntersecPointV = GetChordFinderFor()
     427                               ->ApproxCurvePointV( CurrentA_PointVelocity,
     428                                                    CurrentB_PointVelocity,
     429                                                    CurrentE_Point,
     430                                                    GetEpsilonStepFor());
     431
    421432                restoredFullEndpoint = true;
     433                restartB++; // counter
    422434              }
    423435              else
     
    428440                CurrentB_PointVelocity =  *ptrInterMedFT[depth];
    429441                SubStart_PointVelocity = CurrentA_PointVelocity;
     442                ApproxIntersecPointV = GetChordFinderFor()
     443                               ->ApproxCurvePointV( CurrentA_PointVelocity,
     444                                                    CurrentB_PointVelocity,
     445                                                    CurrentE_Point,
     446                                                    GetEpsilonStepFor());
    430447                restoredFullEndpoint = true;
     448                restartB++; // counter
    431449              }
    432450            }
     
    467485        if( curveDist < 0.0 )
    468486        {
    469           G4cerr << "ERROR - G4PropagatorInField::LocateIntersectionPoint()"
     487          G4cerr << "ERROR - G4BrentLocator::EstimateIntersectionPoint()"
    470488                 << G4endl
    471489                 << "        Error in advancing propagation." << G4endl;
     
    488506          }
    489507          G4cerr.precision(20);
    490           G4cerr << " Point A (Curve start)   is " << CurveStartPointVelocity
    491                  << G4endl;
    492           G4cerr << " Point B (Curve   end)   is " << CurveEndPointVelocity
    493                  << G4endl;
    494           G4cerr << " Point A (Current start) is " << CurrentA_PointVelocity
    495                  << G4endl;
    496           G4cerr << " Point B (Current end)   is " << CurrentB_PointVelocity
    497                  << G4endl;
    498           G4cerr << " Point S (Sub start)     is " << SubStart_PointVelocity
    499                  << G4endl;
    500           G4cerr << " Point E (Trial Point)   is " << CurrentE_Point
    501                  << G4endl;
    502           G4cerr << " Point F (Intersection)  is " << ApproxIntersecPointV
     508          G4cerr << " Point A (Curve start)     is " << CurveStartPointVelocity
     509                 << G4endl;
     510          G4cerr << " Point B (Curve   end)     is " << CurveEndPointVelocity
     511                 << G4endl;
     512          G4cerr << " Point A (Current start)   is " << CurrentA_PointVelocity
     513                 << G4endl;
     514          G4cerr << " Point B (Current end)     is " << CurrentB_PointVelocity
     515                 << G4endl;
     516          G4cerr << " Point S (Sub start)       is " << SubStart_PointVelocity
     517                 << G4endl;
     518          G4cerr << " Point E (Trial Point)     is " << CurrentE_Point
     519                 << G4endl;
     520          G4cerr << " Old Point F(Intersection) is " << CurrentF_Point
     521                 << G4endl;
     522          G4cerr << " New Point F(Intersection) is " << ApproxIntersecPointV
    503523                 << G4endl;
    504524          G4cerr << "        LocateIntersection parameters are : Substep no= "
     
    506526          G4cerr << "        Substep depth no= "<< substep_no_p  << " Depth= "
    507527                 << depth << G4endl;
    508 
    509           G4Exception("G4PropagatorInField::LocateIntersectionPoint()",
     528          G4cerr << "        Restarted no= "<< restartB  << " Epsilon= "
     529                 << GetEpsilonStepFor() <<" DeltaInters= "
     530                 << GetDeltaIntersectionFor() << G4endl;
     531
     532          G4Exception("G4BrentLocator::EstimateIntersectionPoint()",
    510533                      "FatalError", FatalException,
    511534                      "Error in advancing propagation.");
     
    524547      {
    525548        G4cout << "Difficulty in converging in "
    526                << "G4PropagatorInField::LocateIntersectionPoint():"
     549               << "G4BrentLocator::EstimateIntersectionPoint()"
    527550               << G4endl
    528551               << "    Substep no = " << substep_no << G4endl;
     
    679702      && !found_approximate_intersection )
    680703  {
    681     G4cerr << "WARNING - G4PropagatorInField::LocateIntersectionPoint()"
     704    G4cerr << "WARNING - G4BrentLocator::EstimateIntersectionPoint()"
    682705           << G4endl
    683706           << "          Convergence is requiring too many substeps: "
     
    686709    G4cerr << "          Information on start & current step follows in cout."
    687710           << G4endl;
    688     G4cout << "WARNING - G4PropagatorInField::LocateIntersectionPoint()"
     711    G4cout << "WARNING - G4BrentLocator::EstimateIntersectionPoint()"
    689712           << G4endl
    690713           << "          Convergence is requiring too many substeps: "
     
    708731    G4double done_len = CurrentA_PointVelocity.GetCurveLength();
    709732    G4double full_len = CurveEndPointVelocity.GetCurveLength();
    710     G4cout << "ERROR - G4PropagatorInField::LocateIntersectionPoint()"
     733    G4cout << "ERROR - G4BrentLocator::EstimateIntersectionPoint()"
    711734           << G4endl
    712735           << "        Undertaken only length: " << done_len
     
    714737    G4cout << "        Remaining length = " << full_len - done_len << G4endl;
    715738
    716     G4Exception("G4PropagatorInField::LocateIntersectionPoint()",
     739    G4Exception("G4BrentLocator::EstimateIntersectionPoint()",
    717740                "UnableToLocateIntersection", FatalException,
    718741                "Too many substeps while trying to locate intersection.");
     
    721744  { 
    722745    G4int oldprc= G4cout.precision( 10 );
    723     G4cout << "WARNING - G4PropagatorInField::LocateIntersectionPoint()"
     746    G4cout << "WARNING - G4BrentLocator::EstimateIntersectionPoint()"
    724747           << G4endl
    725748           << "          Undertaken length: " 
     
    728751           << "          Warning level = " << warn_substeps
    729752           << " and maximum substeps = " << max_substeps << G4endl;
    730     G4Exception("G4PropagatorInField::LocateIntersectionPoint()",
     753    G4Exception("G4BrentLocator::EstimateIntersectionPoint()",
    731754                "DifficultyToLocateIntersection", JustWarning,
    732755                "Many substeps while trying to locate intersection.");
  • trunk/source/geometry/navigation/src/G4DrawVoxels.cc

    r921 r1058  
    2626//
    2727// $Id: G4DrawVoxels.cc,v 1.4 2006/06/29 18:36:34 gunter Exp $
    28 // GEANT4 tag $Name: geant4-09-02-cand-01 $
     28// GEANT4 tag $Name: geant4-09-03-beta-cand-01 $
    2929//
    3030//
  • trunk/source/geometry/navigation/src/G4MultiLevelLocator.cc

    r985 r1058  
    2424// ********************************************************************
    2525//
    26 // $Id: G4MultiLevelLocator.cc,v 1.4 2008/11/14 18:26:35 gcosmo Exp $
    27 // GEANT4 tag $Name: geant4-09-02-cand-01 $
    28 //
    29 // Class G4BrentLocator implementation
     26// $Id: G4MultiLevelLocator.cc,v 1.5 2008/12/11 10:01:02 tnikitin Exp $
     27// GEANT4 tag $Name: geant4-09-03-beta-cand-01 $
     28//
     29// Class G4MultiLevelLocator implementation
    3030//
    3131// 27.10.08 - Tatiana Nikitina.
     
    160160  if( (TrialPoint - StartPosition).mag() < tolerance * mm )
    161161  {
    162      G4cerr << "WARNING - G4PropagatorInField::LocateIntersectionPoint()"
     162     G4cerr << "WARNING - G4MultiLevelLocator::EstimateIntersectionPoint()"
    163163            << G4endl
    164164            << "          Intermediate F point is on top of starting point A."
    165165            << G4endl;
    166      G4Exception("G4PropagatorInField::LocateIntersectionPoint()",
     166     G4Exception("G4MultiLevelLocator::EstimateIntersectionPoint()",
    167167                 "IntersectionPointIsAtStart", JustWarning,
    168168                 "Intersection point F is exactly at start point A." );
     
    216216          CurrentB_PointVelocity.GetCurveLength() * (1.0 + tolerance) )
    217217      {
    218         G4cerr << "ERROR - G4PropagatorInField::LocateIntersectionPoint()"
     218        G4cerr << "ERROR - G4MultiLevelLocator::EstimateIntersectionPoint()"
    219219               << G4endl
    220220               << "        Intermediate F point is more advanced than"
    221221               << " endpoint B." << G4endl;
    222         G4Exception("G4PropagatorInField::LocateIntersectionPoint()",
     222        G4Exception("G4multiLevelLocator::EstimateIntersectionPoint()",
    223223                    "IntermediatePointConfusion", FatalException,
    224224                    "Intermediate F point is past end B point" );
     
    435435        if( curveDist < 0.0 )
    436436        {
    437           G4cerr << "ERROR - G4PropagatorInField::LocateIntersectionPoint()"
     437          G4cerr << "ERROR - G4MultiLevelLocator::EstimateIntersectionPoint()"
    438438                 << G4endl
    439439                 << "        Error in advancing propagation." << G4endl;
     
    475475                 << depth << G4endl;
    476476
    477           G4Exception("G4PropagatorInField::LocateIntersectionPoint()",
     477          G4Exception("G4MultiLevelLocator::EstimateIntersectionPoint()",
    478478                      "FatalError", FatalException,
    479479                      "Error in advancing propagation.");
     
    491491      {
    492492        G4cout << "Difficulty in converging in "
    493                << "G4PropagatorInField::LocateIntersectionPoint():"
     493               << "G4MultiLevelLocator::EstimateIntersectionPoint():"
    494494               << G4endl
    495495               << "    Substep no = " << substep_no << G4endl;
     
    643643      && !found_approximate_intersection )
    644644  {
    645     G4cerr << "WARNING - G4PropagatorInField::LocateIntersectionPoint()"
     645    G4cerr << "WARNING - G4MultiLevelLocator::EstimateIntersectionPoint()"
    646646           << G4endl
    647647           << "          Convergence is requiring too many substeps: "
     
    650650    G4cerr << "          Information on start & current step follows in cout."
    651651           << G4endl;
    652     G4cout << "WARNING - G4PropagatorInField::LocateIntersectionPoint()"
     652    G4cout << "WARNING - G4MultiLevelLocator::EstimateIntersectionPoint()"
    653653           << G4endl
    654654           << "          Convergence is requiring too many substeps: "
     
    680680      IntersectedOrRecalculatedFT = CurrentA_PointVelocity;
    681681
    682       G4cout << "WARNING - G4PropagatorInField::LocateIntersectionPoint()"
     682      G4cout << "WARNING - G4MultiLevelLocator::EstimateIntersectionPoint()"
    683683             << G4endl
    684684             << "          Did not convergence after " << substep_no
     
    694694    G4double done_len = CurrentA_PointVelocity.GetCurveLength();
    695695    G4double full_len = CurveEndPointVelocity.GetCurveLength();
    696     G4cout << "ERROR - G4PropagatorInField::LocateIntersectionPoint()"
     696    G4cout << "ERROR - G4MultiLevelLocator::EstimateIntersectionPoint()"
    697697           << G4endl
    698698           << "        Undertaken only length: " << done_len
     
    700700    G4cout << "        Remaining length = " << full_len - done_len << G4endl;
    701701
    702     G4Exception("G4PropagatorInField::LocateIntersectionPoint()",
     702    G4Exception("G4MultiLevelLocator::EstimateIntersectionPoint()",
    703703                "UnableToLocateIntersection", FatalException,
    704704                "Too many substeps while trying to locate intersection.");
     
    707707  { 
    708708    G4int oldprc= G4cout.precision( 10 );
    709     G4cout << "WARNING - G4PropagatorInField::LocateIntersectionPoint()"
     709    G4cout << "WARNING - G4MultiLevelLocator::EstimateIntersectionPoint()"
    710710           << G4endl
    711711           << "          Undertaken length: " 
     
    714714           << "          Warning level = " << warn_substeps
    715715           << " and maximum substeps = " << max_substeps << G4endl;
    716     G4Exception("G4PropagatorInField::LocateIntersectionPoint()",
     716    G4Exception("G4MultiLevelLocator::EstimateIntersectionPoint()",
    717717                "DifficultyToLocateIntersection", JustWarning,
    718718                "Many substeps while trying to locate intersection.");
  • trunk/source/geometry/navigation/src/G4Navigator.cc

    r921 r1058  
    2525//
    2626//
    27 // $Id: G4Navigator.cc,v 1.38 2008/10/24 14:00:03 gcosmo Exp $
     27// $Id: G4Navigator.cc,v 1.39 2009/05/08 06:47:32 tnikitin Exp $
    2828// GEANT4 tag $ Name:  $
    2929//
     
    10181018      if( mRot )
    10191019      {
    1020         fGrandMotherExitNormal *= (*mRot);
     1020        fGrandMotherExitNormal *= (*mRot).inverse();
    10211021      }
    10221022    }
  • trunk/source/geometry/navigation/src/G4PathFinder.cc

    r921 r1058  
    2525//
    2626//
    27 // $Id: G4PathFinder.cc,v 1.61 2008/11/13 12:59:26 gcosmo Exp $
     27// $Id: G4PathFinder.cc,v 1.62 2009/05/13 23:20:54 japost Exp $
    2828// GEANT4 tag $ Name:  $
    2929//
     
    10521052    G4double step= fCurrentStepSize[num];
    10531053
    1054     limitedStep = ( step == fMinStep ) && ( step != kInfinity);
    1055    
     1054    limitedStep = ( std::fabs(step - fMinStep) < kCarTolerance )
     1055                 && ( step != kInfinity);
     1056
    10561057    fLimitTruth[ num ] = limitedStep;
    10571058    if( limitedStep )
  • trunk/source/geometry/navigation/src/G4PhantomParameterisation.cc

    r831 r1058  
    2525//
    2626//
    27 // $Id: G4PhantomParameterisation.cc,v 1.4 2008/01/22 15:02:36 gcosmo Exp $
     27// $Id: G4PhantomParameterisation.cc,v 1.6 2009/05/20 08:27:10 gcosmo Exp $
    2828// GEANT4 tag $ Name:$
    2929//
     
    7777}
    7878
     79//------------------------------------------------------------------
     80void G4PhantomParameterisation::
     81BuildContainerSolid( G4VSolid *pMotherSolid )
     82{
     83  fContainerSolid = pMotherSolid;
     84  fContainerWallX = fNoVoxelX * fVoxelHalfX;
     85  fContainerWallY = fNoVoxelY * fVoxelHalfY;
     86  fContainerWallZ = fNoVoxelZ * fVoxelHalfZ;
     87
     88  // CheckVoxelsFillContainer();
     89}
     90
    7991
    8092//------------------------------------------------------------------
     
    134146  CheckCopyNo( copyNo );
    135147
     148  if( !fMaterialIndices ) { return 0; }
    136149  return *(fMaterialIndices+copyNo);
    137150}
  • trunk/source/geometry/navigation/src/G4PropagatorInField.cc

    r921 r1058  
    4848#include "G4VCurvedTrajectoryFilter.hh"
    4949#include "G4ChordFinder.hh"
    50 #include "G4BrentLocator.hh"
     50#include "G4MultiLevelLocator.hh"
    5151
    5252///////////////////////////////////////////////////////////////////////////
     
    8686  // Definding Intersection Locator and his parameters
    8787  if(vLocator==0){
    88     fIntersectionLocator= new G4BrentLocator(theNavigator);
     88    fIntersectionLocator= new G4MultiLevelLocator(theNavigator);
    8989    fAllocatedLocator=true;
    9090  }else{
  • trunk/source/geometry/navigation/src/G4RegularNavigation.cc

    r831 r1058  
    2525//
    2626//
    27 // $Id: G4RegularNavigation.cc,v 1.7 2007/12/10 16:30:01 gunter Exp $
     27// $Id: G4RegularNavigation.cc,v 1.9 2009/01/27 09:31:29 gcosmo Exp $
    2828// GEANT4 tag $ Name:$
    2929//
     
    4141#include "G4Navigator.hh"
    4242#include "G4GeometryTolerance.hh"
     43#include "G4RegularNavigationHelper.hh"
    4344
    4445//------------------------------------------------------------------
     
    134135                                G4VPhysicalVolume* pCurrentPhysical)
    135136{
     137  G4RegularNavigationHelper::ClearStepLengths();
     138
    136139  G4PhantomParameterisation *param =
    137140    (G4PhantomParameterisation*)(pCurrentPhysical->GetParameterisation());
    138141
    139   if( !param->SkipEqualMaterials() ) {
     142  if( !param->SkipEqualMaterials() )
     143  {
    140144    return fnormalNav->ComputeStep(localPoint,
    141                                    localDirection,
    142                                    currentProposedStepLength,
    143                                    newSafety,
    144                                    history,
    145                                    validExitNormal,
    146                                    exitNormal,
    147                                    exiting,
    148                                    entering,
    149                                    pBlockedPhysical,
    150                                    blockedReplicaNo);
     145                                   localDirection,
     146                                   currentProposedStepLength,
     147                                   newSafety,
     148                                   history,
     149                                   validExitNormal,
     150                                   exitNormal,
     151                                   exiting,
     152                                   entering,
     153                                   pBlockedPhysical,
     154                                   blockedReplicaNo);
    151155  }
    152156
     
    198202  {
    199203    newStep = voxelBox->DistanceToOut( localPoint, localDirection );
     204
    200205    if( (bFirstStep) && (newStep < currentProposedStepLength) )
    201206    {
     
    214219      return currentProposedStepLength;
    215220    }
     221    if(totalNewStep > currentProposedStepLength)
     222    {
     223      G4RegularNavigationHelper::
     224        AddStepLength(copyNo, newStep-totalNewStep+currentProposedStepLength);
     225      return currentProposedStepLength;
     226    }
     227    else
     228    {
     229      G4RegularNavigationHelper::AddStepLength( copyNo, newStep );
     230    }
     231
    216232
    217233    // Move container point until wall of voxel
     
    229245    G4ThreeVector voxelTranslation = param->GetTranslation( copyNo );
    230246
     247    //    G4cout << " copyNo " << copyNo << " = " << pCurrentPhysical->GetCopyNo() << G4endl;
    231248    // Move local point until wall of voxel and then put it in the new voxel
    232249    // local coordinates
  • trunk/source/geometry/navigation/src/G4SimpleLocator.cc

    r985 r1058  
    2424// ********************************************************************
    2525//
    26 // $Id: G4SimpleLocator.cc,v 1.4 2008/11/14 18:26:35 gcosmo Exp $
    27 // GEANT4 tag $Name: geant4-09-02-cand-01 $
     26// $Id: G4SimpleLocator.cc,v 1.5 2008/12/11 10:27:58 tnikitin Exp $
     27// GEANT4 tag $Name: geant4-09-03-beta-cand-01 $
    2828//
    2929// Class G4SimpleLocator implementation
     
    121121  if( (TrialPoint - StartPosition).mag() < tolerance * mm )
    122122  {
    123      G4cerr << "WARNING - G4PropagatorInField::LocateIntersectionPoint()"
     123     G4cerr << "WARNING - G4SimpleLocator::EstimateIntersectionPoint()"
    124124            << G4endl
    125125            << "          Intermediate F point is on top of starting point A."
    126126            << G4endl;
    127      G4Exception("G4PropagatorInField::LocateIntersectionPoint()",
     127     G4Exception("G4SimpleLocator::EstimateIntersectionPoint()",
    128128                 "IntersectionPointIsAtStart", JustWarning,
    129129                 "Intersection point F is exactly at start point A." );
     
    150150         CurrentB_PointVelocity.GetCurveLength() * (1.0 + tolerance) )
    151151     {
    152        G4cerr << "ERROR - G4PropagatorInField::LocateIntersectionPoint()"
     152       G4cerr << "ERROR - G4SimpleLocator::EstimateIntersectionPoint()"
    153153              << G4endl
    154154              << "        Intermediate F point is more advanced than"
    155155              << " endpoint B." << G4endl;
    156        G4Exception("G4PropagatorInField::LocateIntersectionPoint()",
     156       G4Exception("G4SimpleLocator::EstimateIntersectionPoint()",
    157157                   "IntermediatePointConfusion", FatalException,
    158158                   "Intermediate F point is past end B point" );
     
    338338       if( curveDist < 0.0 )
    339339       {
    340          G4cerr << "ERROR - G4PropagatorInField::LocateIntersectionPoint()"
     340         G4cerr << "ERROR - G4SimpleLocator::EstimateIntersectionPoint()"
    341341                << G4endl
    342342                << "        Error in advancing propagation." << G4endl;
     
    374374                << substep_no << G4endl;
    375375
    376          G4Exception("G4PropagatorInField::LocateIntersectionPoint()",
     376         G4Exception("G4SimpleLocator::EstimateIntersectionPoint()",
    377377                     "FatalError", FatalException,
    378378                     "Error in advancing propagation.");
     
    391391     {
    392392       G4cout << "Difficulty in converging in "
    393               << "G4PropagatorInField::LocateIntersectionPoint():"
     393              << "G4SimpleLocator::EstimateIntersectionPoint():"
    394394              << G4endl
    395395              << "    Substep no = " << substep_no << G4endl;
     
    426426      && !found_approximate_intersection )
    427427  {
    428     G4cerr << "WARNING - G4PropagatorInField::LocateIntersectionPoint()"
     428    G4cerr << "WARNING - G4SimpleLocator::EstimateIntersectionPoint()"
    429429           << G4endl
    430430           << "          Convergence is requiring too many substeps: "
     
    433433    G4cerr << "          Information on start & current step follows in cout."
    434434           << G4endl;
    435     G4cout << "WARNING - G4PropagatorInField::LocateIntersectionPoint()"
     435    G4cout << "WARNING - G4SimpleLocator::EstimateIntersectionPoint()"
    436436           << G4endl
    437437           << "          Convergence is requiring too many substeps: "
     
    455455    G4double done_len = CurrentA_PointVelocity.GetCurveLength();
    456456    G4double full_len = CurveEndPointVelocity.GetCurveLength();
    457     G4cout << "ERROR - G4PropagatorInField::LocateIntersectionPoint()"
     457    G4cout << "ERROR - G4SimpleLocator::EstimateIntersectionPoint()"
    458458           << G4endl
    459459           << "        Undertaken only length: " << done_len
     
    461461    G4cout << "        Remaining length = " << full_len - done_len << G4endl;
    462462
    463     G4Exception("G4PropagatorInField::LocateIntersectionPoint()",
     463    G4Exception("G4SimpleLocator::EstimateIntersectionPoint()",
    464464                "UnableToLocateIntersection", FatalException,
    465465                "Too many substeps while trying to locate intersection.");
     
    468468  { 
    469469    G4int oldprc= G4cout.precision( 10 );
    470     G4cout << "WARNING - G4PropagatorInField::LocateIntersectionPoint()"
     470    G4cout << "WARNING - G4SimpleLocator::EstimateIntersectionPoint()"
    471471           << G4endl
    472472           << "          Undertaken length: " 
     
    475475           << "          Warning level = " << warn_substeps
    476476           << " and maximum substeps = " << max_substeps << G4endl;
    477     G4Exception("G4PropagatorInField::LocateIntersectionPoint()",
     477    G4Exception("G4SimpleLocator::EstimateIntersectionPoint()",
    478478                "DifficultyToLocateIntersection", JustWarning,
    479479                "Many substeps while trying to locate intersection.");
  • trunk/source/geometry/navigation/src/G4VIntersectionLocator.cc

    r985 r1058  
    2424// ********************************************************************
    2525//
    26 // $Id: G4VIntersectionLocator.cc,v 1.4 2008/11/14 18:26:35 gcosmo Exp $
    27 // GEANT4 tag $Name: geant4-09-02-cand-01 $
     26// $Id: G4VIntersectionLocator.cc,v 1.5 2009/05/15 12:58:23 tnikitin Exp $
     27// GEANT4 tag $Name: geant4-09-03-beta-cand-01 $
    2828//
    2929// Class G4VIntersectionLocator implementation
     
    342342  //
    343343  G4double n_d_m = Normal.dot(MomentumDir);
    344   if ( std::abs(n_d_m)<kCarTolerance )
     344  if ( std::abs(n_d_m)>kCarTolerance )
    345345  {
    346346    if ( fVerboseLevel>1 )
Note: See TracChangeset for help on using the changeset viewer.