Message: Re: Wrap a process? Not Logged In (login)
 Next-in-Thread Next-in-Thread
 Next-in-Forum Next-in-Forum

Idea Re: Wrap a process? 

Forum: Physics List
Re: None Warp a process? (Tom Roberts)
Date: 09 Aug, 2011
From: Tom Roberts <Tom Roberts>

I realized that the problem was due to multiple processes being ordered with ordDefault and/or ordLast. So I found that if I fix the ordering of all processes then I can add my re-weighted process and remove the original, and the re-weighted one is in the same place as the original. This way any required ordering among the processes is preserved. As this code executes well after the physics list is instantiated and the G4RunManager is initialized, fixing the process ordering should be OK. Here's the code (inserted at the top of wrapProcess())

        // fix the positions of all processes
        for(int i=idxAtRest; i<=idxPostStep; ++i) {
                G4ProcessVector *pv = pmgr->GetProcessVector(
                                        (G4ProcessVectorDoItIndex)i,typeDoIt);
                for(int k=1; k<pv->size(); ++k) { // 0 is Transportation
                        pmgr->SetProcessOrdering((*pv)[k],
                                        (G4ProcessVectorDoItIndex)i,k);
                }
        }

 Add Message Add Message
to: "Re: Wrap a process?"

 Subscribe Subscribe

This site runs SLAC HyperNews version 1.11-slac-98, derived from the original HyperNews


[ Geant 4 Home | Geant 4 HyperNews | Search | Request New Forum | Feedback ]