mirror of
https://github.com/gwm17/catima.git
synced 2024-11-22 10:18:50 -05:00
docs rearranged
This commit is contained in:
parent
06c8bf36ac
commit
0a8578a4f8
|
@ -5,7 +5,7 @@ project(catima)
|
|||
option(BUILD_SHARED_LIBS "build as shared library" ON)
|
||||
option(PYTHON_MODULE "compile the Catima python module(requires numpy and cython installed)" OFF)
|
||||
option(TESTS "build tests" OFF)
|
||||
option(EXAMPLES "build examples" ON)
|
||||
option(EXAMPLES "build examples" OFF)
|
||||
option(APPS "build catima applications" ON)
|
||||
option(GLOBAL "build with global, sources are required" OFF)
|
||||
option(REACTIONS "enable/disable nuclear reaction rate" ON)
|
||||
|
@ -14,7 +14,6 @@ option(GSL_INTEGRATION "use GSL integration" OFF)
|
|||
option(GSL_INTERPOLATION "use GSL inteRPOLATION" OFF)
|
||||
option(THIN_TARGET_APPROXIMATION "thin target approximation" ON)
|
||||
option(GENERATE_DATA "make data tables generator" OFF)
|
||||
option(DOCS "build documentation (requires doxygen)" OFF)
|
||||
|
||||
######## build type ############
|
||||
if(NOT CMAKE_BUILD_TYPE STREQUAL "Debug")
|
||||
|
@ -83,7 +82,7 @@ set_target_properties(catima PROPERTIES
|
|||
|
||||
target_link_libraries(catima ${EXTRA_LIBS})
|
||||
|
||||
target_include_directories(catima
|
||||
target_include_directories(catima
|
||||
PUBLIC $<BUILD_INTERFACE:${PROJECT_BINARY_DIR}/include>
|
||||
$<BUILD_INTERFACE:${GSL_INCLUDE_DIRS}>
|
||||
)
|
||||
|
@ -92,7 +91,7 @@ add_library(catima::catima ALIAS catima)
|
|||
|
||||
FILE(COPY ${HEADERS} DESTINATION ${PROJECT_BINARY_DIR}/include/catima)
|
||||
|
||||
# the compiler used for C++ files
|
||||
# the compiler used for C++ files
|
||||
MESSAGE( STATUS "CMAKE_CXX_COMPILER: " ${CMAKE_CXX_COMPILER} )
|
||||
|
||||
######## for python module
|
||||
|
@ -102,7 +101,7 @@ if(PYTHONINTERP_FOUND)
|
|||
endif()
|
||||
if(PYTHON_MODULE)
|
||||
if(NOT PYTHONINTERP_FOUND)
|
||||
MESSAGE(SEND_ERROR "Python is required to build nurex python modules")
|
||||
MESSAGE(SEND_ERROR "Python is required to build nurex python modules")
|
||||
endif(NOT PYTHONINTERP_FOUND)
|
||||
find_package(pybind11 REQUIRED)
|
||||
set(PYBIND11_CPP_STANDARD -std=c++14)
|
||||
|
@ -133,7 +132,7 @@ add_executable(generate_ls_coeff utils/generator.cpp)
|
|||
target_link_libraries(generate_ls_coeff catima)
|
||||
#add_custom_command(
|
||||
# OUTPUT ${CMAKE_CURRENT_BINARY_DIR/include/generated_LS_coeff.h}
|
||||
# COMMAND
|
||||
# COMMAND
|
||||
#)
|
||||
endif(GENERATE_DATA)
|
||||
|
||||
|
@ -141,8 +140,8 @@ endif(GENERATE_DATA)
|
|||
if(DOCS)
|
||||
find_package(Doxygen REQUIRED)
|
||||
if(DOXYGEN_FOUND)
|
||||
configure_file(${CMAKE_CURRENT_SOURCE_DIR}/doxygen.in ${CMAKE_CURRENT_BINARY_DIR}/Doxyfile @ONLY)
|
||||
add_custom_target(docs
|
||||
configure_file(${CMAKE_CURRENT_SOURCE_DIR}/docs/doxygen.in ${CMAKE_CURRENT_BINARY_DIR}/Doxyfile @ONLY)
|
||||
add_custom_target(docs
|
||||
COMMAND ${DOXYGEN_EXECUTABLE} ${CMAKE_CURRENT_BINARY_DIR}/Doxyfile COMMENT "Generating API documentation with Doxygen" VERBATIM )
|
||||
endif(DOXYGEN_FOUND)
|
||||
endif(DOCS)
|
||||
|
@ -159,14 +158,14 @@ install (TARGETS catima
|
|||
EXPORT catimaConfig
|
||||
LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
|
||||
ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR})
|
||||
|
||||
|
||||
install (FILES ${headers} DESTINATION include/catima)
|
||||
|
||||
install(EXPORT catimaConfig
|
||||
NAMESPACE catima::
|
||||
DESTINATION lib/cmake/catima
|
||||
)
|
||||
|
||||
|
||||
export(TARGETS catima NAMESPACE catima:: FILE catimaConfig.cmake)
|
||||
export(PACKAGE catima)
|
||||
|
||||
|
|
25
README.md
25
README.md
|
@ -7,7 +7,7 @@ C++ library for caclulalaton of energy loss, range, angular scattering and time
|
|||
The library is based on physics used in the ATIMA code,however its not 100% copy of ATIMA physics.
|
||||
see CREDITS for more details.
|
||||
|
||||
The WebAtima UI to this library can be found here:
|
||||
The WebAtima UI to this library can be found here:
|
||||
* https://web-docs.gsi.de/~aprochaz/webatima (only inside GSI)
|
||||
* https://isotopea.com/webatima
|
||||
|
||||
|
@ -22,6 +22,15 @@ CMake is used to build the library. For default build use:
|
|||
> make
|
||||
```
|
||||
|
||||
after the compilation the libraries and headers must be either installed system-wide by make install or PATH and LD_LIBRARY_PATH must be adjusted to point to headers and library files.
|
||||
The default install path can be change, ie: cmake -DCMAKE_INSTALL_PREFIX=/opt/catima
|
||||
|
||||
the option to system-wide installation is to adjust library path and include paths.
|
||||
This can be done sourcing the init.sh file, which is generated in the build directory:
|
||||
```
|
||||
> source init.sh
|
||||
```
|
||||
|
||||
cmake options
|
||||
-------------
|
||||
compile options, enable or disable with cmake:
|
||||
|
@ -30,21 +39,15 @@ compile options, enable or disable with cmake:
|
|||
available options:
|
||||
* BUILD_SHARED_LIBS - if ON shared library is build, otherwise static
|
||||
* PYTHON_MODULE - enable/disable building of the python bindigs, pybind11 is required to build the catima python module, default OFF
|
||||
* TESTS - build tests
|
||||
* EXAMPLES - build examples
|
||||
* APPS - build command line app, default ON
|
||||
* TESTS - build tests, default OFF
|
||||
* EXAMPLES - build examples, default OFF
|
||||
* DOCS - prepare doxygen documentation (after cmake, __make docs__ needs to be executed)
|
||||
* GENERATE_DATA - makes program to re-generate precalculated tables (ie precalculated LS coefficients), default:OFF
|
||||
* THIN_TARGET_APPROXIMATION - compile the library with thin target approximation, default: ON
|
||||
* GSL_INTEGRATION - use GSL integration functions, otherwise use built-in integrator, default: OFF
|
||||
* GLOBAL - compile with GLOBAL code (source not included at the moment, needs to be manually added to __global__ directory, default:OFF)
|
||||
* STORE_SPLINES - store splines in cache, if disabled datapoints are stored and splines are recreated, default ON
|
||||
|
||||
ie:
|
||||
> cmake -DPYTHON_MODULE=ON -DEXAMPLES=ON ../
|
||||
|
||||
|
||||
after the compilation the libraries and headers must be either installed system-wide by make install or PATH and LD_LIBRARY_PATH must be adjusted to point to headers and library files.
|
||||
The default install path can be change, ie: cmake -DCMAKE_INSTALL_PREFIX=/opt/catima
|
||||
|
||||
the option to system-wide installation is to adjust library path and include paths.
|
||||
This can be done sourcing the init.sh file, which is generated in the build directory:
|
||||
> source init.sh
|
||||
|
|
21
docs/Doxyfile
Normal file
21
docs/Doxyfile
Normal file
|
@ -0,0 +1,21 @@
|
|||
PROJECT_NAME = catima
|
||||
INPUT = ../.
|
||||
RECURSIVE = NO
|
||||
|
||||
GENERATE_HTML = NO
|
||||
GENERATE_LATEX = NO
|
||||
GENERATE_XML = YES
|
||||
XML_OUTPUT = build/doxygenxml
|
||||
XML_PROGRAMLISTING = YES
|
||||
|
||||
MACRO_EXPANSION = YES
|
||||
EXPAND_ONLY_PREDEF = YES
|
||||
|
||||
ALIASES = "rst=\verbatim embed:rst"
|
||||
ALIASES += "endrst=\endverbatim"
|
||||
|
||||
QUIET = YES
|
||||
WARNINGS = YES
|
||||
WARN_IF_UNDOCUMENTED = NO
|
||||
JAVADOC_AUTOBRIEF = NO
|
||||
|
23
docs/Makefile
Normal file
23
docs/Makefile
Normal file
|
@ -0,0 +1,23 @@
|
|||
# Minimal makefile for Sphinx documentation
|
||||
#
|
||||
|
||||
# You can set these variables from the command line, and also
|
||||
# from the environment for the first two.
|
||||
SPHINXOPTS ?=
|
||||
SPHINXBUILD ?= sphinx-build
|
||||
SOURCEDIR = ./
|
||||
BUILDDIR = build
|
||||
|
||||
# Put it first so that "make" without argument is like "make help".
|
||||
help:
|
||||
@$(SPHINXBUILD) -M help "$(SOURCEDIR)" "$(BUILDDIR)" $(SPHINXOPTS) $(O)
|
||||
|
||||
.PHONY: help Makefile doxy
|
||||
|
||||
# Catch-all target: route all unknown targets to Sphinx using the new
|
||||
# "make mode" option. $(O) is meant as a shortcut for $(SPHINXOPTS).
|
||||
%: Makefile doxy
|
||||
@$(SPHINXBUILD) -M $@ "$(SOURCEDIR)" "$(BUILDDIR)" $(SPHINXOPTS) $(O)
|
||||
|
||||
doxy:
|
||||
doxygen
|
52
docs/README.md
Normal file
52
docs/README.md
Normal file
|
@ -0,0 +1,52 @@
|
|||
CATima
|
||||
=======
|
||||
C++ library for caclulalaton of energy loss, range, angular scattering and time of flight of the particle passing through matter.
|
||||
The library is based on physics used in the ATIMA code,however its not 100% copy of ATIMA physics.
|
||||
see CREDITS for more details.
|
||||
|
||||
The WebAtima UI to this library can be found here:
|
||||
* https://web-docs.gsi.de/~aprochaz/webatima (only inside GSI)
|
||||
* https://isotopea.com/webatima
|
||||
|
||||
Installation
|
||||
------------
|
||||
CMake is used to build the library. For default build use:
|
||||
|
||||
```
|
||||
> mkdir build
|
||||
> cd build
|
||||
> cmake ../
|
||||
> make
|
||||
```
|
||||
|
||||
after the compilation the libraries and headers must be either installed system-wide by make install or PATH and LD_LIBRARY_PATH must be adjusted to point to headers and library files.
|
||||
The default install path can be change, ie: cmake -DCMAKE_INSTALL_PREFIX=/opt/catima
|
||||
|
||||
Alternative to the system-wide installation is to adjust library path and include paths.
|
||||
This can be done sourcing the init.sh file, which is generated in the build directory:
|
||||
```
|
||||
source init.sh
|
||||
```
|
||||
|
||||
|
||||
cmake options
|
||||
-------------
|
||||
compile options, enable or disable with cmake:
|
||||
> cmake ../ -D[OPTION]
|
||||
|
||||
available options:
|
||||
* BUILD_SHARED_LIBS - if ON shared library is build, otherwise static
|
||||
* PYTHON_MODULE - enable/disable building of the python bindigs, pybind11 is required to build the catima python module, default OFF
|
||||
* APPS - build command line app, default ON
|
||||
* TESTS - build tests, default OFF
|
||||
* EXAMPLES - build examples, default OFF
|
||||
* DOCS - prepare doxygen documentation (after cmake, __make docs__ needs to be executed)
|
||||
* GENERATE_DATA - makes program to re-generate precalculated tables (ie precalculated LS coefficients), default:OFF
|
||||
* THIN_TARGET_APPROXIMATION - compile the library with thin target approximation, default: ON
|
||||
* GSL_INTEGRATION - use GSL integration functions, otherwise use built-in integrator, default: OFF
|
||||
* GLOBAL - compile with GLOBAL code (source not included at the moment, needs to be manually added to __global__ directory, default:OFF)
|
||||
* STORE_SPLINES - store splines in cache, if disabled datapoints are stored and splines are recreated, default ON
|
||||
|
||||
ie:
|
||||
> cmake -DPYTHON_MODULE=ON -DEXAMPLES=ON ../
|
||||
|
56
docs/conf.py
Normal file
56
docs/conf.py
Normal file
|
@ -0,0 +1,56 @@
|
|||
# Configuration file for the Sphinx documentation builder.
|
||||
#
|
||||
# This file only contains a selection of the most common options. For a full
|
||||
# list see the documentation:
|
||||
# https://www.sphinx-doc.org/en/master/usage/configuration.html
|
||||
|
||||
# -- Path setup --------------------------------------------------------------
|
||||
|
||||
# If extensions (or modules to document with autodoc) are in another directory,
|
||||
# add these directories to sys.path here. If the directory is relative to the
|
||||
# documentation root, use os.path.abspath to make it absolute, like shown here.
|
||||
#
|
||||
# import os
|
||||
# import sys
|
||||
# sys.path.insert(0, os.path.abspath('.'))
|
||||
|
||||
|
||||
# -- Project information -----------------------------------------------------
|
||||
|
||||
project = 'Catima'
|
||||
copyright = '2017, A. Prochazka'
|
||||
author = 'A. Prochazka'
|
||||
|
||||
|
||||
# -- General configuration ---------------------------------------------------
|
||||
|
||||
extensions = [
|
||||
'recommonmark',
|
||||
'breathe'
|
||||
]
|
||||
|
||||
breathe_projects = {'nurex':'build/doxygenxml/'}
|
||||
breathe_default_project = 'catima'
|
||||
breathe_domain_by_extenstion = {'h':'cpp'}
|
||||
primary_domain = 'cpp'
|
||||
highlight_language = 'cpp'
|
||||
# Add any paths that contain templates here, relative to this directory.
|
||||
templates_path = ['_templates']
|
||||
|
||||
# List of patterns, relative to source directory, that match files and
|
||||
# directories to ignore when looking for source files.
|
||||
# This pattern also affects html_static_path and html_extra_path.
|
||||
exclude_patterns = []
|
||||
|
||||
|
||||
# -- Options for HTML output -------------------------------------------------
|
||||
|
||||
# The theme to use for HTML and HTML Help pages. See the documentation for
|
||||
# a list of builtin themes.
|
||||
#
|
||||
html_theme = 'sphinx_rtd_theme'
|
||||
|
||||
# Add any paths that contain custom static files (such as style sheets) here,
|
||||
# relative to this directory. They are copied after the builtin static files,
|
||||
# so a file named "default.css" will overwrite the builtin "default.css".
|
||||
html_static_path = ['_static']
|
26
docs/index.rst
Normal file
26
docs/index.rst
Normal file
|
@ -0,0 +1,26 @@
|
|||
Catima's documentation
|
||||
======================
|
||||
C++ library for caclulalaton of energy loss, range, angular scattering and time of flight of the particle passing through matter.
|
||||
The library is based on physics used in the ATIMA code,however its not 100% copy of ATIMA physics.
|
||||
see CREDITS for more details.
|
||||
|
||||
The WebAtima UI to this library can be found here:
|
||||
* https://isotopea.com/webatima
|
||||
|
||||
|
||||
Content
|
||||
-------
|
||||
|
||||
.. toctree::
|
||||
:maxdepth: 1
|
||||
:caption: Installation
|
||||
|
||||
README
|
||||
|
||||
|
||||
Indices and tables
|
||||
==================
|
||||
|
||||
* :ref:`genindex`
|
||||
* :ref:`modindex`
|
||||
* :ref:`search`
|
2428
doxygen.in
2428
doxygen.in
File diff suppressed because it is too large
Load Diff
Loading…
Reference in New Issue
Block a user