|Author||Mohamed E. Krar (DrKrar@gmail.com)|
GeoEfficiency: Accurate Geometrical Efficiency Calculator
An officially registered Julia program, provides a set of tools to calculate the geometrical efficiency in a fast and accurate way. The Package models a radiation detector irradiated by a radioactive source. The Package relay directly on numerical evaluation of a closed form analytical formula describing the geometrical efficiency.
The following list describe the state of current feature and planed feature. The checked items represent already present feature.
support of widely used detector geometries.
support of specialized detector geometries.
support of isotropic radioactive sources.
support of anisotropic radioactive sources.
consider more details of the measurement setup.
- the detector effect.
- the end cap effect.
- the medium and absorber effect.
combine the effect of the source geometry and composition.
- Julia 1.5 or above.
- QuadGK 2.4 or above, installed automatically during the package installation.
Getting the GeoEfficiency package to work involves two steps:
1. Installing Julia Language
Just head over to the Julia language download page and choose the suitable binary for your platform to download and install. At the end of this step you should be able to run julia from your system.
2. Installing Package
GeoEfficiency is registered officially and so the latest stable release can be installed through the Julia package management system just by typing the following into the julia REPL prompt.
julia> import Pkg julia> Pkg.add("GeoEfficiency")
After installing the package, you can load it to your current workspace by typing the following:
julia> using GeoEfficiency
Now the package is available to use, try typing:
Being error free and accuracy is a highly demanded objective in scientific calculation. Thus, the package is extensively tested method-wise in each supported operating system. Operating system fully supported includes Windows, Linus, Apple OSX.
After installing, the package can be tested in your own system by typing the following into the REPL prompt.
julia> using Test, Pkg julia> Pkg.test("GeoEfficiency")
The following constructor can be used to construct a specific type of detector
CylDetectorfor cylindrical detector,
BoreDetectorfor bore hole,
WellDetectorfor well type detector.
While the function
Detector can be used to construct any of the above types. You may try also
Point constructor is used to construct an anchoring point of a source. relative to source anchoring point the source position is specified.
For a point source, the anchoring point is the source itself.
source() method take input from the
console and return a tuple describing the source.
The efficiency calculation can be done by one of the functions:
geoEffused with or without argument(s),
calcask for the required information from the
calcNjust a repeat of the
batch()which try to take required information from csv files located in the home directory inside a folder called
For more on the function and its methods prefix the name of the function by
Input from the
console can be numerical expression not just a number.
sin(1)^2All are valid expressions.
The package can be used to perform batch calculations by calling one of the
methods of the function
batch. The output results of batch calculations is
found by default in
GeoEfficiency\results folder inside the user home directory.
batch() can be called with or without arrangement(s).
The without argument version relay on previously prepared Comma Saved Values
[CSV] files, that can be easily edit by Microsoft Excel, located by default
Those Comma Saved Values [CSV] files are:-
Detectors.csvcontains the detectors description (
a detector per line); The line format is:
Crystal_Radius Crystal_Length Hole_Radius Hole_Depth
srcHeights.csvcontains the source heights;
srcRhos.csvcontains the source off-axis distances;
srcRadii.csvcontains the source radii for disc and cylindrical sources;
srcLengths.csvcontains the source length for cylindrical sources;
For Comma Saved Values [CSV] files each line represent an entry, the first line is always treated as the header.
The program expect each line to contain one number for all CSV files except for
Detectors.csv each line should contain at least one number or at most four separated numbers.