wiki:GuarDyan_features

Version 28 (modified by dieda, 7 years ago) ( diff )

--

GUARDYAN Basic Features

Software and Hardware Environment

A code written in CUDA/C++ is basically separated responsible for reading cross section data from the input, the second for host side tasks, the third part is the GPU kernel which runs the simulation. Currently the host side code consists of cca. 65000 lines and the device side code consists of cca. 5000 lines.

Dependencies: CUDA: 8.0, NVIDIA driver: 375.66, GCC: 5.4.0, Qt: 5.5.1

Hardware: 2 x Geforce GTX 690, 4 x Geforce GTX 1080

Geometry descriptors

In order to run simulations on a real reactor geometry we need to create the tools for defining geometry. Similarly to other particle transport codes (Serpent, MCNP, OpenMC) in GUARDYAN geomety is defined by cells containing isotopes. Cells are defined by bounding surfaces. These data can be given in xml files.

Surfaces

In the current version general positioned sphere, plane, cone, torus and infinite cylinder are supported in special cases according to Table 1. More surface types are added in later releases.

$ \quad \quad \quad  \quad \quad \quad S(x,y,z)          \\ 
px \quad \quad \   x-x_0           \\ 
py \quad \quad \   y-y_0           \\ 
pz \quad \quad \   z-z_0           \\ 
p  \quad \quad \ \   Ax+By+Cz-D      \\ 
cx \quad \quad \  y^2+z^2-r^2     \\ 
cy \quad \quad \  x^2+z^2-r^2     \\ 
cz \quad \quad \  x^2+y^2-r^2    \\ 
c/x \quad \quad (y-y_0)^2+(z-z_0)^2-r^2   \\ 
c/y \quad \quad (x-x_0)^2+(z-z_0)^2-r^2   \\ 
c/z \quad \quad (x-x_0)^2+(y-y_0)^2-r^2   \\ 
so  \quad \quad \ \  x^2+y^2+z^2-r^2                    \\ 
sx  \quad \quad \ (x-x_0)^2+y^2+z^2-r^2                    \\ 
sy  \quad \quad \ x^2+(y-y_0)^2+z^2-r^2                    \\ 
sz  \quad \quad \ x^2+y^2+(z-z_0)^2-r^2                    \\ 
s   \quad \quad \ \ (x-x_0)^2+(y-y_0)^2+(z-z_0)^2-r^2 \\ 
sq  \quad \quad  A(x-x_0)^2+B(y-y_0)^2+C(z-z_0)^2+2D(x-x_0)+2E(y-y_0)+2F(z-z_0)+G  \\ 
kx  \quad \quad   \sqrt{y^2+z^2}-t(x-x_0)  \\ 
ky  \quad \quad   \sqrt{x^2+z^2}-t(y-y_0) \\ 
kz  \quad \quad   \sqrt{x^2+y^2}-t(z-z_0) \\ 
k/x \quad \quad    \sqrt{(y-y_0)^2+(z-z_0)^2}-t(x-x_0)  \\ 
k/y \quad \quad   \sqrt{(x-x_0)^2+(z-z_0)^2}-t(y-y_0) \\ 
k/z \quad \quad    \sqrt{(x-x_0)^2+(y-y_0)^2}-t(z-z_0) \\               
tx  \quad \quad \  \frac{(x-x_0)^2}{B^2}+\frac{\left( \sqrt{(y-y_0)^2+(z-z_0)^2} - A \right) ^2}{C^2} -1  \\ 
ty  \quad \quad \  \frac{(y-y_0)^2}{B^2}+\frac{\left( \sqrt{(x-x_0)^2+(z-z_0)^2} - A \right) ^2}{C^2} -1                  \\ 
tz  \quad \quad \   \frac{(z-z_0)^2}{B^2}+\frac{\left( \sqrt{(x-x_0)^2+(y-y_0)^2} - A \right) ^2}{C^2} -1                   \\ $  

Table 1. Surfaces available GUARDYAN

Cells

Cells may be defined as an intersection or union of spaces divided by surfaces. Cells may be filled into either rectangular or hexagonal lattices.

Fig. 1. Fuel rods in a hexagonal lattice

Isotopes and Cross Sections

Cells are considered homogeneous and filled with a single material defined by the isotopes, their relative abundance and material density. Cross sections are read from ACE format files.

Fig. 2. Cross section of U-235 as read by GUARDYAN

In current implementation GUARDYAN stores the energy partitioning structure separately for every isotope. To find the cross section of a neutron with given energy GUARDYAN useS binary search and linear interpolation.

GUARDYAN createS materials from isotopes using the fraction of the constituent in the material and the material density. Before the simulation GUARDYAN generates the total macroscopic cross sections and the majorant cross sections for the Woodcock method for every material.

Memory Use of Cross Section Data

Considering the most important isotopes in a e.g. VVER-440 reactor with fresh fuel: 1H, 2H, 4He,10B, 11B 16O, 17O, 90Zr, 91Zr, 92Zr, 94Zr, 96Zr, 93Nb, 152Gd, 154Gd, 155Gd, 156Gd, 157Gd, 158Gd, 160Gd,174 Hf, 176Hf, 177Hf, 178Hf, 179Hf, 180Hf,235 U, 238U, with 8 different materials defined to store the cross section data for a given temperature 102,4 MB memory is needed on the GPU. For a realistic VVER-440 power plant with full detailed modelling the cross section date reaches 5Gb in memory need. The videocards available at our institute contain 2 (GTX 690) or 8 (GTX 1080) GB memory each for realistic simulations therefore modern videocards offer enough physical memory. This latter example is considered as extreme in memory need.

Project Participants & Contacts

Dr. David Legrady http://www.reak.bme.hu/munkatarsak/dr-legrady-david.html Project Leader

Gabor Tolnai Programming

Balazs Molnar Methodological Development

Publications

D Legrady, B Molnar, M Klausz, T Major: Woodcock tracking with arbitrary sampling cross section using negative weights, ANNALS OF NUCLEAR ENERGY 102: pp. 116-123. http://www.sciencedirect.com/science/article/pii/S0306454916303498?via%3Dihub

Funding

This work has been carried out in the frame of VKSZ 14-1-2015-0021 Hungarian project 260 supported by the National Research, Development and Innovation Fund

next: Physics Modeling

Attachments (10)

Download all attachments as: .zip

Note: See TracWiki for help on using the wiki.