Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Develop alternatives for cases with low efficiency resampling #35

Open
erelson opened this issue Jan 25, 2013 · 4 comments
Open

Develop alternatives for cases with low efficiency resampling #35

erelson opened this issue Jan 25, 2013 · 4 comments

Comments

@erelson
Copy link
Contributor

erelson commented Jan 25, 2013

Void rejection can currently be done by resampling within the the selected voxel until a non-void point is chosen. This is prone to low efficiency with voxels containing a sliver of non-void.

(See previous notes in #13, #19, #20)

Relevant ideas/thoughts from @gonuke::

What could be most valuable, is to know which DAGMCNP cells are in each voxel. For the source sampling phase, this may be more important than the material volume fractions since it can limit the number of very expensive point-in-volume tests you need to do.

Another little implementation details is that it might be best to check the implicit complement last, as it is often the most complicated, and often void. It might be possible to check all the NON-implicit complement first and then deem it in the implicit complement if not in the others - and never actually test the implicit complement....

and

For example, if we measure the rejection efficiency to be too low, instead of sampling uniformly in 3D, we could sample uniformly in 2D on one voxel face, and fire a ray to measure the non-void length(s) in the voxel, and sample within the non-void length of that ray. (hmmm - that's not quite a fair game.... but something like that.)

@erelson
Copy link
Contributor Author

erelson commented Feb 5, 2013

The alternate solution to this efficiency problem may be to do the various work that needs to be done to propagate void fraction information throughout the workflow. This would allow a fair game while doing resampling of the entire problem (instead of voxel resampling).

@gonuke
Copy link
Member

gonuke commented Feb 8, 2013

I am not sure it is useful enough to know void fraction - we need to know where the void is and avoid sampling that space inefficiently.

If we knew all the cells that were involved in a mesh voxel, we could start to think about sampling within some bounding boxes that enclosed those cells to improve efficiency, or other ides..

@erelson
Copy link
Contributor Author

erelson commented Feb 8, 2013

Has anything previously been done with identifying the cells that are within a voxel? Would this identification probably be done concurrently with the mmgrid raytracing?

@gonuke
Copy link
Member

gonuke commented Feb 8, 2013

Yes to mmgrid. Basically, it would be about tallying the cell number as well as (instead of) the material number during the mmgrid process.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants