Problem 1455

Summary: charge of track lost in SurfTrajState constructor
Product: Examples/Extended Reporter: janstar1122
Component: errorpropagationAssignee: Pedro.Arce
Status: RESOLVED FIXED    
Severity: major    
Priority: P5    
Version: 9.6   
Hardware: All   
OS: All   

Description janstar1122 2013-03-07 22:28:16 CET
This constructor is missing call to
  BuildCharge();
and fCharge is left at 0.0 no matter what is the true charge of the particle.
The consequence is incorrect computation of transfM by BuildErrorMatrix( ...)

One should inspect other constructors of this class as well

Jan

---------
G4ErrorSurfaceTrajState::
G4ErrorSurfaceTrajState( G4ErrorFreeTrajState& tpSC, const G4Vector3D& vecU,
                         const G4Vector3D& vecV )
  : G4ErrorTrajState( tpSC.GetParticleType(), tpSC.GetPosition(),
                      tpSC.GetMomentum() )
{
  fTrajParam = G4ErrorSurfaceTrajParam( fPosition, fMomentum, vecU, vecV );
  theTSType = G4eTS_OS;
  //----- Get the error matrix in SC coordinates
  BuildErrorMatrix( tpSC, vecU, vecV );
}