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 ); }