Problem 1919

Summary: Lab and target rest frames in G4ParticleHPCaptureFS::ApplyYourself()
Product: Geant4 Reporter: Artem Zontikov <zontikov.a>
Component: processes/hadronic/models/neutron_hpAssignee: dennis.herbert.wright
Status: RESOLVED FIXED    
Severity: trivial CC: dennis.herbert.wright
Priority: P4    
Version: 10.2   
Hardware: All   
OS: All   

Description Artem Zontikov 2016-11-24 21:14:03 CET
1. Here
http://www-geant4.kek.jp/lxr/source/processes/hadronic/models/particle_hp/src/G4ParticleHPCaptureFS.cc#L78
theNeutron.Lorentz(theNeutron, -1*theTarget);
Obviously, it should be
theNeutron.Lorentz(theNeutron, theTarget);

2. The same thing here
http://www-geant4.kek.jp/lxr/source/processes/hadronic/models/particle_hp/src/G4ParticleHPCaptureFS.cc#L182
thePhotons->operator[](i)->Lorentz(*(thePhotons->operator[](i)), theTarget);
should be put as
thePhotons->operator[](i)->Lorentz(*(thePhotons->operator[](i)), -1*theTarget);

Also, here
http://www-geant4.kek.jp/lxr/source/processes/hadronic/models/particle_hp/src/G4ParticleHPCaptureFS.cc#L75
theTarget.SetDefinition( G4IonTable::GetIonTable()->GetIon( G4int(theBaseZ), G4int(theBaseA) , 0.0 ) );
sets target kinetic energy to zero. It is better to use SetDefinitionAndUpdateE()-method instead.
Comment 1 dennis.herbert.wright 2018-10-22 03:00:38 CEST
Bug fixed as prescribed.