|Message: Re: Problem with very small stepsize caused by transportation process?||Not Logged In (login)|
Click on the Forum title, e.g. on the "Forums by Category" page, to read a sequence of postings to the Forum and its threads all in one page. If you are only interested in one thread or the thread following a specific posting, click the thread or the posting, which takes you to a smaller page, which contains only the part you are interested in and may be easier to navigate.
Messages are "chained" if there are only replies at the first level, i.e. 1/1.html, 1/1/1.html etc. In case of "chained" messages the message number is replaced by the icon and there is no indentation.
Inline: Display the subject line only or also the text of the posting(s); for the choice "All" the "Outline" choices are switched off.
|1||0||1||no text / full text of posting|
|2||1||All||text for level 1 only / text for All postings|
Outline: Choose the depth of the posting thread, successive toggle controls provide increasing detail.
|1||2||1||2 levels / 1 level (original posting)|
|2||3||2||3 levels / 2 levels|
|3||3||All||3 levels / all levels (all postings)|
[ I started writing this before you last posting - but I have now read it.]
Your problem is unusual, and could suggest a difficulty in the Navigator or in your setup. My first suggestion would be to run overlap checking. Since you report doing this already, I will provide a different suggestion. [ However, if you can try to check for overlaps a second time, using a different method, it could help too. ]
Could you please see whether you can reproduce the problem when locating a point by yourself with just the Navigator.
From your output I see that the difficulty is at
Position - x (mm) : -89.70796591921498 Position - y (mm) : -63.48666293803226 Position - z (mm) : -285.232
Can you call the Navigator at this point, (you can get its pointer from the G4TransportationManager), using LocateGlobalPointAndSetup ? I suggest to call it repeatedly and compare its output.
Then add the direction, which from your print out appears to be Momentum Direct - x : -0.9805329125797901 Momentum Direct - y : 0.1807490143955495 Momentum Direct - z : -0.07671376110471373
From the values of the position, it is my guess that there is a boundary exactly at this z value: Position - z (mm) : -285.232 Can you confirm whether the point is at a boundary of one of the TrdLayer volumes at this point ?
If so, it would be very useful to create a custom sub-class of G4SteppingVerbose that prints out the copy number of the current TrdLayer (and potentially the parent volume's copy number as well.) This way we can check whether it is confused by bouncing between different copies at their interface.
After this, please try to call the Navigator's ComputeStep method yourself. If it returns zero, you are seeing the same problem.
I suggest to repeat Locate( point, direction, ... step= ComputeStep( point, direction, ... point += step * direction; a few more times (say 20 times in a loop) to confirm that the problem is with Navigation, not the field.
The code for propagating in a magnetic field should take care for difficult cases, where it can be unclear what volume a track is actually crossing. In this case, though, it appears that it is the Navigator which is having difficulties.
I noted that you said that "" a particle should never really enter a "TrdLayer" volume explicitly because the daughter volume "TrdRadiator" in each "TrdModule" fills the upper part of the layer completely. ""
This seems to indicate that it is experiencing significant difficult at this level. What type of volume is a 'TrdModule'? A box, a tubs, or other ?? Also what is the TrdRadiator ?
|Inline Depth:||Outline Depth:||Add message:|