ENDF (ACE) Cross-sections?

Hi all,
I've noticed there are a few PhDs on this board whose experience I'd like to leverage. For my masters thesis I am writing a monte carlo transport code from scratch. The end goal of this work is to examine the feasibility of porting the code to a GPGPUs. I chose to write the code from scratch because to effectively do my work I would have to fully understand all aspects of the MC code, something I know I couldnt manage with something like MCNP. I have one more problem to solve before I can consider myself to have a functioning code: cross-sections.

When attacking these cross-sections, I would like to have a true point-wise cross-section set, including anisotropic scattering. Is this a reasonable goal? I have been studying the ENDF and MCNP manuals, trying to decipher the ACE format code, but it seems like an implementation of such would be a thesis in itself.

There are simplifying assumptions I could make (ignore anisotropic scattering, use group cross-sections as opposed to point-wise, or simply just use 1-group cross-sects), but in order to fully understand possible speedups a GPGPU could provide I should at least have a more accurate set of calculations that need to be performed.

Any suggestions? Thanks in advance all.
p.s. I think the BEST solution would be if there was a library out there to do this for me (I am writing in C/C++ btw), not sure I know of one on the RSICC, or even sourceforge for that matter.


Science Advisor
Gold Member
The new versions of SCALE use point-wise continuous energy cross sections contained in the ENDFB/VI and VII libraries. They use a fortran program called AMPX-2000 to process their working libraries. There's a short paper on it here: http://nsdl.org/resource/2200/20061005035357508T [Broken]

P.S., let me know if you are successful in your research! I would love to run monte carlo problems on my home computer with its powerful video card compared to my slow office machine :D
Last edited by a moderator:
Thanks for the info. I read that paper you linked to, AMPX isnt a data access code though is it? It sort of works more like NJOY (but in a way that scale wants) as far as I can tell. Is that the case?


My name is Ayi, I'm INDONESIAN

I'm NJOY user, I'm new user, I have some questions about NJOY
I would like to ask about an ace format generated by NJOY99...please
give me information about how to check the ace format from NJOY99
wheather it's already
correct or not?because i've tried to run the ace output but the MNCP didn't work correctly...

i'm studing Njoy99 but i don't known how run njoy99
cau you help me?

The Physics Forums Way

We Value Quality
• Topics based on mainstream science
• Proper English grammar and spelling
We Value Civility
• Positive and compassionate attitudes
• Patience while debating
We Value Productivity
• Disciplined to remain on-topic
• Recognition of own weaknesses
• Solo and co-op problem solving