diff --git a/AMDiS/HOWTO_cmake.html b/AMDiS/HOWTO_cmake.html
index d99790a9c9124a69d1eb8657afca8bffe56a6ed5..94fbdcafcdaeaed8989cf4295154dc5960b141ee 100644
--- a/AMDiS/HOWTO_cmake.html
+++ b/AMDiS/HOWTO_cmake.html
@@ -8,7 +8,7 @@
Using AMDiS with cmake
With this short page, I will show you, how to use the cmake buildsystem with AMDiS. The introduction consists of two main parts:
-
+
- compiling and installing AMDiS with CMake
- using the cmake installed AMDiS in your project
- some frequently asked questions
@@ -37,7 +37,7 @@ cd ${HOME}/work/amdis_build
The simplest configuration of AMDiS, i.e. without umfpack and parallelization, only sets the install destination to the directory "${HOME}/programs/". To do this, you have to call cmake with your install destination and the AMDiS source directory as commandline arguments
cmake -DCMAKE_INSTALL_PREFIX=${HOME}/programs/ ../amdis/AMDiS
-
+
Compilation and installation is the same as with automake/autoconf:
make && make install
@@ -80,7 +80,7 @@ and we have to tell cmake, that we need the library amdis and each library amdis
target_link_libraries(fooProg ${AMDIS_LIBRARIES})
-If cmake does not find AMDiS, you have to set the variable AMDIS_DIR to the directory containing the file AMDiSConfig.cmake. This file resides in
+If cmake does not find AMDiS, you have to set the variable AMDIS_DIR to the directory containing the file AMDiSConfig.cmake. This file resides in
${CMAKE_INSTALL_PREFIX}/share/amdis/
diff --git a/AMDiS/cmake/CompilerTest.cmake b/AMDiS/cmake/CompilerTest.cmake
index ec87e38df52c2986014c45a2ea8a7fde44bb651a..02275e0a7d0d56ec751371b1dd4716df341922e0 100644
--- a/AMDiS/cmake/CompilerTest.cmake
+++ b/AMDiS/cmake/CompilerTest.cmake
@@ -1,6 +1,6 @@
set(COMPILER_TEST_DIR ${CMAKE_BINARY_DIR}/CMakeFiles/compilerTest)
-file(WRITE ${COMPILER_TEST_DIR}/CMakeLists.txt
+file(WRITE ${COMPILER_TEST_DIR}/CMakeLists.txt
"project(compilerTest)
cmake_minimum_required(VERSION 2.8)
add_definitions(-std=c++11)
@@ -28,25 +28,25 @@ file(WRITE ${COMPILER_TEST_DIR}/CMakeLists.txt
# RANGE-BASED FOR LOOPS
add_executable(test_range_based_for test_range_based_for.cpp)
target_link_libraries(test_range_based_for)")
-
-file(WRITE ${COMPILER_TEST_DIR}/test_variadic_templ_class.cpp
+
+file(WRITE ${COMPILER_TEST_DIR}/test_variadic_templ_class.cpp
"template struct A{}; int main(){A a;}")
-file(WRITE ${COMPILER_TEST_DIR}/test_variadic_templ_fct.cpp
+file(WRITE ${COMPILER_TEST_DIR}/test_variadic_templ_fct.cpp
"template void foo(Ts... ts){}; int main(){foo(1, 2.0, 3.0f);}")
-file(WRITE ${COMPILER_TEST_DIR}/test_alias_templates.cpp
+file(WRITE ${COMPILER_TEST_DIR}/test_alias_templates.cpp
"template struct A{}; template using B=A; int main(){B b;}")
-file(WRITE ${COMPILER_TEST_DIR}/test_decltype.cpp
+file(WRITE ${COMPILER_TEST_DIR}/test_decltype.cpp
"int main(){decltype(1) a = 1;}")
-file(WRITE ${COMPILER_TEST_DIR}/test_auto.cpp
+file(WRITE ${COMPILER_TEST_DIR}/test_auto.cpp
"int main(){auto a = 1;}")
-file(WRITE ${COMPILER_TEST_DIR}/test_constexpr.cpp
+file(WRITE ${COMPILER_TEST_DIR}/test_constexpr.cpp
"constexpr int foo(){return 1;}; int main(){static constexpr int f = foo();}")
-file(WRITE ${COMPILER_TEST_DIR}/test_delegating_constructors.cpp
+file(WRITE ${COMPILER_TEST_DIR}/test_delegating_constructors.cpp
"struct A{ A(){} A(int) : A(){} }; int main(){ A a(1);}")
-file(WRITE ${COMPILER_TEST_DIR}/test_range_based_for.cpp
+file(WRITE ${COMPILER_TEST_DIR}/test_range_based_for.cpp
"int main(){ int vec[10]; for (int& elem : vec) { elem = 1; } }")
-
-
+
+
set(COMPILER_CXX11_FEATURES "")
try_compile(TEST_VARIADIC_TEMPL_CLASS ${COMPILER_TEST_DIR} ${COMPILER_TEST_DIR} compilerTest test_variadic_templ_class)
diff --git a/AMDiS/cmake/postrm.in b/AMDiS/cmake/postrm.in
index 49a9ce70a3de1be69b1b3a517a46e657c5405f59..cdc5558a901e059c005306ed7654ff494f074d48 100755
--- a/AMDiS/cmake/postrm.in
+++ b/AMDiS/cmake/postrm.in
@@ -1,5 +1,5 @@
#!/bin/sh
-if test "$1" = "upgrade" ; then
+if test "$1" = "upgrade" ; then
exit 0
fi
NEWDIRS_SEMI="@deb_add_dirs@"
diff --git a/AMDiS/cmake3/amdis_parallel.cmake b/AMDiS/cmake3/amdis_parallel.cmake
index af09c7c6e2b88c33e4ae165957dabba20a9f8107..c45993da016cd30c629fa100470d3e0086ad7808 100644
--- a/AMDiS/cmake3/amdis_parallel.cmake
+++ b/AMDiS/cmake3/amdis_parallel.cmake
@@ -2,7 +2,7 @@ if (ENABLE_PARALLEL_DOMAIN)
option(ENABLE_ZOLTAN "Add support for the Parallel Partitioning suite Zoltan" false)
option(ENABLE_PARALLEL_SOLVERS "Add some problem dependent solver, e.g. Feti, Navier-Stokes and Cahn-Hilliard" true)
mark_as_advanced(ENABLE_PARALLEL_SOLVERS)
-
+
add_library(amdis_parallel INTERFACE)
target_sources(amdis PRIVATE
${SOURCE_DIR}/parallel/DofComm.cc
@@ -21,14 +21,14 @@ if (ENABLE_PARALLEL_DOMAIN)
${SOURCE_DIR}/parallel/ParMetisPartitioner.cc
${SOURCE_DIR}/parallel/StdMpi.cc
)
-
+
target_sources(amdis_debug INTERFACE
${SOURCE_DIR}/parallel/ParallelDebug.cc
)
-
+
target_compile_definitions(amdis_parallel INTERFACE
HAVE_PARALLEL_DOMAIN_AMDIS=1)
-
+
# MPI is required
find_package(MPI REQUIRED)
if (MPI_FOUND)
@@ -37,15 +37,15 @@ if (ENABLE_PARALLEL_DOMAIN)
target_compile_options(amdis_parallel INTERFACE
${MPI_COMPILE_FLAGS})
endif (MPI_FOUND)
-
+
# PETSc library is required
set(PETSC_EXECUTABLE_RUNS ON)
include(find_petsc)
if (PETSc_FOUND)
target_include_directories(amdis_parallel INTERFACE
- ${PETSC_DIR}/include
+ ${PETSC_DIR}/include
${PETSC_DIR}/${PETSC_ARCH}/include)
-
+
# parmetis is required
find_file(PARMETIS_HEADER_FILE "parmetis.h" HINTS ${PETSC_DIR}/include )
if (PARMETIS_HEADER_FILE)
@@ -54,7 +54,7 @@ if (ENABLE_PARALLEL_DOMAIN)
else()
message(FATAL_ERROR "Could not find ParMetis header file 'parmetis.h'!")
endif (PARMETIS_HEADER_FILE)
-
+
# add support for the zoltan library
if (ENABLE_ZOLTAN)
find_file(ZOLTAN_HEADER_FILE "zoltan_cpp.h" HINTS ${PETSC_DIR}/include)
@@ -64,18 +64,18 @@ if (ENABLE_PARALLEL_DOMAIN)
else()
message(FATAL_ERROR "Could not find Zoltan include file 'zoltan_cpp.h'!")
endif(ZOLTAN_HEADER_FILE)
-
+
target_compile_definitions(amdis_parallel INTERFACE HAVE_ZOLTAN=1)
target_sources(amdis PRIVATE
${SOURCE_DIR}/parallel/ZoltanPartitioner.cc)
endif (ENABLE_ZOLTAN)
-
+
if (ENABLE_BDDCML)
target_compile_definitions(amdis_parallel INTERFACE HAVE_BDDCML=1)
target_sources(amdis PRIVATE
${SOURCE_DIR}/parallel/BddcMlSolver.cc)
endif (ENABLE_BDDCML)
-
+
# add some more source-files that need petsc
target_sources(amdis PRIVATE
${SOURCE_DIR}/parallel/MatrixNnzStructure.cc
@@ -86,7 +86,7 @@ if (ENABLE_PARALLEL_DOMAIN)
${SOURCE_DIR}/parallel/PetscSolverGlobalBlockMatrix.cc
${SOURCE_DIR}/solver/PetscTypes.cc
)
-
+
if (ENABLE_PARALLEL_SOLVERS)
target_sources(amdis PRIVATE
${SOURCE_DIR}/parallel/PetscSolverFeti.cc
@@ -103,23 +103,23 @@ if (ENABLE_PARALLEL_DOMAIN)
target_compile_definitions(amdis_parallel INTERFACE
HAVE_PARALLEL_SOLVERS=1)
endif (ENABLE_PARALLEL_SOLVERS)
-
+
target_compile_definitions(amdis_parallel INTERFACE
HAVE_PARALLEL_PETSC=1
PETSC_VERSION=${PETSC_VERSION})
-
+
target_link_libraries(amdis amdis_parallel ${PETSC_LIBRARIES} blas lapack)
endif (PETSc_FOUND)
-
+
# specify how to install this target:
# -----------------------------------
-
+
file(GLOB AMDIS_PARALLEL_HEADERS "${SOURCE_DIR}/parallel/*.h")
install(FILES ${AMDIS_PARALLEL_HEADERS} DESTINATION include/amdis/parallel/)
-
- install(FILES
- ${BASE_DIR}/cmake3/ResolveCompilerPaths.cmake
- ${BASE_DIR}/cmake3/FindPackageMultipass.cmake
+
+ install(FILES
+ ${BASE_DIR}/cmake3/ResolveCompilerPaths.cmake
+ ${BASE_DIR}/cmake3/FindPackageMultipass.cmake
${BASE_DIR}/cmake3/find_petsc.cmake
DESTINATION share/amdis/)
endif (ENABLE_PARALLEL_DOMAIN)
diff --git a/AMDiS/cmake3/muparser.cmake b/AMDiS/cmake3/muparser.cmake
index b6751cb62902df57d4583626fd9cf450cf02229c..5f6842472a3b39e5d66e305b098689a9566137f8 100644
--- a/AMDiS/cmake3/muparser.cmake
+++ b/AMDiS/cmake3/muparser.cmake
@@ -2,7 +2,7 @@
set(MUPARSER_SOURCE_DIR ${BASE_DIR}/lib/muparser_v134/src)
set(MUPARSER_INCLUDE_DIR ${BASE_DIR}/lib/muparser_v134/include)
-add_library(muparser
+add_library(muparser
${MUPARSER_SOURCE_DIR}/muParser.cpp
${MUPARSER_SOURCE_DIR}/muParserBase.cpp
${MUPARSER_SOURCE_DIR}/muParserBytecode.cpp
@@ -13,7 +13,7 @@ add_library(muparser
${MUPARSER_SOURCE_DIR}/muParserInt.cpp
${MUPARSER_SOURCE_DIR}/muParserTest.cpp
${MUPARSER_SOURCE_DIR}/muParserTokenReader.cpp)
-
+
target_include_directories(muparser PUBLIC ${MUPARSER_INCLUDE_DIR})
if (ENABLE_CXX11)
diff --git a/AMDiS/cmake3/test_compile_features.cmake b/AMDiS/cmake3/test_compile_features.cmake
index 9458b31d180684d13c0ff9ba96af4f6b1fe39a89..c24c17bf4492b21743e2328bf0eba068b33a4c58 100644
--- a/AMDiS/cmake3/test_compile_features.cmake
+++ b/AMDiS/cmake3/test_compile_features.cmake
@@ -14,7 +14,7 @@ macro(test_compile_features RESULT_VAR TARGET SCOPE) # feature1 feature2 feature
else ()
set(DUMMY_FILE ${AMDIS_DIR}/dummy.cc)
endif ()
-
+
message(STATUS "Test for cxx11 features for target ${TARGET}")
execute_process(COMMAND ${CMAKE_COMMAND} -E make_directory ${_DIR})
file(WRITE ${_DIR}/CMakeLists.txt "
diff --git a/AMDiS/doc/Doxyfile b/AMDiS/doc/Doxyfile
index bad0952b87b366c264753ce338be35fc5173b947..f218981c87de88a47cb5e34d696f1936830bd72c 100644
--- a/AMDiS/doc/Doxyfile
+++ b/AMDiS/doc/Doxyfile
@@ -38,20 +38,20 @@ PROJECT_NAME = AMDiS
# could be handy for archiving the generated documentation or if some version
# control system is used.
-PROJECT_NUMBER =
+PROJECT_NUMBER =
# Using the PROJECT_BRIEF tag one can provide an optional one line description
# for a project that appears at the top of each page and should give viewer a
# quick idea about the purpose of the project. Keep the description short.
-PROJECT_BRIEF =
+PROJECT_BRIEF =
# With the PROJECT_LOGO tag one can specify an logo or icon that is included in
# the documentation. The maximum height of the logo should not exceed 55 pixels
# and the maximum width should not exceed 200 pixels. Doxygen will copy the logo
# to the output directory.
-PROJECT_LOGO =
+PROJECT_LOGO =
# The OUTPUT_DIRECTORY tag is used to specify the (relative or absolute) path
# into which the generated documentation will be written. If a relative path is
@@ -154,7 +154,7 @@ FULL_PATH_NAMES = NO
# will be relative from the directory where doxygen is started.
# This tag requires that the tag FULL_PATH_NAMES is set to YES.
-STRIP_FROM_PATH =
+STRIP_FROM_PATH =
# The STRIP_FROM_INC_PATH tag can be used to strip a user-defined part of the
# path mentioned in the documentation of a class, which tells the reader which
@@ -163,7 +163,7 @@ STRIP_FROM_PATH =
# specify the list of include paths that are normally passed to the compiler
# using the -I flag.
-STRIP_FROM_INC_PATH =
+STRIP_FROM_INC_PATH =
# If the SHORT_NAMES tag is set to YES, doxygen will generate much shorter (but
# less readable) file names. This can be useful is your file systems doesn't
@@ -230,13 +230,13 @@ TAB_SIZE = 8
# "Side Effects:". You can put \n's in the value part of an alias to insert
# newlines.
-ALIASES =
+ALIASES =
# This tag can be used to specify a number of word-keyword mappings (TCL only).
# A mapping has the form "name=value". For example adding "class=itcl::class"
# will allow you to use the command class in the itcl::class meaning.
-TCL_SUBST =
+TCL_SUBST =
# Set the OPTIMIZE_OUTPUT_FOR_C tag to YES if your project consists of C sources
# only. Doxygen will then generate output that is more tailored for C. For
@@ -280,7 +280,7 @@ OPTIMIZE_OUTPUT_VHDL = NO
# Note that for custom extensions you also need to set FILE_PATTERNS otherwise
# the files are not read by doxygen.
-EXTENSION_MAPPING =
+EXTENSION_MAPPING =
# If the MARKDOWN_SUPPORT tag is enabled then doxygen pre-processes all comments
# according to the Markdown format, which allows for more readable
@@ -616,7 +616,7 @@ GENERATE_DEPRECATEDLIST= YES
# sections, marked by \if ... \endif and \cond
# ... \endcond blocks.
-ENABLED_SECTIONS =
+ENABLED_SECTIONS =
# The MAX_INITIALIZER_LINES tag determines the maximum number of lines that the
# initial value of a variable or macro / define can have for it to appear in the
@@ -658,7 +658,7 @@ SHOW_NAMESPACES = YES
# by doxygen. Whatever the program writes to standard output is used as the file
# version. For an example see the documentation.
-FILE_VERSION_FILTER =
+FILE_VERSION_FILTER =
# The LAYOUT_FILE tag can be used to specify a layout file which will be parsed
# by doxygen. The layout file controls the global structure of the generated
@@ -671,7 +671,7 @@ FILE_VERSION_FILTER =
# DoxygenLayout.xml, doxygen will parse it automatically even if the LAYOUT_FILE
# tag is left empty.
-LAYOUT_FILE =
+LAYOUT_FILE =
# The CITE_BIB_FILES tag can be used to specify one or more bib files containing
# the reference definitions. This must be a list of .bib files. The .bib
@@ -682,7 +682,7 @@ LAYOUT_FILE =
# search path. Do not use file names with spaces, bibtex cannot handle them. See
# also \cite for info how to create references.
-CITE_BIB_FILES =
+CITE_BIB_FILES =
#---------------------------------------------------------------------------
# Configuration options related to warning and progress messages
@@ -741,7 +741,7 @@ WARN_FORMAT = "$file:$line: $text"
# messages should be written. If left blank the output is written to standard
# error (stderr).
-WARN_LOGFILE =
+WARN_LOGFILE =
#---------------------------------------------------------------------------
# Configuration options related to the input files
@@ -798,7 +798,7 @@ RECURSIVE = NO
# Note that relative paths are relative to the directory from which doxygen is
# run.
-EXCLUDE =
+EXCLUDE =
# The EXCLUDE_SYMLINKS tag can be used to select whether or not files or
# directories that are symbolic links (a Unix file system feature) are excluded
@@ -814,7 +814,7 @@ EXCLUDE_SYMLINKS = NO
# Note that the wildcards are matched against the file with absolute path, so to
# exclude all test directories for example use the pattern */test/*
-EXCLUDE_PATTERNS =
+EXCLUDE_PATTERNS =
# The EXCLUDE_SYMBOLS tag can be used to specify one or more symbol names
# (namespaces, classes, functions, etc.) that should be excluded from the
@@ -825,20 +825,20 @@ EXCLUDE_PATTERNS =
# Note that the wildcards are matched against the file with absolute path, so to
# exclude all test directories use the pattern */test/*
-EXCLUDE_SYMBOLS =
+EXCLUDE_SYMBOLS =
# The EXAMPLE_PATH tag can be used to specify one or more files or directories
# that contain example code fragments that are included (see the \include
# command).
-EXAMPLE_PATH =
+EXAMPLE_PATH =
# If the value of the EXAMPLE_PATH tag contains directories, you can use the
# EXAMPLE_PATTERNS tag to specify one or more wildcard pattern (like *.cpp and
# *.h) to filter out the source-files in the directories. If left blank all
# files are included.
-EXAMPLE_PATTERNS =
+EXAMPLE_PATTERNS =
# If the EXAMPLE_RECURSIVE tag is set to YES then subdirectories will be
# searched for input files to be used with the \include or \dontinclude commands
@@ -851,7 +851,7 @@ EXAMPLE_RECURSIVE = NO
# that contain images that are to be included in the documentation (see the
# \image command).
-IMAGE_PATH =
+IMAGE_PATH =
# The INPUT_FILTER tag can be used to specify a program that doxygen should
# invoke to filter for each input file. Doxygen will invoke the filter program
@@ -868,7 +868,7 @@ IMAGE_PATH =
# code is scanned, but not when the output code is generated. If lines are added
# or removed, the anchors will not be placed correctly.
-INPUT_FILTER =
+INPUT_FILTER =
# The FILTER_PATTERNS tag can be used to specify filters on a per file pattern
# basis. Doxygen will compare the file name with each pattern and apply the
@@ -877,7 +877,7 @@ INPUT_FILTER =
# filters are used. If the FILTER_PATTERNS tag is empty or if none of the
# patterns match the file name, INPUT_FILTER is applied.
-FILTER_PATTERNS =
+FILTER_PATTERNS =
# If the FILTER_SOURCE_FILES tag is set to YES, the input filter (if set using
# INPUT_FILTER ) will also be used to filter the input files that are used for
@@ -892,14 +892,14 @@ FILTER_SOURCE_FILES = NO
# *.ext= (so without naming a filter).
# This tag requires that the tag FILTER_SOURCE_FILES is set to YES.
-FILTER_SOURCE_PATTERNS =
+FILTER_SOURCE_PATTERNS =
# If the USE_MDFILE_AS_MAINPAGE tag refers to the name of a markdown file that
# is part of the input, its contents will be placed on the main page
# (index.html). This can be useful if you have a project on for instance GitHub
# and want to reuse the introduction page also for the doxygen output.
-USE_MDFILE_AS_MAINPAGE =
+USE_MDFILE_AS_MAINPAGE =
#---------------------------------------------------------------------------
# Configuration options related to source browsing
@@ -1011,7 +1011,7 @@ COLS_IN_ALPHA_INDEX = 5
# while generating the index headers.
# This tag requires that the tag ALPHABETICAL_INDEX is set to YES.
-IGNORE_PREFIX =
+IGNORE_PREFIX =
#---------------------------------------------------------------------------
# Configuration options related to the HTML output
@@ -1055,7 +1055,7 @@ HTML_FILE_EXTENSION = .html
# of the possible markers and block names see the documentation.
# This tag requires that the tag GENERATE_HTML is set to YES.
-HTML_HEADER =
+HTML_HEADER =
# The HTML_FOOTER tag can be used to specify a user-defined HTML footer for each
# generated HTML page. If the tag is left blank doxygen will generate a standard
@@ -1065,7 +1065,7 @@ HTML_HEADER =
# that doxygen normally uses.
# This tag requires that the tag GENERATE_HTML is set to YES.
-HTML_FOOTER =
+HTML_FOOTER =
# The HTML_STYLESHEET tag can be used to specify a user-defined cascading style
# sheet that is used by each HTML page. It can be used to fine-tune the look of
@@ -1077,7 +1077,7 @@ HTML_FOOTER =
# obsolete.
# This tag requires that the tag GENERATE_HTML is set to YES.
-HTML_STYLESHEET =
+HTML_STYLESHEET =
# The HTML_EXTRA_STYLESHEET tag can be used to specify an additional user-
# defined cascading style sheet that is included after the standard style sheets
@@ -1088,7 +1088,7 @@ HTML_STYLESHEET =
# see the documentation.
# This tag requires that the tag GENERATE_HTML is set to YES.
-HTML_EXTRA_STYLESHEET =
+HTML_EXTRA_STYLESHEET =
# The HTML_EXTRA_FILES tag can be used to specify one or more extra images or
# other source files which should be copied to the HTML output directory. Note
@@ -1098,7 +1098,7 @@ HTML_EXTRA_STYLESHEET =
# files will be copied as-is; there are no commands or markers available.
# This tag requires that the tag GENERATE_HTML is set to YES.
-HTML_EXTRA_FILES =
+HTML_EXTRA_FILES =
# The HTML_COLORSTYLE_HUE tag controls the color of the HTML output. Doxygen
# will adjust the colors in the stylesheet and background images according to
@@ -1226,7 +1226,7 @@ GENERATE_HTMLHELP = NO
# written to the html output directory.
# This tag requires that the tag GENERATE_HTMLHELP is set to YES.
-CHM_FILE =
+CHM_FILE =
# The HHC_LOCATION tag can be used to specify the location (absolute path
# including file name) of the HTML help compiler ( hhc.exe). If non-empty
@@ -1234,7 +1234,7 @@ CHM_FILE =
# The file has to be specified with full path.
# This tag requires that the tag GENERATE_HTMLHELP is set to YES.
-HHC_LOCATION =
+HHC_LOCATION =
# The GENERATE_CHI flag controls if a separate .chi index file is generated (
# YES) or that it should be included in the master .chm file ( NO).
@@ -1247,7 +1247,7 @@ GENERATE_CHI = NO
# and project file content.
# This tag requires that the tag GENERATE_HTMLHELP is set to YES.
-CHM_INDEX_ENCODING =
+CHM_INDEX_ENCODING =
# The BINARY_TOC flag controls whether a binary table of contents is generated (
# YES) or a normal table of contents ( NO) in the .chm file.
@@ -1277,7 +1277,7 @@ GENERATE_QHP = NO
# the HTML output folder.
# This tag requires that the tag GENERATE_QHP is set to YES.
-QCH_FILE =
+QCH_FILE =
# The QHP_NAMESPACE tag specifies the namespace to use when generating Qt Help
# Project output. For more information please see Qt Help Project / Namespace
@@ -1302,7 +1302,7 @@ QHP_VIRTUAL_FOLDER = doc
# filters).
# This tag requires that the tag GENERATE_QHP is set to YES.
-QHP_CUST_FILTER_NAME =
+QHP_CUST_FILTER_NAME =
# The QHP_CUST_FILTER_ATTRS tag specifies the list of the attributes of the
# custom filter to add. For more information please see Qt Help Project / Custom
@@ -1310,21 +1310,21 @@ QHP_CUST_FILTER_NAME =
# filters).
# This tag requires that the tag GENERATE_QHP is set to YES.
-QHP_CUST_FILTER_ATTRS =
+QHP_CUST_FILTER_ATTRS =
# The QHP_SECT_FILTER_ATTRS tag specifies the list of the attributes this
# project's filter section matches. Qt Help Project / Filter Attributes (see:
# http://qt-project.org/doc/qt-4.8/qthelpproject.html#filter-attributes).
# This tag requires that the tag GENERATE_QHP is set to YES.
-QHP_SECT_FILTER_ATTRS =
+QHP_SECT_FILTER_ATTRS =
# The QHG_LOCATION tag can be used to specify the location of Qt's
# qhelpgenerator. If non-empty doxygen will try to run qhelpgenerator on the
# generated .qhp file.
# This tag requires that the tag GENERATE_QHP is set to YES.
-QHG_LOCATION =
+QHG_LOCATION =
# If the GENERATE_ECLIPSEHELP tag is set to YES, additional index files will be
# generated, together with the HTML files, they form an Eclipse help plugin. To
@@ -1457,7 +1457,7 @@ MATHJAX_RELPATH = http://cdn.mathjax.org/mathjax/latest
# MATHJAX_EXTENSIONS = TeX/AMSmath TeX/AMSsymbols
# This tag requires that the tag USE_MATHJAX is set to YES.
-MATHJAX_EXTENSIONS =
+MATHJAX_EXTENSIONS =
# The MATHJAX_CODEFILE tag can be used to specify a file with javascript pieces
# of code that will be used on startup of the MathJax code. See the MathJax site
@@ -1465,7 +1465,7 @@ MATHJAX_EXTENSIONS =
# example see the documentation.
# This tag requires that the tag USE_MATHJAX is set to YES.
-MATHJAX_CODEFILE =
+MATHJAX_CODEFILE =
# When the SEARCHENGINE tag is enabled doxygen will generate a search box for
# the HTML output. The underlying search engine uses javascript and DHTML and
@@ -1525,7 +1525,7 @@ EXTERNAL_SEARCH = NO
# Searching" for details.
# This tag requires that the tag SEARCHENGINE is set to YES.
-SEARCHENGINE_URL =
+SEARCHENGINE_URL =
# When SERVER_BASED_SEARCH and EXTERNAL_SEARCH are both enabled the unindexed
# search data is written to a file for indexing by an external tool. With the
@@ -1541,7 +1541,7 @@ SEARCHDATA_FILE = searchdata.xml
# projects and redirect the results back to the right project.
# This tag requires that the tag SEARCHENGINE is set to YES.
-EXTERNAL_SEARCH_ID =
+EXTERNAL_SEARCH_ID =
# The EXTRA_SEARCH_MAPPINGS tag can be used to enable searching through doxygen
# projects other than the one defined by this configuration file, but that are
@@ -1551,7 +1551,7 @@ EXTERNAL_SEARCH_ID =
# EXTRA_SEARCH_MAPPINGS = tagname1=loc1 tagname2=loc2 ...
# This tag requires that the tag SEARCHENGINE is set to YES.
-EXTRA_SEARCH_MAPPINGS =
+EXTRA_SEARCH_MAPPINGS =
#---------------------------------------------------------------------------
# Configuration options related to the LaTeX output
@@ -1612,7 +1612,7 @@ PAPER_TYPE = a4wide
# If left blank no extra packages will be included.
# This tag requires that the tag GENERATE_LATEX is set to YES.
-EXTRA_PACKAGES =
+EXTRA_PACKAGES =
# The LATEX_HEADER tag can be used to specify a personal LaTeX header for the
# generated LaTeX document. The header should contain everything until the first
@@ -1628,7 +1628,7 @@ EXTRA_PACKAGES =
# PROJECT_NAME), or the project number (see PROJECT_NUMBER).
# This tag requires that the tag GENERATE_LATEX is set to YES.
-LATEX_HEADER =
+LATEX_HEADER =
# The LATEX_FOOTER tag can be used to specify a personal LaTeX footer for the
# generated LaTeX document. The footer should contain everything after the last
@@ -1637,7 +1637,7 @@ LATEX_HEADER =
# Note: Only use a user-defined footer if you know what you are doing!
# This tag requires that the tag GENERATE_LATEX is set to YES.
-LATEX_FOOTER =
+LATEX_FOOTER =
# The LATEX_EXTRA_FILES tag can be used to specify one or more extra images or
# other source files which should be copied to the LATEX_OUTPUT output
@@ -1645,7 +1645,7 @@ LATEX_FOOTER =
# markers available.
# This tag requires that the tag GENERATE_LATEX is set to YES.
-LATEX_EXTRA_FILES =
+LATEX_EXTRA_FILES =
# If the PDF_HYPERLINKS tag is set to YES, the LaTeX that is generated is
# prepared for conversion to PDF (using ps2pdf or pdflatex). The PDF file will
@@ -1745,14 +1745,14 @@ RTF_HYPERLINKS = NO
# default style sheet that doxygen normally uses.
# This tag requires that the tag GENERATE_RTF is set to YES.
-RTF_STYLESHEET_FILE =
+RTF_STYLESHEET_FILE =
# Set optional variables used in the generation of an RTF document. Syntax is
# similar to doxygen's config file. A template extensions file can be generated
# using doxygen -e rtf extensionFile.
# This tag requires that the tag GENERATE_RTF is set to YES.
-RTF_EXTENSIONS_FILE =
+RTF_EXTENSIONS_FILE =
#---------------------------------------------------------------------------
# Configuration options related to the man page output
@@ -1813,13 +1813,13 @@ XML_OUTPUT = xml
# validating XML parser to check the syntax of the XML files.
# This tag requires that the tag GENERATE_XML is set to YES.
-XML_SCHEMA =
+XML_SCHEMA =
# The XML_DTD tag can be used to specify a XML DTD, which can be used by a
# validating XML parser to check the syntax of the XML files.
# This tag requires that the tag GENERATE_XML is set to YES.
-XML_DTD =
+XML_DTD =
# If the XML_PROGRAMLISTING tag is set to YES doxygen will dump the program
# listings (including syntax highlighting and cross-referencing information) to
@@ -1896,7 +1896,7 @@ PERLMOD_PRETTY = YES
# overwrite each other's variables.
# This tag requires that the tag GENERATE_PERLMOD is set to YES.
-PERLMOD_MAKEVAR_PREFIX =
+PERLMOD_MAKEVAR_PREFIX =
#---------------------------------------------------------------------------
# Configuration options related to the preprocessor
@@ -1937,7 +1937,7 @@ SEARCH_INCLUDES = YES
# preprocessor.
# This tag requires that the tag SEARCH_INCLUDES is set to YES.
-INCLUDE_PATH =
+INCLUDE_PATH =
# You can use the INCLUDE_FILE_PATTERNS tag to specify one or more wildcard
# patterns (like *.h and *.hpp) to filter out the header-files in the
@@ -1945,7 +1945,7 @@ INCLUDE_PATH =
# used.
# This tag requires that the tag ENABLE_PREPROCESSING is set to YES.
-INCLUDE_FILE_PATTERNS =
+INCLUDE_FILE_PATTERNS =
# The PREDEFINED tag can be used to specify one or more macro names that are
# defined before the preprocessor is started (similar to the -D option of e.g.
@@ -1968,7 +1968,7 @@ PREDEFINED = HAVE_PARALLEL_DOMAIN_AMDIS \
# definition found in the source code.
# This tag requires that the tag ENABLE_PREPROCESSING is set to YES.
-EXPAND_AS_DEFINED =
+EXPAND_AS_DEFINED =
# If the SKIP_FUNCTION_MACROS tag is set to YES then doxygen's preprocessor will
# remove all refrences to function-like macros that are alone on a line, have an
@@ -1997,13 +1997,13 @@ SKIP_FUNCTION_MACROS = YES
# the path). If a tag file is not located in the directory in which doxygen is
# run, you must also specify the path to the tagfile here.
-TAGFILES =
+TAGFILES =
# When a file name is specified after GENERATE_TAGFILE, doxygen will create a
# tag file that is based on the input files it reads. See section "Linking to
# external documentation" for more information about the usage of tag files.
-GENERATE_TAGFILE =
+GENERATE_TAGFILE =
# If the ALLEXTERNALS tag is set to YES all external class will be listed in the
# class index. If set to NO only the inherited external classes will be listed.
@@ -2051,14 +2051,14 @@ CLASS_DIAGRAMS = NO
# the mscgen tool resides. If left empty the tool is assumed to be found in the
# default search path.
-MSCGEN_PATH =
+MSCGEN_PATH =
# You can include diagrams made with dia in doxygen documentation. Doxygen will
# then run dia to produce the diagram and insert it in the documentation. The
# DIA_PATH tag allows you to specify the directory where the dia binary resides.
# If left empty dia is assumed to be found in the default search path.
-DIA_PATH =
+DIA_PATH =
# If set to YES, the inheritance and collaboration graphs will hide inheritance
# and usage relations if the target is undocumented or is not a class.
@@ -2107,7 +2107,7 @@ DOT_FONTSIZE = 10
# the path where dot can find it using this tag.
# This tag requires that the tag HAVE_DOT is set to YES.
-DOT_FONTPATH =
+DOT_FONTPATH =
# If the CLASS_GRAPH tag is set to YES then doxygen will generate a graph for
# each documented class showing the direct and indirect inheritance relations.
@@ -2252,19 +2252,19 @@ DOT_PATH = /solhome/vey/graphviz/graphviz-1.10/bin/
# command).
# This tag requires that the tag HAVE_DOT is set to YES.
-DOTFILE_DIRS =
+DOTFILE_DIRS =
# The MSCFILE_DIRS tag can be used to specify one or more directories that
# contain msc files that are included in the documentation (see the \mscfile
# command).
-MSCFILE_DIRS =
+MSCFILE_DIRS =
# The DIAFILE_DIRS tag can be used to specify one or more directories that
# contain dia files that are included in the documentation (see the \diafile
# command).
-DIAFILE_DIRS =
+DIAFILE_DIRS =
# The DOT_GRAPH_MAX_NODES tag can be used to set the maximum number of nodes
# that will be shown in the graph. If the number of nodes in a graph becomes
diff --git a/AMDiS/lib/mtl4/CMakeLists.txt b/AMDiS/lib/mtl4/CMakeLists.txt
index 0beb66966a464e36cc21711125e03abc3f2d9638..34f05b507a836c5093320c88afd3105242ca0e55 100644
--- a/AMDiS/lib/mtl4/CMakeLists.txt
+++ b/AMDiS/lib/mtl4/CMakeLists.txt
@@ -1,4 +1,4 @@
-project (mtl4) # GPU version
+project (mtl4) # GPU version
cmake_minimum_required(VERSION 2.8)
option(ENABLE_GCOV "enable gnu coverage flags for gnu compiler" OFF)
@@ -77,4 +77,4 @@ enable_testing()
include(CTest)
set(MTL_IS_CONFIGURED True) # impede double double configuration in libs
-add_subdirectory(libs)
+add_subdirectory(libs)
diff --git a/AMDiS/lib/mtl4/Doxyfile b/AMDiS/lib/mtl4/Doxyfile
index fdc37d46a51a942ddfa1721a34b2a662b63ebd9a..69153ce1646107a091174c08bfd9884f04218109 100644
--- a/AMDiS/lib/mtl4/Doxyfile
+++ b/AMDiS/lib/mtl4/Doxyfile
@@ -14,76 +14,76 @@
# Project related configuration options
#---------------------------------------------------------------------------
-# This tag specifies the encoding used for all characters in the config file
-# that follow. The default is UTF-8 which is also the encoding used for all
-# text before the first occurrence of this tag. Doxygen uses libiconv (or the
-# iconv built into libc) for the transcoding. See
+# This tag specifies the encoding used for all characters in the config file
+# that follow. The default is UTF-8 which is also the encoding used for all
+# text before the first occurrence of this tag. Doxygen uses libiconv (or the
+# iconv built into libc) for the transcoding. See
# http://www.gnu.org/software/libiconv for the list of possible encodings.
DOXYFILE_ENCODING = UTF-8
-# The PROJECT_NAME tag is a single word (or a sequence of words surrounded
+# The PROJECT_NAME tag is a single word (or a sequence of words surrounded
# by quotes) that should identify the project.
PROJECT_NAME = "MTL 4"
-# The PROJECT_NUMBER tag can be used to enter a project or revision number.
-# This could be handy for archiving the generated documentation or
+# The PROJECT_NUMBER tag can be used to enter a project or revision number.
+# This could be handy for archiving the generated documentation or
# if some version control system is used.
PROJECT_NUMBER = ""
-# The OUTPUT_DIRECTORY tag is used to specify the (relative or absolute)
-# base path where the generated documentation will be put.
-# If a relative path is entered, it will be relative to the location
+# The OUTPUT_DIRECTORY tag is used to specify the (relative or absolute)
+# base path where the generated documentation will be put.
+# If a relative path is entered, it will be relative to the location
# where doxygen was started. If left blank the current directory will be used.
OUTPUT_DIRECTORY = libs/numeric/mtl/doc
-# If the CREATE_SUBDIRS tag is set to YES, then doxygen will create
-# 4096 sub-directories (in 2 levels) under the output directory of each output
-# format and will distribute the generated files over these directories.
-# Enabling this option can be useful when feeding doxygen a huge amount of
-# source files, where putting all generated files in the same directory would
+# If the CREATE_SUBDIRS tag is set to YES, then doxygen will create
+# 4096 sub-directories (in 2 levels) under the output directory of each output
+# format and will distribute the generated files over these directories.
+# Enabling this option can be useful when feeding doxygen a huge amount of
+# source files, where putting all generated files in the same directory would
# otherwise cause performance problems for the file system.
CREATE_SUBDIRS = NO
-# The OUTPUT_LANGUAGE tag is used to specify the language in which all
-# documentation generated by doxygen is written. Doxygen will use this
-# information to generate all constant output in the proper language.
-# The default language is English, other supported languages are:
-# Afrikaans, Arabic, Brazilian, Catalan, Chinese, Chinese-Traditional,
-# Croatian, Czech, Danish, Dutch, Esperanto, Farsi, Finnish, French, German,
-# Greek, Hungarian, Italian, Japanese, Japanese-en (Japanese with English
-# messages), Korean, Korean-en, Lithuanian, Norwegian, Macedonian, Persian,
-# Polish, Portuguese, Romanian, Russian, Serbian, Serbian-Cyrilic, Slovak,
+# The OUTPUT_LANGUAGE tag is used to specify the language in which all
+# documentation generated by doxygen is written. Doxygen will use this
+# information to generate all constant output in the proper language.
+# The default language is English, other supported languages are:
+# Afrikaans, Arabic, Brazilian, Catalan, Chinese, Chinese-Traditional,
+# Croatian, Czech, Danish, Dutch, Esperanto, Farsi, Finnish, French, German,
+# Greek, Hungarian, Italian, Japanese, Japanese-en (Japanese with English
+# messages), Korean, Korean-en, Lithuanian, Norwegian, Macedonian, Persian,
+# Polish, Portuguese, Romanian, Russian, Serbian, Serbian-Cyrilic, Slovak,
# Slovene, Spanish, Swedish, Ukrainian, and Vietnamese.
OUTPUT_LANGUAGE = English
-# If the BRIEF_MEMBER_DESC tag is set to YES (the default) Doxygen will
-# include brief member descriptions after the members that are listed in
-# the file and class documentation (similar to JavaDoc).
+# If the BRIEF_MEMBER_DESC tag is set to YES (the default) Doxygen will
+# include brief member descriptions after the members that are listed in
+# the file and class documentation (similar to JavaDoc).
# Set to NO to disable this.
BRIEF_MEMBER_DESC = YES
-# If the REPEAT_BRIEF tag is set to YES (the default) Doxygen will prepend
-# the brief description of a member or function before the detailed description.
-# Note: if both HIDE_UNDOC_MEMBERS and BRIEF_MEMBER_DESC are set to NO, the
+# If the REPEAT_BRIEF tag is set to YES (the default) Doxygen will prepend
+# the brief description of a member or function before the detailed description.
+# Note: if both HIDE_UNDOC_MEMBERS and BRIEF_MEMBER_DESC are set to NO, the
# brief descriptions will be completely suppressed.
REPEAT_BRIEF = YES
-# This tag implements a quasi-intelligent brief description abbreviator
-# that is used to form the text in various listings. Each string
-# in this list, if found as the leading text of the brief description, will be
-# stripped from the text and the result after processing the whole list, is
-# used as the annotated text. Otherwise, the brief description is used as-is.
-# If left blank, the following values are used ("$name" is automatically
-# replaced with the name of the entity): "The $name class" "The $name widget"
-# "The $name file" "is" "provides" "specifies" "contains"
+# This tag implements a quasi-intelligent brief description abbreviator
+# that is used to form the text in various listings. Each string
+# in this list, if found as the leading text of the brief description, will be
+# stripped from the text and the result after processing the whole list, is
+# used as the annotated text. Otherwise, the brief description is used as-is.
+# If left blank, the following values are used ("$name" is automatically
+# replaced with the name of the entity): "The $name class" "The $name widget"
+# "The $name file" "is" "provides" "specifies" "contains"
# "represents" "a" "an" "the"
ABBREVIATE_BRIEF = "The $name class" \
@@ -98,203 +98,203 @@ ABBREVIATE_BRIEF = "The $name class" \
an \
the
-# If the ALWAYS_DETAILED_SEC and REPEAT_BRIEF tags are both set to YES then
-# Doxygen will generate a detailed section even if there is only a brief
+# If the ALWAYS_DETAILED_SEC and REPEAT_BRIEF tags are both set to YES then
+# Doxygen will generate a detailed section even if there is only a brief
# description.
ALWAYS_DETAILED_SEC = NO
-# If the INLINE_INHERITED_MEMB tag is set to YES, doxygen will show all
-# inherited members of a class in the documentation of that class as if those
-# members were ordinary class members. Constructors, destructors and assignment
+# If the INLINE_INHERITED_MEMB tag is set to YES, doxygen will show all
+# inherited members of a class in the documentation of that class as if those
+# members were ordinary class members. Constructors, destructors and assignment
# operators of the base classes will not be shown.
INLINE_INHERITED_MEMB = NO
-# If the FULL_PATH_NAMES tag is set to YES then Doxygen will prepend the full
-# path before files name in the file list and in the header files. If set
+# If the FULL_PATH_NAMES tag is set to YES then Doxygen will prepend the full
+# path before files name in the file list and in the header files. If set
# to NO the shortest path that makes the file name unique will be used.
FULL_PATH_NAMES = NO
-# If the FULL_PATH_NAMES tag is set to YES then the STRIP_FROM_PATH tag
-# can be used to strip a user-defined part of the path. Stripping is
-# only done if one of the specified strings matches the left-hand part of
-# the path. The tag can be used to show relative paths in the file list.
-# If left blank the directory from which doxygen is run is used as the
+# If the FULL_PATH_NAMES tag is set to YES then the STRIP_FROM_PATH tag
+# can be used to strip a user-defined part of the path. Stripping is
+# only done if one of the specified strings matches the left-hand part of
+# the path. The tag can be used to show relative paths in the file list.
+# If left blank the directory from which doxygen is run is used as the
# path to strip.
STRIP_FROM_PATH = /Volumes/Doxygen/
-# The STRIP_FROM_INC_PATH tag can be used to strip a user-defined part of
-# the path mentioned in the documentation of a class, which tells
-# the reader which header file to include in order to use a class.
-# If left blank only the name of the header file containing the class
-# definition is used. Otherwise one should specify the include paths that
+# The STRIP_FROM_INC_PATH tag can be used to strip a user-defined part of
+# the path mentioned in the documentation of a class, which tells
+# the reader which header file to include in order to use a class.
+# If left blank only the name of the header file containing the class
+# definition is used. Otherwise one should specify the include paths that
# are normally passed to the compiler using the -I flag.
-STRIP_FROM_INC_PATH =
+STRIP_FROM_INC_PATH =
-# If the SHORT_NAMES tag is set to YES, doxygen will generate much shorter
-# (but less readable) file names. This can be useful is your file systems
+# If the SHORT_NAMES tag is set to YES, doxygen will generate much shorter
+# (but less readable) file names. This can be useful is your file systems
# doesn't support long names like on DOS, Mac, or CD-ROM.
SHORT_NAMES = NO
-# If the JAVADOC_AUTOBRIEF tag is set to YES then Doxygen
-# will interpret the first line (until the first dot) of a JavaDoc-style
-# comment as the brief description. If set to NO, the JavaDoc
-# comments will behave just like regular Qt-style comments
+# If the JAVADOC_AUTOBRIEF tag is set to YES then Doxygen
+# will interpret the first line (until the first dot) of a JavaDoc-style
+# comment as the brief description. If set to NO, the JavaDoc
+# comments will behave just like regular Qt-style comments
# (thus requiring an explicit @brief command for a brief description.)
JAVADOC_AUTOBRIEF = NO
-# If the QT_AUTOBRIEF tag is set to YES then Doxygen will
-# interpret the first line (until the first dot) of a Qt-style
-# comment as the brief description. If set to NO, the comments
-# will behave just like regular Qt-style comments (thus requiring
+# If the QT_AUTOBRIEF tag is set to YES then Doxygen will
+# interpret the first line (until the first dot) of a Qt-style
+# comment as the brief description. If set to NO, the comments
+# will behave just like regular Qt-style comments (thus requiring
# an explicit \brief command for a brief description.)
QT_AUTOBRIEF = NO
-# The MULTILINE_CPP_IS_BRIEF tag can be set to YES to make Doxygen
-# treat a multi-line C++ special comment block (i.e. a block of //! or ///
-# comments) as a brief description. This used to be the default behaviour.
-# The new default is to treat a multi-line C++ comment block as a detailed
+# The MULTILINE_CPP_IS_BRIEF tag can be set to YES to make Doxygen
+# treat a multi-line C++ special comment block (i.e. a block of //! or ///
+# comments) as a brief description. This used to be the default behaviour.
+# The new default is to treat a multi-line C++ comment block as a detailed
# description. Set this tag to YES if you prefer the old behaviour instead.
MULTILINE_CPP_IS_BRIEF = NO
-# If the INHERIT_DOCS tag is set to YES (the default) then an undocumented
-# member inherits the documentation from any documented member that it
+# If the INHERIT_DOCS tag is set to YES (the default) then an undocumented
+# member inherits the documentation from any documented member that it
# re-implements.
INHERIT_DOCS = YES
-# If the SEPARATE_MEMBER_PAGES tag is set to YES, then doxygen will produce
-# a new page for each member. If set to NO, the documentation of a member will
+# If the SEPARATE_MEMBER_PAGES tag is set to YES, then doxygen will produce
+# a new page for each member. If set to NO, the documentation of a member will
# be part of the file/class/namespace that contains it.
SEPARATE_MEMBER_PAGES = NO
-# The TAB_SIZE tag can be used to set the number of spaces in a tab.
+# The TAB_SIZE tag can be used to set the number of spaces in a tab.
# Doxygen uses this value to replace tabs by spaces in code fragments.
TAB_SIZE = 8
-# This tag can be used to specify a number of aliases that acts
-# as commands in the documentation. An alias has the form "name=value".
-# For example adding "sideeffect=\par Side Effects:\n" will allow you to
-# put the command \sideeffect (or @sideeffect) in the documentation, which
-# will result in a user-defined paragraph with heading "Side Effects:".
+# This tag can be used to specify a number of aliases that acts
+# as commands in the documentation. An alias has the form "name=value".
+# For example adding "sideeffect=\par Side Effects:\n" will allow you to
+# put the command \sideeffect (or @sideeffect) in the documentation, which
+# will result in a user-defined paragraph with heading "Side Effects:".
# You can put \n's in the value part of an alias to insert newlines.
-ALIASES =
+ALIASES =
-# Set the OPTIMIZE_OUTPUT_FOR_C tag to YES if your project consists of C
-# sources only. Doxygen will then generate output that is more tailored for C.
-# For instance, some of the names that are used will be different. The list
+# Set the OPTIMIZE_OUTPUT_FOR_C tag to YES if your project consists of C
+# sources only. Doxygen will then generate output that is more tailored for C.
+# For instance, some of the names that are used will be different. The list
# of all members will be omitted, etc.
OPTIMIZE_OUTPUT_FOR_C = NO
-# Set the OPTIMIZE_OUTPUT_JAVA tag to YES if your project consists of Java
-# sources only. Doxygen will then generate output that is more tailored for
-# Java. For instance, namespaces will be presented as packages, qualified
+# Set the OPTIMIZE_OUTPUT_JAVA tag to YES if your project consists of Java
+# sources only. Doxygen will then generate output that is more tailored for
+# Java. For instance, namespaces will be presented as packages, qualified
# scopes will look different, etc.
OPTIMIZE_OUTPUT_JAVA = NO
-# Set the OPTIMIZE_FOR_FORTRAN tag to YES if your project consists of Fortran
-# sources only. Doxygen will then generate output that is more tailored for
+# Set the OPTIMIZE_FOR_FORTRAN tag to YES if your project consists of Fortran
+# sources only. Doxygen will then generate output that is more tailored for
# Fortran.
OPTIMIZE_FOR_FORTRAN = NO
-# Set the OPTIMIZE_OUTPUT_VHDL tag to YES if your project consists of VHDL
-# sources. Doxygen will then generate output that is tailored for
+# Set the OPTIMIZE_OUTPUT_VHDL tag to YES if your project consists of VHDL
+# sources. Doxygen will then generate output that is tailored for
# VHDL.
OPTIMIZE_OUTPUT_VHDL = NO
-# Doxygen selects the parser to use depending on the extension of the files it parses.
-# With this tag you can assign which parser to use for a given extension.
-# Doxygen has a built-in mapping, but you can override or extend it using this tag.
-# The format is ext=language, where ext is a file extension, and language is one of
-# the parsers supported by doxygen: IDL, Java, Javascript, C#, C, C++, D, PHP,
-# Objective-C, Python, Fortran, VHDL, C, C++. For instance to make doxygen treat
-# .inc files as Fortran files (default is PHP), and .f files as C (default is Fortran),
+# Doxygen selects the parser to use depending on the extension of the files it parses.
+# With this tag you can assign which parser to use for a given extension.
+# Doxygen has a built-in mapping, but you can override or extend it using this tag.
+# The format is ext=language, where ext is a file extension, and language is one of
+# the parsers supported by doxygen: IDL, Java, Javascript, C#, C, C++, D, PHP,
+# Objective-C, Python, Fortran, VHDL, C, C++. For instance to make doxygen treat
+# .inc files as Fortran files (default is PHP), and .f files as C (default is Fortran),
# use: inc=Fortran f=C. Note that for custom extensions you also need to set
# FILE_PATTERNS otherwise the files are not read by doxygen.
-EXTENSION_MAPPING =
+EXTENSION_MAPPING =
-# If you use STL classes (i.e. std::string, std::vector, etc.) but do not want
-# to include (a tag file for) the STL sources as input, then you should
-# set this tag to YES in order to let doxygen match functions declarations and
-# definitions whose arguments contain STL classes (e.g. func(std::string); v.s.
-# func(std::string) {}). This also make the inheritance and collaboration
+# If you use STL classes (i.e. std::string, std::vector, etc.) but do not want
+# to include (a tag file for) the STL sources as input, then you should
+# set this tag to YES in order to let doxygen match functions declarations and
+# definitions whose arguments contain STL classes (e.g. func(std::string); v.s.
+# func(std::string) {}). This also make the inheritance and collaboration
# diagrams that involve STL classes more complete and accurate.
BUILTIN_STL_SUPPORT = NO
-# If you use Microsoft's C++/CLI language, you should set this option to YES to
+# If you use Microsoft's C++/CLI language, you should set this option to YES to
# enable parsing support.
CPP_CLI_SUPPORT = NO
-# Set the SIP_SUPPORT tag to YES if your project consists of sip sources only.
-# Doxygen will parse them like normal C++ but will assume all classes use public
+# Set the SIP_SUPPORT tag to YES if your project consists of sip sources only.
+# Doxygen will parse them like normal C++ but will assume all classes use public
# instead of private inheritance when no explicit protection keyword is present.
SIP_SUPPORT = NO
-# For Microsoft's IDL there are propget and propput attributes to indicate getter
-# and setter methods for a property. Setting this option to YES (the default)
-# will make doxygen to replace the get and set methods by a property in the
-# documentation. This will only work if the methods are indeed getting or
-# setting a simple type. If this is not the case, or you want to show the
+# For Microsoft's IDL there are propget and propput attributes to indicate getter
+# and setter methods for a property. Setting this option to YES (the default)
+# will make doxygen to replace the get and set methods by a property in the
+# documentation. This will only work if the methods are indeed getting or
+# setting a simple type. If this is not the case, or you want to show the
# methods anyway, you should set this option to NO.
IDL_PROPERTY_SUPPORT = YES
-# If member grouping is used in the documentation and the DISTRIBUTE_GROUP_DOC
-# tag is set to YES, then doxygen will reuse the documentation of the first
-# member in the group (if any) for the other members of the group. By default
+# If member grouping is used in the documentation and the DISTRIBUTE_GROUP_DOC
+# tag is set to YES, then doxygen will reuse the documentation of the first
+# member in the group (if any) for the other members of the group. By default
# all members of a group must be documented explicitly.
DISTRIBUTE_GROUP_DOC = NO
-# Set the SUBGROUPING tag to YES (the default) to allow class member groups of
-# the same type (for instance a group of public functions) to be put as a
-# subgroup of that type (e.g. under the Public Functions section). Set it to
-# NO to prevent subgrouping. Alternatively, this can be done per class using
+# Set the SUBGROUPING tag to YES (the default) to allow class member groups of
+# the same type (for instance a group of public functions) to be put as a
+# subgroup of that type (e.g. under the Public Functions section). Set it to
+# NO to prevent subgrouping. Alternatively, this can be done per class using
# the \nosubgrouping command.
SUBGROUPING = YES
-# When TYPEDEF_HIDES_STRUCT is enabled, a typedef of a struct, union, or enum
-# is documented as struct, union, or enum with the name of the typedef. So
-# typedef struct TypeS {} TypeT, will appear in the documentation as a struct
-# with name TypeT. When disabled the typedef will appear as a member of a file,
-# namespace, or class. And the struct will be named TypeS. This can typically
-# be useful for C code in case the coding convention dictates that all compound
+# When TYPEDEF_HIDES_STRUCT is enabled, a typedef of a struct, union, or enum
+# is documented as struct, union, or enum with the name of the typedef. So
+# typedef struct TypeS {} TypeT, will appear in the documentation as a struct
+# with name TypeT. When disabled the typedef will appear as a member of a file,
+# namespace, or class. And the struct will be named TypeS. This can typically
+# be useful for C code in case the coding convention dictates that all compound
# types are typedef'ed and only the typedef is referenced, never the tag name.
TYPEDEF_HIDES_STRUCT = NO
-# The SYMBOL_CACHE_SIZE determines the size of the internal cache use to
-# determine which symbols to keep in memory and which to flush to disk.
-# When the cache is full, less often used symbols will be written to disk.
-# For small to medium size projects (<1000 input files) the default value is
-# probably good enough. For larger projects a too small cache size can cause
-# doxygen to be busy swapping symbols to and from disk most of the time
-# causing a significant performance penality.
-# If the system has enough physical memory increasing the cache will improve the
-# performance by keeping more symbols in memory. Note that the value works on
-# a logarithmic scale so increasing the size by one will rougly double the
-# memory usage. The cache size is given by this formula:
-# 2^(16+SYMBOL_CACHE_SIZE). The valid range is 0..9, the default is 0,
+# The SYMBOL_CACHE_SIZE determines the size of the internal cache use to
+# determine which symbols to keep in memory and which to flush to disk.
+# When the cache is full, less often used symbols will be written to disk.
+# For small to medium size projects (<1000 input files) the default value is
+# probably good enough. For larger projects a too small cache size can cause
+# doxygen to be busy swapping symbols to and from disk most of the time
+# causing a significant performance penality.
+# If the system has enough physical memory increasing the cache will improve the
+# performance by keeping more symbols in memory. Note that the value works on
+# a logarithmic scale so increasing the size by one will rougly double the
+# memory usage. The cache size is given by this formula:
+# 2^(16+SYMBOL_CACHE_SIZE). The valid range is 0..9, the default is 0,
# corresponding to a cache size of 2^16 = 65536 symbols
SYMBOL_CACHE_SIZE = 0
@@ -303,121 +303,121 @@ SYMBOL_CACHE_SIZE = 0
# Build related configuration options
#---------------------------------------------------------------------------
-# If the EXTRACT_ALL tag is set to YES doxygen will assume all entities in
-# documentation are documented, even if no documentation was available.
-# Private class members and static file members will be hidden unless
+# If the EXTRACT_ALL tag is set to YES doxygen will assume all entities in
+# documentation are documented, even if no documentation was available.
+# Private class members and static file members will be hidden unless
# the EXTRACT_PRIVATE and EXTRACT_STATIC tags are set to YES
EXTRACT_ALL = NO
-# If the EXTRACT_PRIVATE tag is set to YES all private members of a class
+# If the EXTRACT_PRIVATE tag is set to YES all private members of a class
# will be included in the documentation.
EXTRACT_PRIVATE = NO
-# If the EXTRACT_STATIC tag is set to YES all static members of a file
+# If the EXTRACT_STATIC tag is set to YES all static members of a file
# will be included in the documentation.
EXTRACT_STATIC = NO
-# If the EXTRACT_LOCAL_CLASSES tag is set to YES classes (and structs)
-# defined locally in source files will be included in the documentation.
+# If the EXTRACT_LOCAL_CLASSES tag is set to YES classes (and structs)
+# defined locally in source files will be included in the documentation.
# If set to NO only classes defined in header files are included.
EXTRACT_LOCAL_CLASSES = YES
-# This flag is only useful for Objective-C code. When set to YES local
-# methods, which are defined in the implementation section but not in
-# the interface are included in the documentation.
+# This flag is only useful for Objective-C code. When set to YES local
+# methods, which are defined in the implementation section but not in
+# the interface are included in the documentation.
# If set to NO (the default) only methods in the interface are included.
EXTRACT_LOCAL_METHODS = NO
-# If this flag is set to YES, the members of anonymous namespaces will be
-# extracted and appear in the documentation as a namespace called
-# 'anonymous_namespace{file}', where file will be replaced with the base
-# name of the file that contains the anonymous namespace. By default
+# If this flag is set to YES, the members of anonymous namespaces will be
+# extracted and appear in the documentation as a namespace called
+# 'anonymous_namespace{file}', where file will be replaced with the base
+# name of the file that contains the anonymous namespace. By default
# anonymous namespace are hidden.
EXTRACT_ANON_NSPACES = NO
-# If the HIDE_UNDOC_MEMBERS tag is set to YES, Doxygen will hide all
-# undocumented members of documented classes, files or namespaces.
-# If set to NO (the default) these members will be included in the
-# various overviews, but no documentation section is generated.
+# If the HIDE_UNDOC_MEMBERS tag is set to YES, Doxygen will hide all
+# undocumented members of documented classes, files or namespaces.
+# If set to NO (the default) these members will be included in the
+# various overviews, but no documentation section is generated.
# This option has no effect if EXTRACT_ALL is enabled.
HIDE_UNDOC_MEMBERS = YES
-# If the HIDE_UNDOC_CLASSES tag is set to YES, Doxygen will hide all
-# undocumented classes that are normally visible in the class hierarchy.
-# If set to NO (the default) these classes will be included in the various
+# If the HIDE_UNDOC_CLASSES tag is set to YES, Doxygen will hide all
+# undocumented classes that are normally visible in the class hierarchy.
+# If set to NO (the default) these classes will be included in the various
# overviews. This option has no effect if EXTRACT_ALL is enabled.
HIDE_UNDOC_CLASSES = YES
-# If the HIDE_FRIEND_COMPOUNDS tag is set to YES, Doxygen will hide all
-# friend (class|struct|union) declarations.
-# If set to NO (the default) these declarations will be included in the
+# If the HIDE_FRIEND_COMPOUNDS tag is set to YES, Doxygen will hide all
+# friend (class|struct|union) declarations.
+# If set to NO (the default) these declarations will be included in the
# documentation.
HIDE_FRIEND_COMPOUNDS = NO
-# If the HIDE_IN_BODY_DOCS tag is set to YES, Doxygen will hide any
-# documentation blocks found inside the body of a function.
-# If set to NO (the default) these blocks will be appended to the
+# If the HIDE_IN_BODY_DOCS tag is set to YES, Doxygen will hide any
+# documentation blocks found inside the body of a function.
+# If set to NO (the default) these blocks will be appended to the
# function's detailed documentation block.
HIDE_IN_BODY_DOCS = NO
-# The INTERNAL_DOCS tag determines if documentation
-# that is typed after a \internal command is included. If the tag is set
-# to NO (the default) then the documentation will be excluded.
+# The INTERNAL_DOCS tag determines if documentation
+# that is typed after a \internal command is included. If the tag is set
+# to NO (the default) then the documentation will be excluded.
# Set it to YES to include the internal documentation.
INTERNAL_DOCS = NO
-# If the CASE_SENSE_NAMES tag is set to NO then Doxygen will only generate
-# file names in lower-case letters. If set to YES upper-case letters are also
-# allowed. This is useful if you have classes or files whose names only differ
-# in case and if your file system supports case sensitive file names. Windows
+# If the CASE_SENSE_NAMES tag is set to NO then Doxygen will only generate
+# file names in lower-case letters. If set to YES upper-case letters are also
+# allowed. This is useful if you have classes or files whose names only differ
+# in case and if your file system supports case sensitive file names. Windows
# and Mac users are advised to set this option to NO.
CASE_SENSE_NAMES = NO
-# If the HIDE_SCOPE_NAMES tag is set to NO (the default) then Doxygen
-# will show members with their full class and namespace scopes in the
+# If the HIDE_SCOPE_NAMES tag is set to NO (the default) then Doxygen
+# will show members with their full class and namespace scopes in the
# documentation. If set to YES the scope will be hidden.
HIDE_SCOPE_NAMES = NO
-# If the SHOW_INCLUDE_FILES tag is set to YES (the default) then Doxygen
-# will put a list of the files that are included by a file in the documentation
+# If the SHOW_INCLUDE_FILES tag is set to YES (the default) then Doxygen
+# will put a list of the files that are included by a file in the documentation
# of that file.
SHOW_INCLUDE_FILES = YES
-# If the FORCE_LOCAL_INCLUDES tag is set to YES then Doxygen
-# will list include files with double quotes in the documentation
+# If the FORCE_LOCAL_INCLUDES tag is set to YES then Doxygen
+# will list include files with double quotes in the documentation
# rather than with sharp brackets.
FORCE_LOCAL_INCLUDES = NO
-# If the INLINE_INFO tag is set to YES (the default) then a tag [inline]
+# If the INLINE_INFO tag is set to YES (the default) then a tag [inline]
# is inserted in the documentation for inline members.
INLINE_INFO = YES
-# If the SORT_MEMBER_DOCS tag is set to YES (the default) then doxygen
-# will sort the (detailed) documentation of file and class members
-# alphabetically by member name. If set to NO the members will appear in
+# If the SORT_MEMBER_DOCS tag is set to YES (the default) then doxygen
+# will sort the (detailed) documentation of file and class members
+# alphabetically by member name. If set to NO the members will appear in
# declaration order.
SORT_MEMBER_DOCS = YES
-# If the SORT_BRIEF_DOCS tag is set to YES then doxygen will sort the
-# brief documentation of file, namespace and class members alphabetically
-# by member name. If set to NO (the default) the members will appear in
+# If the SORT_BRIEF_DOCS tag is set to YES then doxygen will sort the
+# brief documentation of file, namespace and class members alphabetically
+# by member name. If set to NO (the default) the members will appear in
# declaration order.
SORT_BRIEF_DOCS = NO
@@ -432,179 +432,179 @@ SORT_BRIEF_DOCS = NO
SORT_MEMBERS_CTORS_1ST = NO
-# If the SORT_GROUP_NAMES tag is set to YES then doxygen will sort the
-# hierarchy of group names into alphabetical order. If set to NO (the default)
+# If the SORT_GROUP_NAMES tag is set to YES then doxygen will sort the
+# hierarchy of group names into alphabetical order. If set to NO (the default)
# the group names will appear in their defined order.
SORT_GROUP_NAMES = NO
-# If the SORT_BY_SCOPE_NAME tag is set to YES, the class list will be
-# sorted by fully-qualified names, including namespaces. If set to
-# NO (the default), the class list will be sorted only by class name,
-# not including the namespace part.
-# Note: This option is not very useful if HIDE_SCOPE_NAMES is set to YES.
-# Note: This option applies only to the class list, not to the
+# If the SORT_BY_SCOPE_NAME tag is set to YES, the class list will be
+# sorted by fully-qualified names, including namespaces. If set to
+# NO (the default), the class list will be sorted only by class name,
+# not including the namespace part.
+# Note: This option is not very useful if HIDE_SCOPE_NAMES is set to YES.
+# Note: This option applies only to the class list, not to the
# alphabetical list.
SORT_BY_SCOPE_NAME = NO
-# The GENERATE_TODOLIST tag can be used to enable (YES) or
-# disable (NO) the todo list. This list is created by putting \todo
+# The GENERATE_TODOLIST tag can be used to enable (YES) or
+# disable (NO) the todo list. This list is created by putting \todo
# commands in the documentation.
GENERATE_TODOLIST = YES
-# The GENERATE_TESTLIST tag can be used to enable (YES) or
-# disable (NO) the test list. This list is created by putting \test
+# The GENERATE_TESTLIST tag can be used to enable (YES) or
+# disable (NO) the test list. This list is created by putting \test
# commands in the documentation.
GENERATE_TESTLIST = YES
-# The GENERATE_BUGLIST tag can be used to enable (YES) or
-# disable (NO) the bug list. This list is created by putting \bug
+# The GENERATE_BUGLIST tag can be used to enable (YES) or
+# disable (NO) the bug list. This list is created by putting \bug
# commands in the documentation.
GENERATE_BUGLIST = YES
-# The GENERATE_DEPRECATEDLIST tag can be used to enable (YES) or
-# disable (NO) the deprecated list. This list is created by putting
+# The GENERATE_DEPRECATEDLIST tag can be used to enable (YES) or
+# disable (NO) the deprecated list. This list is created by putting
# \deprecated commands in the documentation.
GENERATE_DEPRECATEDLIST= YES
-# The ENABLED_SECTIONS tag can be used to enable conditional
+# The ENABLED_SECTIONS tag can be used to enable conditional
# documentation sections, marked by \if sectionname ... \endif.
-ENABLED_SECTIONS =
+ENABLED_SECTIONS =
-# The MAX_INITIALIZER_LINES tag determines the maximum number of lines
-# the initial value of a variable or define consists of for it to appear in
-# the documentation. If the initializer consists of more lines than specified
-# here it will be hidden. Use a value of 0 to hide initializers completely.
-# The appearance of the initializer of individual variables and defines in the
-# documentation can be controlled using \showinitializer or \hideinitializer
+# The MAX_INITIALIZER_LINES tag determines the maximum number of lines
+# the initial value of a variable or define consists of for it to appear in
+# the documentation. If the initializer consists of more lines than specified
+# here it will be hidden. Use a value of 0 to hide initializers completely.
+# The appearance of the initializer of individual variables and defines in the
+# documentation can be controlled using \showinitializer or \hideinitializer
# command in the documentation regardless of this setting.
MAX_INITIALIZER_LINES = 30
-# Set the SHOW_USED_FILES tag to NO to disable the list of files generated
-# at the bottom of the documentation of classes and structs. If set to YES the
+# Set the SHOW_USED_FILES tag to NO to disable the list of files generated
+# at the bottom of the documentation of classes and structs. If set to YES the
# list will mention the files that were used to generate the documentation.
SHOW_USED_FILES = YES
-# If the sources in your project are distributed over multiple directories
-# then setting the SHOW_DIRECTORIES tag to YES will show the directory hierarchy
+# If the sources in your project are distributed over multiple directories
+# then setting the SHOW_DIRECTORIES tag to YES will show the directory hierarchy
# in the documentation. The default is NO.
SHOW_DIRECTORIES = NO
-# Set the SHOW_FILES tag to NO to disable the generation of the Files page.
-# This will remove the Files entry from the Quick Index and from the
+# Set the SHOW_FILES tag to NO to disable the generation of the Files page.
+# This will remove the Files entry from the Quick Index and from the
# Folder Tree View (if specified). The default is YES.
SHOW_FILES = YES
-# Set the SHOW_NAMESPACES tag to NO to disable the generation of the
-# Namespaces page. This will remove the Namespaces entry from the Quick Index
+# Set the SHOW_NAMESPACES tag to NO to disable the generation of the
+# Namespaces page. This will remove the Namespaces entry from the Quick Index
# and from the Folder Tree View (if specified). The default is YES.
SHOW_NAMESPACES = YES
-# The FILE_VERSION_FILTER tag can be used to specify a program or script that
-# doxygen should invoke to get the current version for each file (typically from
-# the version control system). Doxygen will invoke the program by executing (via
-# popen()) the command , where is the value of
-# the FILE_VERSION_FILTER tag, and is the name of an input file
-# provided by doxygen. Whatever the program writes to standard output
+# The FILE_VERSION_FILTER tag can be used to specify a program or script that
+# doxygen should invoke to get the current version for each file (typically from
+# the version control system). Doxygen will invoke the program by executing (via
+# popen()) the command , where is the value of
+# the FILE_VERSION_FILTER tag, and is the name of an input file
+# provided by doxygen. Whatever the program writes to standard output
# is used as the file version. See the manual for examples.
-FILE_VERSION_FILTER =
+FILE_VERSION_FILTER =
-# The LAYOUT_FILE tag can be used to specify a layout file which will be parsed by
-# doxygen. The layout file controls the global structure of the generated output files
-# in an output format independent way. The create the layout file that represents
-# doxygen's defaults, run doxygen with the -l option. You can optionally specify a
-# file name after the option, if omitted DoxygenLayout.xml will be used as the name
+# The LAYOUT_FILE tag can be used to specify a layout file which will be parsed by
+# doxygen. The layout file controls the global structure of the generated output files
+# in an output format independent way. The create the layout file that represents
+# doxygen's defaults, run doxygen with the -l option. You can optionally specify a
+# file name after the option, if omitted DoxygenLayout.xml will be used as the name
# of the layout file.
-LAYOUT_FILE =
+LAYOUT_FILE =
#---------------------------------------------------------------------------
# configuration options related to warning and progress messages
#---------------------------------------------------------------------------
-# The QUIET tag can be used to turn on/off the messages that are generated
+# The QUIET tag can be used to turn on/off the messages that are generated
# by doxygen. Possible values are YES and NO. If left blank NO is used.
QUIET = NO
-# The WARNINGS tag can be used to turn on/off the warning messages that are
-# generated by doxygen. Possible values are YES and NO. If left blank
+# The WARNINGS tag can be used to turn on/off the warning messages that are
+# generated by doxygen. Possible values are YES and NO. If left blank
# NO is used.
WARNINGS = YES
-# If WARN_IF_UNDOCUMENTED is set to YES, then doxygen will generate warnings
-# for undocumented members. If EXTRACT_ALL is set to YES then this flag will
+# If WARN_IF_UNDOCUMENTED is set to YES, then doxygen will generate warnings
+# for undocumented members. If EXTRACT_ALL is set to YES then this flag will
# automatically be disabled.
WARN_IF_UNDOCUMENTED = YES
-# If WARN_IF_DOC_ERROR is set to YES, doxygen will generate warnings for
-# potential errors in the documentation, such as not documenting some
-# parameters in a documented function, or documenting parameters that
+# If WARN_IF_DOC_ERROR is set to YES, doxygen will generate warnings for
+# potential errors in the documentation, such as not documenting some
+# parameters in a documented function, or documenting parameters that
# don't exist or using markup commands wrongly.
WARN_IF_DOC_ERROR = YES
-# This WARN_NO_PARAMDOC option can be abled to get warnings for
-# functions that are documented, but have no documentation for their parameters
-# or return value. If set to NO (the default) doxygen will only warn about
-# wrong or incomplete parameter documentation, but not about the absence of
+# This WARN_NO_PARAMDOC option can be abled to get warnings for
+# functions that are documented, but have no documentation for their parameters
+# or return value. If set to NO (the default) doxygen will only warn about
+# wrong or incomplete parameter documentation, but not about the absence of
# documentation.
WARN_NO_PARAMDOC = NO
-# The WARN_FORMAT tag determines the format of the warning messages that
-# doxygen can produce. The string should contain the $file, $line, and $text
-# tags, which will be replaced by the file and line number from which the
-# warning originated and the warning text. Optionally the format may contain
-# $version, which will be replaced by the version of the file (if it could
+# The WARN_FORMAT tag determines the format of the warning messages that
+# doxygen can produce. The string should contain the $file, $line, and $text
+# tags, which will be replaced by the file and line number from which the
+# warning originated and the warning text. Optionally the format may contain
+# $version, which will be replaced by the version of the file (if it could
# be obtained via FILE_VERSION_FILTER)
WARN_FORMAT = "$file:$line: $text"
-# The WARN_LOGFILE tag can be used to specify a file to which warning
-# and error messages should be written. If left blank the output is written
+# The WARN_LOGFILE tag can be used to specify a file to which warning
+# and error messages should be written. If left blank the output is written
# to stderr.
-WARN_LOGFILE =
+WARN_LOGFILE =
#---------------------------------------------------------------------------
# configuration options related to the input files
#---------------------------------------------------------------------------
-# The INPUT tag can be used to specify the files and/or directories that contain
-# documented source files. You may enter file names like "myfile.cpp" or
-# directories like "/usr/src/myproject". Separate the files or directories
+# The INPUT tag can be used to specify the files and/or directories that contain
+# documented source files. You may enter file names like "myfile.cpp" or
+# directories like "/usr/src/myproject". Separate the files or directories
# with spaces.
INPUT = .
-# This tag can be used to specify the character encoding of the source files
-# that doxygen parses. Internally doxygen uses the UTF-8 encoding, which is
-# also the default input encoding. Doxygen uses libiconv (or the iconv built
-# into libc) for the transcoding. See http://www.gnu.org/software/libiconv for
+# This tag can be used to specify the character encoding of the source files
+# that doxygen parses. Internally doxygen uses the UTF-8 encoding, which is
+# also the default input encoding. Doxygen uses libiconv (or the iconv built
+# into libc) for the transcoding. See http://www.gnu.org/software/libiconv for
# the list of possible encodings.
INPUT_ENCODING = UTF-8
-# If the value of the INPUT tag contains directories, you can use the
-# FILE_PATTERNS tag to specify one or more wildcard pattern (like *.cpp
-# and *.h) to filter out the source-files in the directories. If left
-# blank the following patterns are tested:
-# *.c *.cc *.cxx *.cpp *.c++ *.java *.ii *.ixx *.ipp *.i++ *.inl *.h *.hh *.hxx
+# If the value of the INPUT tag contains directories, you can use the
+# FILE_PATTERNS tag to specify one or more wildcard pattern (like *.cpp
+# and *.h) to filter out the source-files in the directories. If left
+# blank the following patterns are tested:
+# *.c *.cc *.cxx *.cpp *.c++ *.java *.ii *.ixx *.ipp *.i++ *.inl *.h *.hh *.hxx
# *.hpp *.h++ *.idl *.odl *.cs *.php *.php3 *.inc *.m *.mm *.py *.f90
FILE_PATTERNS = *.c \
@@ -649,91 +649,91 @@ FILE_PATTERNS = *.c \
*.MM \
*.PY
-# The RECURSIVE tag can be used to turn specify whether or not subdirectories
-# should be searched for input files as well. Possible values are YES and NO.
+# The RECURSIVE tag can be used to turn specify whether or not subdirectories
+# should be searched for input files as well. Possible values are YES and NO.
# If left blank NO is used.
RECURSIVE = YES
-# The EXCLUDE tag can be used to specify files and/or directories that should
-# excluded from the INPUT source files. This way you can easily exclude a
+# The EXCLUDE tag can be used to specify files and/or directories that should
+# excluded from the INPUT source files. This way you can easily exclude a
# subdirectory from a directory tree whose root is specified with the INPUT tag.
EXCLUDE = libs/numeric/mtl/doc/* \
libs/numeric/mtl/doc-complete/* \
packages
-# The EXCLUDE_SYMLINKS tag can be used select whether or not files or
-# directories that are symbolic links (a Unix filesystem feature) are excluded
+# The EXCLUDE_SYMLINKS tag can be used select whether or not files or
+# directories that are symbolic links (a Unix filesystem feature) are excluded
# from the input.
EXCLUDE_SYMLINKS = NO
-# If the value of the INPUT tag contains directories, you can use the
-# EXCLUDE_PATTERNS tag to specify one or more wildcard patterns to exclude
-# certain files from those directories. Note that the wildcards are matched
-# against the file with absolute path, so to exclude all test directories
+# If the value of the INPUT tag contains directories, you can use the
+# EXCLUDE_PATTERNS tag to specify one or more wildcard patterns to exclude
+# certain files from those directories. Note that the wildcards are matched
+# against the file with absolute path, so to exclude all test directories
# for example use the pattern */test/*
EXCLUDE_PATTERNS = .svn
-# The EXCLUDE_SYMBOLS tag can be used to specify one or more symbol names
-# (namespaces, classes, functions, etc.) that should be excluded from the
-# output. The symbol name can be a fully qualified name, a word, or if the
-# wildcard * is used, a substring. Examples: ANamespace, AClass,
+# The EXCLUDE_SYMBOLS tag can be used to specify one or more symbol names
+# (namespaces, classes, functions, etc.) that should be excluded from the
+# output. The symbol name can be a fully qualified name, a word, or if the
+# wildcard * is used, a substring. Examples: ANamespace, AClass,
# AClass::ANamespace, ANamespace::*Test
-EXCLUDE_SYMBOLS =
+EXCLUDE_SYMBOLS =
-# The EXAMPLE_PATH tag can be used to specify one or more files or
-# directories that contain example code fragments that are included (see
+# The EXAMPLE_PATH tag can be used to specify one or more files or
+# directories that contain example code fragments that are included (see
# the \include command).
EXAMPLE_PATH = libs/numeric/mtl/examples \
boost/numeric/itl/krylov \
libs/numeric/mtl/experimental
-# If the value of the EXAMPLE_PATH tag contains directories, you can use the
-# EXAMPLE_PATTERNS tag to specify one or more wildcard pattern (like *.cpp
-# and *.h) to filter out the source-files in the directories. If left
+# If the value of the EXAMPLE_PATH tag contains directories, you can use the
+# EXAMPLE_PATTERNS tag to specify one or more wildcard pattern (like *.cpp
+# and *.h) to filter out the source-files in the directories. If left
# blank all files are included.
EXAMPLE_PATTERNS = *.*pp
-# If the EXAMPLE_RECURSIVE tag is set to YES then subdirectories will be
-# searched for input files to be used with the \include or \dontinclude
-# commands irrespective of the value of the RECURSIVE tag.
+# If the EXAMPLE_RECURSIVE tag is set to YES then subdirectories will be
+# searched for input files to be used with the \include or \dontinclude
+# commands irrespective of the value of the RECURSIVE tag.
# Possible values are YES and NO. If left blank NO is used.
EXAMPLE_RECURSIVE = NO
-# The IMAGE_PATH tag can be used to specify one or more files or
-# directories that contain image that are included in the documentation (see
+# The IMAGE_PATH tag can be used to specify one or more files or
+# directories that contain image that are included in the documentation (see
# the \image command).
IMAGE_PATH = libs/numeric/mtl/examples/images
-# The INPUT_FILTER tag can be used to specify a program that doxygen should
-# invoke to filter for each input file. Doxygen will invoke the filter program
-# by executing (via popen()) the command , where
-# is the value of the INPUT_FILTER tag, and is the name of an
-# input file. Doxygen will then use the output that the filter program writes
-# to standard output. If FILTER_PATTERNS is specified, this tag will be
+# The INPUT_FILTER tag can be used to specify a program that doxygen should
+# invoke to filter for each input file. Doxygen will invoke the filter program
+# by executing (via popen()) the command , where
+# is the value of the INPUT_FILTER tag, and is the name of an
+# input file. Doxygen will then use the output that the filter program writes
+# to standard output. If FILTER_PATTERNS is specified, this tag will be
# ignored.
-INPUT_FILTER =
+INPUT_FILTER =
-# The FILTER_PATTERNS tag can be used to specify filters on a per file pattern
-# basis. Doxygen will compare the file name with each pattern and apply the
-# filter if there is a match. The filters are a list of the form:
-# pattern=filter (like *.cpp=my_cpp_filter). See INPUT_FILTER for further
-# info on how filters are used. If FILTER_PATTERNS is empty, INPUT_FILTER
+# The FILTER_PATTERNS tag can be used to specify filters on a per file pattern
+# basis. Doxygen will compare the file name with each pattern and apply the
+# filter if there is a match. The filters are a list of the form:
+# pattern=filter (like *.cpp=my_cpp_filter). See INPUT_FILTER for further
+# info on how filters are used. If FILTER_PATTERNS is empty, INPUT_FILTER
# is applied to all files.
-FILTER_PATTERNS =
+FILTER_PATTERNS =
-# If the FILTER_SOURCE_FILES tag is set to YES, the input filter (if set using
-# INPUT_FILTER) will be used to filter the input files when producing source
+# If the FILTER_SOURCE_FILES tag is set to YES, the input filter (if set using
+# INPUT_FILTER) will be used to filter the input files when producing source
# files to browse (i.e. when SOURCE_BROWSER is set to YES).
FILTER_SOURCE_FILES = NO
@@ -742,53 +742,53 @@ FILTER_SOURCE_FILES = NO
# configuration options related to source browsing
#---------------------------------------------------------------------------
-# If the SOURCE_BROWSER tag is set to YES then a list of source files will
-# be generated. Documented entities will be cross-referenced with these sources.
-# Note: To get rid of all source code in the generated output, make sure also
+# If the SOURCE_BROWSER tag is set to YES then a list of source files will
+# be generated. Documented entities will be cross-referenced with these sources.
+# Note: To get rid of all source code in the generated output, make sure also
# VERBATIM_HEADERS is set to NO.
SOURCE_BROWSER = YES
-# Setting the INLINE_SOURCES tag to YES will include the body
+# Setting the INLINE_SOURCES tag to YES will include the body
# of functions and classes directly in the documentation.
INLINE_SOURCES = NO
-# Setting the STRIP_CODE_COMMENTS tag to YES (the default) will instruct
-# doxygen to hide any special comment blocks from generated source code
+# Setting the STRIP_CODE_COMMENTS tag to YES (the default) will instruct
+# doxygen to hide any special comment blocks from generated source code
# fragments. Normal C and C++ comments will always remain visible.
STRIP_CODE_COMMENTS = YES
-# If the REFERENCED_BY_RELATION tag is set to YES
-# then for each documented function all documented
+# If the REFERENCED_BY_RELATION tag is set to YES
+# then for each documented function all documented
# functions referencing it will be listed.
REFERENCED_BY_RELATION = NO
-# If the REFERENCES_RELATION tag is set to YES
-# then for each documented function all documented entities
+# If the REFERENCES_RELATION tag is set to YES
+# then for each documented function all documented entities
# called/used by that function will be listed.
REFERENCES_RELATION = NO
-# If the REFERENCES_LINK_SOURCE tag is set to YES (the default)
-# and SOURCE_BROWSER tag is set to YES, then the hyperlinks from
-# functions in REFERENCES_RELATION and REFERENCED_BY_RELATION lists will
+# If the REFERENCES_LINK_SOURCE tag is set to YES (the default)
+# and SOURCE_BROWSER tag is set to YES, then the hyperlinks from
+# functions in REFERENCES_RELATION and REFERENCED_BY_RELATION lists will
# link to the source code. Otherwise they will link to the documentation.
REFERENCES_LINK_SOURCE = YES
-# If the USE_HTAGS tag is set to YES then the references to source code
-# will point to the HTML generated by the htags(1) tool instead of doxygen
-# built-in source browser. The htags tool is part of GNU's global source
-# tagging system (see http://www.gnu.org/software/global/global.html). You
+# If the USE_HTAGS tag is set to YES then the references to source code
+# will point to the HTML generated by the htags(1) tool instead of doxygen
+# built-in source browser. The htags tool is part of GNU's global source
+# tagging system (see http://www.gnu.org/software/global/global.html). You
# will need version 4.8.6 or higher.
USE_HTAGS = NO
-# If the VERBATIM_HEADERS tag is set to YES (the default) then Doxygen
-# will generate a verbatim copy of the header file for each class for
+# If the VERBATIM_HEADERS tag is set to YES (the default) then Doxygen
+# will generate a verbatim copy of the header file for each class for
# which an include is specified. Set to NO to disable this.
VERBATIM_HEADERS = YES
@@ -797,279 +797,279 @@ VERBATIM_HEADERS = YES
# configuration options related to the alphabetical class index
#---------------------------------------------------------------------------
-# If the ALPHABETICAL_INDEX tag is set to YES, an alphabetical index
-# of all compounds will be generated. Enable this if the project
+# If the ALPHABETICAL_INDEX tag is set to YES, an alphabetical index
+# of all compounds will be generated. Enable this if the project
# contains a lot of classes, structs, unions or interfaces.
ALPHABETICAL_INDEX = YES
-# If the alphabetical index is enabled (see ALPHABETICAL_INDEX) then
-# the COLS_IN_ALPHA_INDEX tag can be used to specify the number of columns
+# If the alphabetical index is enabled (see ALPHABETICAL_INDEX) then
+# the COLS_IN_ALPHA_INDEX tag can be used to specify the number of columns
# in which this list will be split (can be a number in the range [1..20])
COLS_IN_ALPHA_INDEX = 5
-# In case all classes in a project start with a common prefix, all
-# classes will be put under the same header in the alphabetical index.
-# The IGNORE_PREFIX tag can be used to specify one or more prefixes that
+# In case all classes in a project start with a common prefix, all
+# classes will be put under the same header in the alphabetical index.
+# The IGNORE_PREFIX tag can be used to specify one or more prefixes that
# should be ignored while generating the index headers.
-IGNORE_PREFIX =
+IGNORE_PREFIX =
#---------------------------------------------------------------------------
# configuration options related to the HTML output
#---------------------------------------------------------------------------
-# If the GENERATE_HTML tag is set to YES (the default) Doxygen will
+# If the GENERATE_HTML tag is set to YES (the default) Doxygen will
# generate HTML output.
GENERATE_HTML = YES
-# The HTML_OUTPUT tag is used to specify where the HTML docs will be put.
-# If a relative path is entered the value of OUTPUT_DIRECTORY will be
+# The HTML_OUTPUT tag is used to specify where the HTML docs will be put.
+# If a relative path is entered the value of OUTPUT_DIRECTORY will be
# put in front of it. If left blank `html' will be used as the default path.
HTML_OUTPUT = html
-# The HTML_FILE_EXTENSION tag can be used to specify the file extension for
-# each generated HTML page (for example: .htm,.php,.asp). If it is left blank
+# The HTML_FILE_EXTENSION tag can be used to specify the file extension for
+# each generated HTML page (for example: .htm,.php,.asp). If it is left blank
# doxygen will generate files with .html extension.
HTML_FILE_EXTENSION = .html
-# The HTML_HEADER tag can be used to specify a personal HTML header for
-# each generated HTML page. If it is left blank doxygen will generate a
+# The HTML_HEADER tag can be used to specify a personal HTML header for
+# each generated HTML page. If it is left blank doxygen will generate a
# standard header.
HTML_HEADER = libs/numeric/mtl/examples/doxygen_header.html
-# The HTML_FOOTER tag can be used to specify a personal HTML footer for
-# each generated HTML page. If it is left blank doxygen will generate a
+# The HTML_FOOTER tag can be used to specify a personal HTML footer for
+# each generated HTML page. If it is left blank doxygen will generate a
# standard footer.
HTML_FOOTER = libs/numeric/mtl/examples/doxygen_footer.html
-# The HTML_STYLESHEET tag can be used to specify a user-defined cascading
-# style sheet that is used by each HTML page. It can be used to
-# fine-tune the look of the HTML output. If the tag is left blank doxygen
-# will generate a default style sheet. Note that doxygen will try to copy
-# the style sheet file to the HTML output directory, so don't put your own
+# The HTML_STYLESHEET tag can be used to specify a user-defined cascading
+# style sheet that is used by each HTML page. It can be used to
+# fine-tune the look of the HTML output. If the tag is left blank doxygen
+# will generate a default style sheet. Note that doxygen will try to copy
+# the style sheet file to the HTML output directory, so don't put your own
# stylesheet in the HTML output directory as well, or it will be erased!
-HTML_STYLESHEET =
+HTML_STYLESHEET =
-# If the HTML_TIMESTAMP tag is set to YES then the footer of each generated HTML
-# page will contain the date and time when the page was generated. Setting
+# If the HTML_TIMESTAMP tag is set to YES then the footer of each generated HTML
+# page will contain the date and time when the page was generated. Setting
# this to NO can help when comparing the output of multiple runs.
HTML_TIMESTAMP = YES
-# If the HTML_ALIGN_MEMBERS tag is set to YES, the members of classes,
-# files or namespaces will be aligned in HTML using tables. If set to
+# If the HTML_ALIGN_MEMBERS tag is set to YES, the members of classes,
+# files or namespaces will be aligned in HTML using tables. If set to
# NO a bullet list will be used.
HTML_ALIGN_MEMBERS = YES
-# If the HTML_DYNAMIC_SECTIONS tag is set to YES then the generated HTML
-# documentation will contain sections that can be hidden and shown after the
-# page has loaded. For this to work a browser that supports
-# JavaScript and DHTML is required (for instance Mozilla 1.0+, Firefox
+# If the HTML_DYNAMIC_SECTIONS tag is set to YES then the generated HTML
+# documentation will contain sections that can be hidden and shown after the
+# page has loaded. For this to work a browser that supports
+# JavaScript and DHTML is required (for instance Mozilla 1.0+, Firefox
# Netscape 6.0+, Internet explorer 5.0+, Konqueror, or Safari).
HTML_DYNAMIC_SECTIONS = NO
-# If the GENERATE_DOCSET tag is set to YES, additional index files
-# will be generated that can be used as input for Apple's Xcode 3
-# integrated development environment, introduced with OSX 10.5 (Leopard).
-# To create a documentation set, doxygen will generate a Makefile in the
-# HTML output directory. Running make will produce the docset in that
-# directory and running "make install" will install the docset in
-# ~/Library/Developer/Shared/Documentation/DocSets so that Xcode will find
-# it at startup.
+# If the GENERATE_DOCSET tag is set to YES, additional index files
+# will be generated that can be used as input for Apple's Xcode 3
+# integrated development environment, introduced with OSX 10.5 (Leopard).
+# To create a documentation set, doxygen will generate a Makefile in the
+# HTML output directory. Running make will produce the docset in that
+# directory and running "make install" will install the docset in
+# ~/Library/Developer/Shared/Documentation/DocSets so that Xcode will find
+# it at startup.
# See http://developer.apple.com/tools/creatingdocsetswithdoxygen.html for more information.
GENERATE_DOCSET = NO
-# When GENERATE_DOCSET tag is set to YES, this tag determines the name of the
-# feed. A documentation feed provides an umbrella under which multiple
-# documentation sets from a single provider (such as a company or product suite)
+# When GENERATE_DOCSET tag is set to YES, this tag determines the name of the
+# feed. A documentation feed provides an umbrella under which multiple
+# documentation sets from a single provider (such as a company or product suite)
# can be grouped.
DOCSET_FEEDNAME = "Doxygen generated docs"
-# When GENERATE_DOCSET tag is set to YES, this tag specifies a string that
-# should uniquely identify the documentation set bundle. This should be a
-# reverse domain-name style string, e.g. com.mycompany.MyDocSet. Doxygen
+# When GENERATE_DOCSET tag is set to YES, this tag specifies a string that
+# should uniquely identify the documentation set bundle. This should be a
+# reverse domain-name style string, e.g. com.mycompany.MyDocSet. Doxygen
# will append .docset to the name.
DOCSET_BUNDLE_ID = org.doxygen.Project
-# If the GENERATE_HTMLHELP tag is set to YES, additional index files
-# will be generated that can be used as input for tools like the
-# Microsoft HTML help workshop to generate a compiled HTML help file (.chm)
+# If the GENERATE_HTMLHELP tag is set to YES, additional index files
+# will be generated that can be used as input for tools like the
+# Microsoft HTML help workshop to generate a compiled HTML help file (.chm)
# of the generated HTML documentation.
GENERATE_HTMLHELP = NO
-# If the GENERATE_HTMLHELP tag is set to YES, the CHM_FILE tag can
-# be used to specify the file name of the resulting .chm file. You
-# can add a path in front of the file if the result should not be
+# If the GENERATE_HTMLHELP tag is set to YES, the CHM_FILE tag can
+# be used to specify the file name of the resulting .chm file. You
+# can add a path in front of the file if the result should not be
# written to the html output directory.
-CHM_FILE =
+CHM_FILE =
-# If the GENERATE_HTMLHELP tag is set to YES, the HHC_LOCATION tag can
-# be used to specify the location (absolute path including file name) of
-# the HTML help compiler (hhc.exe). If non-empty doxygen will try to run
+# If the GENERATE_HTMLHELP tag is set to YES, the HHC_LOCATION tag can
+# be used to specify the location (absolute path including file name) of
+# the HTML help compiler (hhc.exe). If non-empty doxygen will try to run
# the HTML help compiler on the generated index.hhp.
-HHC_LOCATION =
+HHC_LOCATION =
-# If the GENERATE_HTMLHELP tag is set to YES, the GENERATE_CHI flag
-# controls if a separate .chi index file is generated (YES) or that
+# If the GENERATE_HTMLHELP tag is set to YES, the GENERATE_CHI flag
+# controls if a separate .chi index file is generated (YES) or that
# it should be included in the master .chm file (NO).
GENERATE_CHI = NO
-# If the GENERATE_HTMLHELP tag is set to YES, the CHM_INDEX_ENCODING
-# is used to encode HtmlHelp index (hhk), content (hhc) and project file
+# If the GENERATE_HTMLHELP tag is set to YES, the CHM_INDEX_ENCODING
+# is used to encode HtmlHelp index (hhk), content (hhc) and project file
# content.
-CHM_INDEX_ENCODING =
+CHM_INDEX_ENCODING =
-# If the GENERATE_HTMLHELP tag is set to YES, the BINARY_TOC flag
-# controls whether a binary table of contents is generated (YES) or a
+# If the GENERATE_HTMLHELP tag is set to YES, the BINARY_TOC flag
+# controls whether a binary table of contents is generated (YES) or a
# normal table of contents (NO) in the .chm file.
BINARY_TOC = NO
-# The TOC_EXPAND flag can be set to YES to add extra items for group members
+# The TOC_EXPAND flag can be set to YES to add extra items for group members
# to the contents of the HTML help documentation and to the tree view.
TOC_EXPAND = NO
-# If the GENERATE_QHP tag is set to YES and both QHP_NAMESPACE and QHP_VIRTUAL_FOLDER
-# are set, an additional index file will be generated that can be used as input for
-# Qt's qhelpgenerator to generate a Qt Compressed Help (.qch) of the generated
+# If the GENERATE_QHP tag is set to YES and both QHP_NAMESPACE and QHP_VIRTUAL_FOLDER
+# are set, an additional index file will be generated that can be used as input for
+# Qt's qhelpgenerator to generate a Qt Compressed Help (.qch) of the generated
# HTML documentation.
GENERATE_QHP = NO
-# If the QHG_LOCATION tag is specified, the QCH_FILE tag can
-# be used to specify the file name of the resulting .qch file.
+# If the QHG_LOCATION tag is specified, the QCH_FILE tag can
+# be used to specify the file name of the resulting .qch file.
# The path specified is relative to the HTML output folder.
-QCH_FILE =
+QCH_FILE =
-# The QHP_NAMESPACE tag specifies the namespace to use when generating
-# Qt Help Project output. For more information please see
+# The QHP_NAMESPACE tag specifies the namespace to use when generating
+# Qt Help Project output. For more information please see
# http://doc.trolltech.com/qthelpproject.html#namespace
QHP_NAMESPACE = org.doxygen.Project
-# The QHP_VIRTUAL_FOLDER tag specifies the namespace to use when generating
-# Qt Help Project output. For more information please see
+# The QHP_VIRTUAL_FOLDER tag specifies the namespace to use when generating
+# Qt Help Project output. For more information please see
# http://doc.trolltech.com/qthelpproject.html#virtual-folders
QHP_VIRTUAL_FOLDER = doc
-# If QHP_CUST_FILTER_NAME is set, it specifies the name of a custom filter to add.
-# For more information please see
+# If QHP_CUST_FILTER_NAME is set, it specifies the name of a custom filter to add.
+# For more information please see
# http://doc.trolltech.com/qthelpproject.html#custom-filters
-QHP_CUST_FILTER_NAME =
+QHP_CUST_FILTER_NAME =
-# The QHP_CUST_FILT_ATTRS tag specifies the list of the attributes of the custom filter to add.For more information please see
+# The QHP_CUST_FILT_ATTRS tag specifies the list of the attributes of the custom filter to add.For more information please see
# Qt Help Project / Custom Filters.
-QHP_CUST_FILTER_ATTRS =
+QHP_CUST_FILTER_ATTRS =
-# The QHP_SECT_FILTER_ATTRS tag specifies the list of the attributes this project's
-# filter section matches.
+# The QHP_SECT_FILTER_ATTRS tag specifies the list of the attributes this project's
+# filter section matches.
# Qt Help Project / Filter Attributes.
-QHP_SECT_FILTER_ATTRS =
+QHP_SECT_FILTER_ATTRS =
-# If the GENERATE_QHP tag is set to YES, the QHG_LOCATION tag can
-# be used to specify the location of Qt's qhelpgenerator.
-# If non-empty doxygen will try to run qhelpgenerator on the generated
+# If the GENERATE_QHP tag is set to YES, the QHG_LOCATION tag can
+# be used to specify the location of Qt's qhelpgenerator.
+# If non-empty doxygen will try to run qhelpgenerator on the generated
# .qhp file.
-QHG_LOCATION =
+QHG_LOCATION =
-# If the GENERATE_ECLIPSEHELP tag is set to YES, additional index files
-# will be generated, which together with the HTML files, form an Eclipse help
-# plugin. To install this plugin and make it available under the help contents
-# menu in Eclipse, the contents of the directory containing the HTML and XML
-# files needs to be copied into the plugins directory of eclipse. The name of
-# the directory within the plugins directory should be the same as
+# If the GENERATE_ECLIPSEHELP tag is set to YES, additional index files
+# will be generated, which together with the HTML files, form an Eclipse help
+# plugin. To install this plugin and make it available under the help contents
+# menu in Eclipse, the contents of the directory containing the HTML and XML
+# files needs to be copied into the plugins directory of eclipse. The name of
+# the directory within the plugins directory should be the same as
# the ECLIPSE_DOC_ID value. After copying Eclipse needs to be restarted before
# the help appears.
GENERATE_ECLIPSEHELP = NO
-# A unique identifier for the eclipse help plugin. When installing the plugin
-# the directory name containing the HTML and XML files should also have
+# A unique identifier for the eclipse help plugin. When installing the plugin
+# the directory name containing the HTML and XML files should also have
# this name.
ECLIPSE_DOC_ID = org.doxygen.Project
-# The DISABLE_INDEX tag can be used to turn on/off the condensed index at
-# top of each HTML page. The value NO (the default) enables the index and
+# The DISABLE_INDEX tag can be used to turn on/off the condensed index at
+# top of each HTML page. The value NO (the default) enables the index and
# the value YES disables it.
DISABLE_INDEX = NO
-# This tag can be used to set the number of enum values (range [1..20])
+# This tag can be used to set the number of enum values (range [1..20])
# that doxygen will group on one line in the generated HTML documentation.
ENUM_VALUES_PER_LINE = 4
-# The GENERATE_TREEVIEW tag is used to specify whether a tree-like index
-# structure should be generated to display hierarchical information.
-# If the tag value is set to YES, a side panel will be generated
-# containing a tree-like index structure (just like the one that
-# is generated for HTML Help). For this to work a browser that supports
-# JavaScript, DHTML, CSS and frames is required (i.e. any modern browser).
+# The GENERATE_TREEVIEW tag is used to specify whether a tree-like index
+# structure should be generated to display hierarchical information.
+# If the tag value is set to YES, a side panel will be generated
+# containing a tree-like index structure (just like the one that
+# is generated for HTML Help). For this to work a browser that supports
+# JavaScript, DHTML, CSS and frames is required (i.e. any modern browser).
# Windows users are probably better off using the HTML help feature.
GENERATE_TREEVIEW = NO
-# By enabling USE_INLINE_TREES, doxygen will generate the Groups, Directories,
+# By enabling USE_INLINE_TREES, doxygen will generate the Groups, Directories,
# and Class Hierarchy pages using a tree view instead of an ordered list.
USE_INLINE_TREES = NO
-# If the treeview is enabled (see GENERATE_TREEVIEW) then this tag can be
-# used to set the initial width (in pixels) of the frame in which the tree
+# If the treeview is enabled (see GENERATE_TREEVIEW) then this tag can be
+# used to set the initial width (in pixels) of the frame in which the tree
# is shown.
TREEVIEW_WIDTH = 250
-# Use this tag to change the font size of Latex formulas included
-# as images in the HTML documentation. The default is 10. Note that
-# when you change the font size after a successful doxygen run you need
-# to manually remove any form_*.png images from the HTML output directory
+# Use this tag to change the font size of Latex formulas included
+# as images in the HTML documentation. The default is 10. Note that
+# when you change the font size after a successful doxygen run you need
+# to manually remove any form_*.png images from the HTML output directory
# to force them to be regenerated.
FORMULA_FONTSIZE = 10
# When the SEARCHENGINE tag is enabled doxygen will generate a search box
-# for the HTML output. The underlying search engine uses javascript
+# for the HTML output. The underlying search engine uses javascript
# and DHTML and should work on any modern browser. Note that when using
# HTML help (GENERATE_HTMLHELP), Qt help (GENERATE_QHP), or docsets
-# (GENERATE_DOCSET) there is already a search function so this one should
-# typically be disabled. For large projects the javascript based search engine
+# (GENERATE_DOCSET) there is already a search function so this one should
+# typically be disabled. For large projects the javascript based search engine
# can be slow, then enabling SERVER_BASED_SEARCH may provide a better solution.
SEARCHENGINE = NO
# When the SERVER_BASED_SEARCH tag is enabled the search engine will be
# implemented using a PHP enabled web server instead of at the web client
-# using Javascript. Doxygen will generate the search PHP script and index
+# using Javascript. Doxygen will generate the search PHP script and index
# file to put on the web server. The advantage of the server
# based approach is that it scales better to large projects and allows
-# full text search. The disadvances is that it is more difficult to setup
+# full text search. The disadvances is that it is more difficult to setup
# and does not have live searching capabilities.
SERVER_BASED_SEARCH = NO
@@ -1078,77 +1078,77 @@ SERVER_BASED_SEARCH = NO
# configuration options related to the LaTeX output
#---------------------------------------------------------------------------
-# If the GENERATE_LATEX tag is set to YES (the default) Doxygen will
+# If the GENERATE_LATEX tag is set to YES (the default) Doxygen will
# generate Latex output.
GENERATE_LATEX = YES
-# The LATEX_OUTPUT tag is used to specify where the LaTeX docs will be put.
-# If a relative path is entered the value of OUTPUT_DIRECTORY will be
+# The LATEX_OUTPUT tag is used to specify where the LaTeX docs will be put.
+# If a relative path is entered the value of OUTPUT_DIRECTORY will be
# put in front of it. If left blank `latex' will be used as the default path.
LATEX_OUTPUT = latex
-# The LATEX_CMD_NAME tag can be used to specify the LaTeX command name to be
-# invoked. If left blank `latex' will be used as the default command name.
-# Note that when enabling USE_PDFLATEX this option is only used for
-# generating bitmaps for formulas in the HTML output, but not in the
+# The LATEX_CMD_NAME tag can be used to specify the LaTeX command name to be
+# invoked. If left blank `latex' will be used as the default command name.
+# Note that when enabling USE_PDFLATEX this option is only used for
+# generating bitmaps for formulas in the HTML output, but not in the
# Makefile that is written to the output directory.
LATEX_CMD_NAME = latex
-# The MAKEINDEX_CMD_NAME tag can be used to specify the command name to
-# generate index for LaTeX. If left blank `makeindex' will be used as the
+# The MAKEINDEX_CMD_NAME tag can be used to specify the command name to
+# generate index for LaTeX. If left blank `makeindex' will be used as the
# default command name.
MAKEINDEX_CMD_NAME = makeindex
-# If the COMPACT_LATEX tag is set to YES Doxygen generates more compact
-# LaTeX documents. This may be useful for small projects and may help to
+# If the COMPACT_LATEX tag is set to YES Doxygen generates more compact
+# LaTeX documents. This may be useful for small projects and may help to
# save some trees in general.
COMPACT_LATEX = NO
-# The PAPER_TYPE tag can be used to set the paper type that is used
-# by the printer. Possible values are: a4, a4wide, letter, legal and
+# The PAPER_TYPE tag can be used to set the paper type that is used
+# by the printer. Possible values are: a4, a4wide, letter, legal and
# executive. If left blank a4wide will be used.
PAPER_TYPE = letter
-# The EXTRA_PACKAGES tag can be to specify one or more names of LaTeX
+# The EXTRA_PACKAGES tag can be to specify one or more names of LaTeX
# packages that should be included in the LaTeX output.
-EXTRA_PACKAGES =
+EXTRA_PACKAGES =
-# The LATEX_HEADER tag can be used to specify a personal LaTeX header for
-# the generated latex document. The header should contain everything until
-# the first chapter. If it is left blank doxygen will generate a
+# The LATEX_HEADER tag can be used to specify a personal LaTeX header for
+# the generated latex document. The header should contain everything until
+# the first chapter. If it is left blank doxygen will generate a
# standard header. Notice: only use this tag if you know what you are doing!
-LATEX_HEADER =
+LATEX_HEADER =
-# If the PDF_HYPERLINKS tag is set to YES, the LaTeX that is generated
-# is prepared for conversion to pdf (using ps2pdf). The pdf file will
-# contain links (just like the HTML output) instead of page references
+# If the PDF_HYPERLINKS tag is set to YES, the LaTeX that is generated
+# is prepared for conversion to pdf (using ps2pdf). The pdf file will
+# contain links (just like the HTML output) instead of page references
# This makes the output suitable for online browsing using a pdf viewer.
PDF_HYPERLINKS = NO
-# If the USE_PDFLATEX tag is set to YES, pdflatex will be used instead of
-# plain latex in the generated Makefile. Set this option to YES to get a
+# If the USE_PDFLATEX tag is set to YES, pdflatex will be used instead of
+# plain latex in the generated Makefile. Set this option to YES to get a
# higher quality PDF documentation.
USE_PDFLATEX = NO
-# If the LATEX_BATCHMODE tag is set to YES, doxygen will add the \\batchmode.
-# command to the generated LaTeX files. This will instruct LaTeX to keep
-# running if errors occur, instead of asking the user for help.
+# If the LATEX_BATCHMODE tag is set to YES, doxygen will add the \\batchmode.
+# command to the generated LaTeX files. This will instruct LaTeX to keep
+# running if errors occur, instead of asking the user for help.
# This option is also used when generating formulas in HTML.
LATEX_BATCHMODE = NO
-# If LATEX_HIDE_INDICES is set to YES then doxygen will not
-# include the index chapters (such as File Index, Compound Index, etc.)
+# If LATEX_HIDE_INDICES is set to YES then doxygen will not
+# include the index chapters (such as File Index, Compound Index, etc.)
# in the output.
LATEX_HIDE_INDICES = NO
@@ -1164,68 +1164,68 @@ LATEX_SOURCE_CODE = NO
# configuration options related to the RTF output
#---------------------------------------------------------------------------
-# If the GENERATE_RTF tag is set to YES Doxygen will generate RTF output
-# The RTF output is optimized for Word 97 and may not look very pretty with
+# If the GENERATE_RTF tag is set to YES Doxygen will generate RTF output
+# The RTF output is optimized for Word 97 and may not look very pretty with
# other RTF readers or editors.
GENERATE_RTF = NO
-# The RTF_OUTPUT tag is used to specify where the RTF docs will be put.
-# If a relative path is entered the value of OUTPUT_DIRECTORY will be
+# The RTF_OUTPUT tag is used to specify where the RTF docs will be put.
+# If a relative path is entered the value of OUTPUT_DIRECTORY will be
# put in front of it. If left blank `rtf' will be used as the default path.
RTF_OUTPUT = rtf
-# If the COMPACT_RTF tag is set to YES Doxygen generates more compact
-# RTF documents. This may be useful for small projects and may help to
+# If the COMPACT_RTF tag is set to YES Doxygen generates more compact
+# RTF documents. This may be useful for small projects and may help to
# save some trees in general.
COMPACT_RTF = NO
-# If the RTF_HYPERLINKS tag is set to YES, the RTF that is generated
-# will contain hyperlink fields. The RTF file will
-# contain links (just like the HTML output) instead of page references.
-# This makes the output suitable for online browsing using WORD or other
-# programs which support those fields.
+# If the RTF_HYPERLINKS tag is set to YES, the RTF that is generated
+# will contain hyperlink fields. The RTF file will
+# contain links (just like the HTML output) instead of page references.
+# This makes the output suitable for online browsing using WORD or other
+# programs which support those fields.
# Note: wordpad (write) and others do not support links.
RTF_HYPERLINKS = NO
-# Load stylesheet definitions from file. Syntax is similar to doxygen's
-# config file, i.e. a series of assignments. You only have to provide
+# Load stylesheet definitions from file. Syntax is similar to doxygen's
+# config file, i.e. a series of assignments. You only have to provide
# replacements, missing definitions are set to their default value.
-RTF_STYLESHEET_FILE =
+RTF_STYLESHEET_FILE =
-# Set optional variables used in the generation of an rtf document.
+# Set optional variables used in the generation of an rtf document.
# Syntax is similar to doxygen's config file.
-RTF_EXTENSIONS_FILE =
+RTF_EXTENSIONS_FILE =
#---------------------------------------------------------------------------
# configuration options related to the man page output
#---------------------------------------------------------------------------
-# If the GENERATE_MAN tag is set to YES (the default) Doxygen will
+# If the GENERATE_MAN tag is set to YES (the default) Doxygen will
# generate man pages
GENERATE_MAN = NO
-# The MAN_OUTPUT tag is used to specify where the man pages will be put.
-# If a relative path is entered the value of OUTPUT_DIRECTORY will be
+# The MAN_OUTPUT tag is used to specify where the man pages will be put.
+# If a relative path is entered the value of OUTPUT_DIRECTORY will be
# put in front of it. If left blank `man' will be used as the default path.
MAN_OUTPUT = man
-# The MAN_EXTENSION tag determines the extension that is added to
+# The MAN_EXTENSION tag determines the extension that is added to
# the generated man pages (default is the subroutine's section .3)
MAN_EXTENSION = .3
-# If the MAN_LINKS tag is set to YES and Doxygen generates man output,
-# then it will generate one additional man file for each entity
-# documented in the real man page(s). These additional files
-# only source the real man page, but without them the man command
+# If the MAN_LINKS tag is set to YES and Doxygen generates man output,
+# then it will generate one additional man file for each entity
+# documented in the real man page(s). These additional files
+# only source the real man page, but without them the man command
# would be unable to find the correct page. The default is NO.
MAN_LINKS = NO
@@ -1234,33 +1234,33 @@ MAN_LINKS = NO
# configuration options related to the XML output
#---------------------------------------------------------------------------
-# If the GENERATE_XML tag is set to YES Doxygen will
-# generate an XML file that captures the structure of
+# If the GENERATE_XML tag is set to YES Doxygen will
+# generate an XML file that captures the structure of
# the code including all documentation.
GENERATE_XML = NO
-# The XML_OUTPUT tag is used to specify where the XML pages will be put.
-# If a relative path is entered the value of OUTPUT_DIRECTORY will be
+# The XML_OUTPUT tag is used to specify where the XML pages will be put.
+# If a relative path is entered the value of OUTPUT_DIRECTORY will be
# put in front of it. If left blank `xml' will be used as the default path.
XML_OUTPUT = xml
-# The XML_SCHEMA tag can be used to specify an XML schema,
-# which can be used by a validating XML parser to check the
+# The XML_SCHEMA tag can be used to specify an XML schema,
+# which can be used by a validating XML parser to check the
# syntax of the XML files.
-XML_SCHEMA =
+XML_SCHEMA =
-# The XML_DTD tag can be used to specify an XML DTD,
-# which can be used by a validating XML parser to check the
+# The XML_DTD tag can be used to specify an XML DTD,
+# which can be used by a validating XML parser to check the
# syntax of the XML files.
-XML_DTD =
+XML_DTD =
-# If the XML_PROGRAMLISTING tag is set to YES Doxygen will
-# dump the program listings (including syntax highlighting
-# and cross-referencing information) to the XML output. Note that
+# If the XML_PROGRAMLISTING tag is set to YES Doxygen will
+# dump the program listings (including syntax highlighting
+# and cross-referencing information) to the XML output. Note that
# enabling this will significantly increase the size of the XML output.
XML_PROGRAMLISTING = YES
@@ -1269,10 +1269,10 @@ XML_PROGRAMLISTING = YES
# configuration options for the AutoGen Definitions output
#---------------------------------------------------------------------------
-# If the GENERATE_AUTOGEN_DEF tag is set to YES Doxygen will
-# generate an AutoGen Definitions (see autogen.sf.net) file
-# that captures the structure of the code including all
-# documentation. Note that this feature is still experimental
+# If the GENERATE_AUTOGEN_DEF tag is set to YES Doxygen will
+# generate an AutoGen Definitions (see autogen.sf.net) file
+# that captures the structure of the code including all
+# documentation. Note that this feature is still experimental
# and incomplete at the moment.
GENERATE_AUTOGEN_DEF = NO
@@ -1281,97 +1281,97 @@ GENERATE_AUTOGEN_DEF = NO
# configuration options related to the Perl module output
#---------------------------------------------------------------------------
-# If the GENERATE_PERLMOD tag is set to YES Doxygen will
-# generate a Perl module file that captures the structure of
-# the code including all documentation. Note that this
-# feature is still experimental and incomplete at the
+# If the GENERATE_PERLMOD tag is set to YES Doxygen will
+# generate a Perl module file that captures the structure of
+# the code including all documentation. Note that this
+# feature is still experimental and incomplete at the
# moment.
GENERATE_PERLMOD = NO
-# If the PERLMOD_LATEX tag is set to YES Doxygen will generate
-# the necessary Makefile rules, Perl scripts and LaTeX code to be able
+# If the PERLMOD_LATEX tag is set to YES Doxygen will generate
+# the necessary Makefile rules, Perl scripts and LaTeX code to be able
# to generate PDF and DVI output from the Perl module output.
PERLMOD_LATEX = NO
-# If the PERLMOD_PRETTY tag is set to YES the Perl module output will be
-# nicely formatted so it can be parsed by a human reader. This is useful
-# if you want to understand what is going on. On the other hand, if this
-# tag is set to NO the size of the Perl module output will be much smaller
+# If the PERLMOD_PRETTY tag is set to YES the Perl module output will be
+# nicely formatted so it can be parsed by a human reader. This is useful
+# if you want to understand what is going on. On the other hand, if this
+# tag is set to NO the size of the Perl module output will be much smaller
# and Perl will parse it just the same.
PERLMOD_PRETTY = YES
-# The names of the make variables in the generated doxyrules.make file
-# are prefixed with the string contained in PERLMOD_MAKEVAR_PREFIX.
-# This is useful so different doxyrules.make files included by the same
+# The names of the make variables in the generated doxyrules.make file
+# are prefixed with the string contained in PERLMOD_MAKEVAR_PREFIX.
+# This is useful so different doxyrules.make files included by the same
# Makefile don't overwrite each other's variables.
-PERLMOD_MAKEVAR_PREFIX =
+PERLMOD_MAKEVAR_PREFIX =
#---------------------------------------------------------------------------
# Configuration options related to the preprocessor
#---------------------------------------------------------------------------
-# If the ENABLE_PREPROCESSING tag is set to YES (the default) Doxygen will
-# evaluate all C-preprocessor directives found in the sources and include
+# If the ENABLE_PREPROCESSING tag is set to YES (the default) Doxygen will
+# evaluate all C-preprocessor directives found in the sources and include
# files.
ENABLE_PREPROCESSING = YES
-# If the MACRO_EXPANSION tag is set to YES Doxygen will expand all macro
-# names in the source code. If set to NO (the default) only conditional
-# compilation will be performed. Macro expansion can be done in a controlled
+# If the MACRO_EXPANSION tag is set to YES Doxygen will expand all macro
+# names in the source code. If set to NO (the default) only conditional
+# compilation will be performed. Macro expansion can be done in a controlled
# way by setting EXPAND_ONLY_PREDEF to YES.
MACRO_EXPANSION = NO
-# If the EXPAND_ONLY_PREDEF and MACRO_EXPANSION tags are both set to YES
-# then the macro expansion is limited to the macros specified with the
+# If the EXPAND_ONLY_PREDEF and MACRO_EXPANSION tags are both set to YES
+# then the macro expansion is limited to the macros specified with the
# PREDEFINED and EXPAND_AS_DEFINED tags.
EXPAND_ONLY_PREDEF = NO
-# If the SEARCH_INCLUDES tag is set to YES (the default) the includes files
+# If the SEARCH_INCLUDES tag is set to YES (the default) the includes files
# in the INCLUDE_PATH (see below) will be search if a #include is found.
SEARCH_INCLUDES = YES
-# The INCLUDE_PATH tag can be used to specify one or more directories that
-# contain include files that are not input files but should be processed by
+# The INCLUDE_PATH tag can be used to specify one or more directories that
+# contain include files that are not input files but should be processed by
# the preprocessor.
-INCLUDE_PATH =
+INCLUDE_PATH =
-# You can use the INCLUDE_FILE_PATTERNS tag to specify one or more wildcard
-# patterns (like *.h and *.hpp) to filter out the header-files in the
-# directories. If left blank, the patterns specified with FILE_PATTERNS will
+# You can use the INCLUDE_FILE_PATTERNS tag to specify one or more wildcard
+# patterns (like *.h and *.hpp) to filter out the header-files in the
+# directories. If left blank, the patterns specified with FILE_PATTERNS will
# be used.
-INCLUDE_FILE_PATTERNS =
+INCLUDE_FILE_PATTERNS =
-# The PREDEFINED tag can be used to specify one or more macro names that
-# are defined before the preprocessor is started (similar to the -D option of
-# gcc). The argument of the tag is a list of macros of the form: name
-# or name=definition (no spaces). If the definition and the = are
-# omitted =1 is assumed. To prevent a macro definition from being
-# undefined via #undef or recursively expanded use the := operator
+# The PREDEFINED tag can be used to specify one or more macro names that
+# are defined before the preprocessor is started (similar to the -D option of
+# gcc). The argument of the tag is a list of macros of the form: name
+# or name=definition (no spaces). If the definition and the = are
+# omitted =1 is assumed. To prevent a macro definition from being
+# undefined via #undef or recursively expanded use the := operator
# instead of the = operator.
PREDEFINED = MTL_HAS_UMFPACK MTL_HAS_VPT
-# If the MACRO_EXPANSION and EXPAND_ONLY_PREDEF tags are set to YES then
-# this tag can be used to specify a list of macro names that should be expanded.
-# The macro definition that is found in the sources will be used.
+# If the MACRO_EXPANSION and EXPAND_ONLY_PREDEF tags are set to YES then
+# this tag can be used to specify a list of macro names that should be expanded.
+# The macro definition that is found in the sources will be used.
# Use the PREDEFINED tag if you want to use a different macro definition.
-EXPAND_AS_DEFINED =
+EXPAND_AS_DEFINED =
-# If the SKIP_FUNCTION_MACROS tag is set to YES (the default) then
-# doxygen's preprocessor will remove all function-like macros that are alone
-# on a line, have an all uppercase name, and do not end with a semicolon. Such
-# function macros are typically used for boiler-plate code, and will confuse
+# If the SKIP_FUNCTION_MACROS tag is set to YES (the default) then
+# doxygen's preprocessor will remove all function-like macros that are alone
+# on a line, have an all uppercase name, and do not end with a semicolon. Such
+# function macros are typically used for boiler-plate code, and will confuse
# the parser if not removed.
SKIP_FUNCTION_MACROS = YES
@@ -1380,41 +1380,41 @@ SKIP_FUNCTION_MACROS = YES
# Configuration::additions related to external references
#---------------------------------------------------------------------------
-# The TAGFILES option can be used to specify one or more tagfiles.
-# Optionally an initial location of the external documentation
-# can be added for each tagfile. The format of a tag file without
-# this location is as follows:
-# TAGFILES = file1 file2 ...
-# Adding location for the tag files is done as follows:
-# TAGFILES = file1=loc1 "file2 = loc2" ...
-# where "loc1" and "loc2" can be relative or absolute paths or
-# URLs. If a location is present for each tag, the installdox tool
-# does not have to be run to correct the links.
-# Note that each tag file must have a unique name
-# (where the name does NOT include the path)
-# If a tag file is not located in the directory in which doxygen
+# The TAGFILES option can be used to specify one or more tagfiles.
+# Optionally an initial location of the external documentation
+# can be added for each tagfile. The format of a tag file without
+# this location is as follows:
+# TAGFILES = file1 file2 ...
+# Adding location for the tag files is done as follows:
+# TAGFILES = file1=loc1 "file2 = loc2" ...
+# where "loc1" and "loc2" can be relative or absolute paths or
+# URLs. If a location is present for each tag, the installdox tool
+# does not have to be run to correct the links.
+# Note that each tag file must have a unique name
+# (where the name does NOT include the path)
+# If a tag file is not located in the directory in which doxygen
# is run, you must also specify the path to the tagfile here.
-TAGFILES =
+TAGFILES =
-# When a file name is specified after GENERATE_TAGFILE, doxygen will create
+# When a file name is specified after GENERATE_TAGFILE, doxygen will create
# a tag file that is based on the input files it reads.
-GENERATE_TAGFILE =
+GENERATE_TAGFILE =
-# If the ALLEXTERNALS tag is set to YES all external classes will be listed
-# in the class index. If set to NO only the inherited external classes
+# If the ALLEXTERNALS tag is set to YES all external classes will be listed
+# in the class index. If set to NO only the inherited external classes
# will be listed.
ALLEXTERNALS = NO
-# If the EXTERNAL_GROUPS tag is set to YES all external groups will be listed
-# in the modules index. If set to NO, only the current project's groups will
+# If the EXTERNAL_GROUPS tag is set to YES all external groups will be listed
+# in the modules index. If set to NO, only the current project's groups will
# be listed.
EXTERNAL_GROUPS = YES
-# The PERL_PATH should be the absolute path and name of the perl script
+# The PERL_PATH should be the absolute path and name of the perl script
# interpreter (i.e. the result of `which perl').
PERL_PATH = /usr/bin/perl
@@ -1423,192 +1423,192 @@ PERL_PATH = /usr/bin/perl
# Configuration options related to the dot tool
#---------------------------------------------------------------------------
-# If the CLASS_DIAGRAMS tag is set to YES (the default) Doxygen will
-# generate a inheritance diagram (in HTML, RTF and LaTeX) for classes with base
-# or super classes. Setting the tag to NO turns the diagrams off. Note that
-# this option is superseded by the HAVE_DOT option below. This is only a
-# fallback. It is recommended to install and use dot, since it yields more
+# If the CLASS_DIAGRAMS tag is set to YES (the default) Doxygen will
+# generate a inheritance diagram (in HTML, RTF and LaTeX) for classes with base
+# or super classes. Setting the tag to NO turns the diagrams off. Note that
+# this option is superseded by the HAVE_DOT option below. This is only a
+# fallback. It is recommended to install and use dot, since it yields more
# powerful graphs.
CLASS_DIAGRAMS = YES
-# You can define message sequence charts within doxygen comments using the \msc
-# command. Doxygen will then run the mscgen tool (see
-# http://www.mcternan.me.uk/mscgen/) to produce the chart and insert it in the
-# documentation. The MSCGEN_PATH tag allows you to specify the directory where
-# the mscgen tool resides. If left empty the tool is assumed to be found in the
+# You can define message sequence charts within doxygen comments using the \msc
+# command. Doxygen will then run the mscgen tool (see
+# http://www.mcternan.me.uk/mscgen/) to produce the chart and insert it in the
+# documentation. The MSCGEN_PATH tag allows you to specify the directory where
+# the mscgen tool resides. If left empty the tool is assumed to be found in the
# default search path.
-MSCGEN_PATH =
+MSCGEN_PATH =
-# If set to YES, the inheritance and collaboration graphs will hide
-# inheritance and usage relations if the target is undocumented
+# If set to YES, the inheritance and collaboration graphs will hide
+# inheritance and usage relations if the target is undocumented
# or is not a class.
HIDE_UNDOC_RELATIONS = YES
-# If you set the HAVE_DOT tag to YES then doxygen will assume the dot tool is
-# available from the path. This tool is part of Graphviz, a graph visualization
-# toolkit from AT&T and Lucent Bell Labs. The other options in this section
+# If you set the HAVE_DOT tag to YES then doxygen will assume the dot tool is
+# available from the path. This tool is part of Graphviz, a graph visualization
+# toolkit from AT&T and Lucent Bell Labs. The other options in this section
# have no effect if this option is set to NO (the default)
HAVE_DOT = YES
-# By default doxygen will write a font called FreeSans.ttf to the output
-# directory and reference it in all dot files that doxygen generates. This
-# font does not include all possible unicode characters however, so when you need
-# these (or just want a differently looking font) you can specify the font name
-# using DOT_FONTNAME. You need need to make sure dot is able to find the font,
-# which can be done by putting it in a standard location or by setting the
-# DOTFONTPATH environment variable or by setting DOT_FONTPATH to the directory
+# By default doxygen will write a font called FreeSans.ttf to the output
+# directory and reference it in all dot files that doxygen generates. This
+# font does not include all possible unicode characters however, so when you need
+# these (or just want a differently looking font) you can specify the font name
+# using DOT_FONTNAME. You need need to make sure dot is able to find the font,
+# which can be done by putting it in a standard location or by setting the
+# DOTFONTPATH environment variable or by setting DOT_FONTPATH to the directory
# containing the font.
DOT_FONTNAME = FreeSans
-# The DOT_FONTSIZE tag can be used to set the size of the font of dot graphs.
+# The DOT_FONTSIZE tag can be used to set the size of the font of dot graphs.
# The default size is 10pt.
DOT_FONTSIZE = 10
-# By default doxygen will tell dot to use the output directory to look for the
-# FreeSans.ttf font (which doxygen will put there itself). If you specify a
-# different font using DOT_FONTNAME you can set the path where dot
+# By default doxygen will tell dot to use the output directory to look for the
+# FreeSans.ttf font (which doxygen will put there itself). If you specify a
+# different font using DOT_FONTNAME you can set the path where dot
# can find it using this tag.
-DOT_FONTPATH =
+DOT_FONTPATH =
-# If the CLASS_GRAPH and HAVE_DOT tags are set to YES then doxygen
-# will generate a graph for each documented class showing the direct and
-# indirect inheritance relations. Setting this tag to YES will force the
+# If the CLASS_GRAPH and HAVE_DOT tags are set to YES then doxygen
+# will generate a graph for each documented class showing the direct and
+# indirect inheritance relations. Setting this tag to YES will force the
# the CLASS_DIAGRAMS tag to NO.
CLASS_GRAPH = YES
-# If the COLLABORATION_GRAPH and HAVE_DOT tags are set to YES then doxygen
-# will generate a graph for each documented class showing the direct and
-# indirect implementation dependencies (inheritance, containment, and
+# If the COLLABORATION_GRAPH and HAVE_DOT tags are set to YES then doxygen
+# will generate a graph for each documented class showing the direct and
+# indirect implementation dependencies (inheritance, containment, and
# class references variables) of the class with other documented classes.
COLLABORATION_GRAPH = YES
-# If the GROUP_GRAPHS and HAVE_DOT tags are set to YES then doxygen
+# If the GROUP_GRAPHS and HAVE_DOT tags are set to YES then doxygen
# will generate a graph for groups, showing the direct groups dependencies
GROUP_GRAPHS = YES
-# If the UML_LOOK tag is set to YES doxygen will generate inheritance and
-# collaboration diagrams in a style similar to the OMG's Unified Modeling
+# If the UML_LOOK tag is set to YES doxygen will generate inheritance and
+# collaboration diagrams in a style similar to the OMG's Unified Modeling
# Language.
UML_LOOK = NO
-# If set to YES, the inheritance and collaboration graphs will show the
+# If set to YES, the inheritance and collaboration graphs will show the
# relations between templates and their instances.
TEMPLATE_RELATIONS = NO
-# If the ENABLE_PREPROCESSING, SEARCH_INCLUDES, INCLUDE_GRAPH, and HAVE_DOT
-# tags are set to YES then doxygen will generate a graph for each documented
-# file showing the direct and indirect include dependencies of the file with
+# If the ENABLE_PREPROCESSING, SEARCH_INCLUDES, INCLUDE_GRAPH, and HAVE_DOT
+# tags are set to YES then doxygen will generate a graph for each documented
+# file showing the direct and indirect include dependencies of the file with
# other documented files.
INCLUDE_GRAPH = YES
-# If the ENABLE_PREPROCESSING, SEARCH_INCLUDES, INCLUDED_BY_GRAPH, and
-# HAVE_DOT tags are set to YES then doxygen will generate a graph for each
-# documented header file showing the documented files that directly or
+# If the ENABLE_PREPROCESSING, SEARCH_INCLUDES, INCLUDED_BY_GRAPH, and
+# HAVE_DOT tags are set to YES then doxygen will generate a graph for each
+# documented header file showing the documented files that directly or
# indirectly include this file.
INCLUDED_BY_GRAPH = YES
-# If the CALL_GRAPH and HAVE_DOT options are set to YES then
-# doxygen will generate a call dependency graph for every global function
-# or class method. Note that enabling this option will significantly increase
-# the time of a run. So in most cases it will be better to enable call graphs
+# If the CALL_GRAPH and HAVE_DOT options are set to YES then
+# doxygen will generate a call dependency graph for every global function
+# or class method. Note that enabling this option will significantly increase
+# the time of a run. So in most cases it will be better to enable call graphs
# for selected functions only using the \callgraph command.
CALL_GRAPH = NO
-# If the CALLER_GRAPH and HAVE_DOT tags are set to YES then
-# doxygen will generate a caller dependency graph for every global function
-# or class method. Note that enabling this option will significantly increase
-# the time of a run. So in most cases it will be better to enable caller
+# If the CALLER_GRAPH and HAVE_DOT tags are set to YES then
+# doxygen will generate a caller dependency graph for every global function
+# or class method. Note that enabling this option will significantly increase
+# the time of a run. So in most cases it will be better to enable caller
# graphs for selected functions only using the \callergraph command.
CALLER_GRAPH = NO
-# If the GRAPHICAL_HIERARCHY and HAVE_DOT tags are set to YES then doxygen
+# If the GRAPHICAL_HIERARCHY and HAVE_DOT tags are set to YES then doxygen
# will graphical hierarchy of all classes instead of a textual one.
GRAPHICAL_HIERARCHY = YES
-# If the DIRECTORY_GRAPH, SHOW_DIRECTORIES and HAVE_DOT tags are set to YES
-# then doxygen will show the dependencies a directory has on other directories
-# in a graphical way. The dependency relations are determined by the #include
+# If the DIRECTORY_GRAPH, SHOW_DIRECTORIES and HAVE_DOT tags are set to YES
+# then doxygen will show the dependencies a directory has on other directories
+# in a graphical way. The dependency relations are determined by the #include
# relations between the files in the directories.
DIRECTORY_GRAPH = YES
-# The DOT_IMAGE_FORMAT tag can be used to set the image format of the images
-# generated by dot. Possible values are png, jpg, or gif
+# The DOT_IMAGE_FORMAT tag can be used to set the image format of the images
+# generated by dot. Possible values are png, jpg, or gif
# If left blank png will be used.
DOT_IMAGE_FORMAT = png
-# The tag DOT_PATH can be used to specify the path where the dot tool can be
+# The tag DOT_PATH can be used to specify the path where the dot tool can be
# found. If left blank, it is assumed the dot tool can be found in the path.
DOT_PATH = /Volumes/Doxygen/Doxygen.app/Contents/Resources/
-# The DOTFILE_DIRS tag can be used to specify one or more directories that
-# contain dot files that are included in the documentation (see the
+# The DOTFILE_DIRS tag can be used to specify one or more directories that
+# contain dot files that are included in the documentation (see the
# \dotfile command).
-DOTFILE_DIRS =
+DOTFILE_DIRS =
-# The DOT_GRAPH_MAX_NODES tag can be used to set the maximum number of
-# nodes that will be shown in the graph. If the number of nodes in a graph
-# becomes larger than this value, doxygen will truncate the graph, which is
-# visualized by representing a node as a red box. Note that doxygen if the
-# number of direct children of the root node in a graph is already larger than
-# DOT_GRAPH_MAX_NODES then the graph will not be shown at all. Also note
+# The DOT_GRAPH_MAX_NODES tag can be used to set the maximum number of
+# nodes that will be shown in the graph. If the number of nodes in a graph
+# becomes larger than this value, doxygen will truncate the graph, which is
+# visualized by representing a node as a red box. Note that doxygen if the
+# number of direct children of the root node in a graph is already larger than
+# DOT_GRAPH_MAX_NODES then the graph will not be shown at all. Also note
# that the size of a graph can be further restricted by MAX_DOT_GRAPH_DEPTH.
DOT_GRAPH_MAX_NODES = 50
-# The MAX_DOT_GRAPH_DEPTH tag can be used to set the maximum depth of the
-# graphs generated by dot. A depth value of 3 means that only nodes reachable
-# from the root by following a path via at most 3 edges will be shown. Nodes
-# that lay further from the root node will be omitted. Note that setting this
-# option to 1 or 2 may greatly reduce the computation time needed for large
-# code bases. Also note that the size of a graph can be further restricted by
+# The MAX_DOT_GRAPH_DEPTH tag can be used to set the maximum depth of the
+# graphs generated by dot. A depth value of 3 means that only nodes reachable
+# from the root by following a path via at most 3 edges will be shown. Nodes
+# that lay further from the root node will be omitted. Note that setting this
+# option to 1 or 2 may greatly reduce the computation time needed for large
+# code bases. Also note that the size of a graph can be further restricted by
# DOT_GRAPH_MAX_NODES. Using a depth of 0 means no depth restriction.
MAX_DOT_GRAPH_DEPTH = 1000
-# Set the DOT_TRANSPARENT tag to YES to generate images with a transparent
-# background. This is disabled by default, because dot on Windows does not
-# seem to support this out of the box. Warning: Depending on the platform used,
-# enabling this option may lead to badly anti-aliased labels on the edges of
+# Set the DOT_TRANSPARENT tag to YES to generate images with a transparent
+# background. This is disabled by default, because dot on Windows does not
+# seem to support this out of the box. Warning: Depending on the platform used,
+# enabling this option may lead to badly anti-aliased labels on the edges of
# a graph (i.e. they become hard to read).
DOT_TRANSPARENT = NO
-# Set the DOT_MULTI_TARGETS tag to YES allow dot to generate multiple output
-# files in one run (i.e. multiple -o and -T options on the command line). This
-# makes dot run faster, but since only newer versions of dot (>1.8.10)
+# Set the DOT_MULTI_TARGETS tag to YES allow dot to generate multiple output
+# files in one run (i.e. multiple -o and -T options on the command line). This
+# makes dot run faster, but since only newer versions of dot (>1.8.10)
# support this, this feature is disabled by default.
DOT_MULTI_TARGETS = NO
-# If the GENERATE_LEGEND tag is set to YES (the default) Doxygen will
-# generate a legend page explaining the meaning of the various boxes and
+# If the GENERATE_LEGEND tag is set to YES (the default) Doxygen will
+# generate a legend page explaining the meaning of the various boxes and
# arrows in the dot generated graphs.
GENERATE_LEGEND = YES
-# If the DOT_CLEANUP tag is set to YES (the default) Doxygen will
-# remove the intermediate dot files that are used to generate
+# If the DOT_CLEANUP tag is set to YES (the default) Doxygen will
+# remove the intermediate dot files that are used to generate
# the various graphs.
DOT_CLEANUP = YES
diff --git a/AMDiS/lib/mtl4/INSTALL b/AMDiS/lib/mtl4/INSTALL
index 63a39d2e461554e42a96ac0e8ff4ee8a65601979..3b974253dbd0970a8a5467b4012464c6d53a9d14 100644
--- a/AMDiS/lib/mtl4/INSTALL
+++ b/AMDiS/lib/mtl4/INSTALL
@@ -2,9 +2,9 @@
Software License for MTL
-Copyright (c) 2007-2008 The Trustees of Indiana University.
+Copyright (c) 2007-2008 The Trustees of Indiana University.
2008 Dresden University of Technology and the Trustees of Indiana University.
- 2010 SimuNova UG, www.simunova.com.
+ 2010 SimuNova UG, www.simunova.com.
All rights reserved.
Authors: Peter Gottschling and Andrew Lumsdaine
diff --git a/AMDiS/lib/mtl4/README b/AMDiS/lib/mtl4/README
index c59d60859af99d22e7e8c23dcd86164afeeb8066..d8292b4788ceaccec88ac083ca59a319ac64b097 100644
--- a/AMDiS/lib/mtl4/README
+++ b/AMDiS/lib/mtl4/README
@@ -11,7 +11,7 @@ See also license.mtl.txt in the distribution.
---------------------------------------------------------------
The Matrix Template Library
- Version 4
+ Version 4
I. Introduction
===============
diff --git a/AMDiS/lib/mtl4/SConstruct b/AMDiS/lib/mtl4/SConstruct
index e547d4590592601eae3a4460052a49219260b20d..ede49e274511fe7a21a36807053d841a3fd7309e 100644
--- a/AMDiS/lib/mtl4/SConstruct
+++ b/AMDiS/lib/mtl4/SConstruct
@@ -9,7 +9,7 @@ def macro_flag(env, flag):
if sys.platform == 'win32' and conf.env['CC'] == 'cl':
return '/D' + flag
else:
- return '-D' + flag
+ return '-D' + flag
# add debugging flags to environment
def add_debug(env):
@@ -20,7 +20,7 @@ def add_debug(env):
env.Append(CCFLAGS = '-g')
#print macro_flag(env, 'MTL_ASSERT_FOR_THROW')
env.Append(CCFLAGS = macro_flag(env, 'MTL_ASSERT_FOR_THROW'))
-
+
def check_g5():
print "platform ", sys.platform
@@ -38,7 +38,7 @@ def check_g5():
def add_platform_flags(env):
if env['CC'] == 'cl':
- # Turn off some warnings: 1. for problems with CRTP 2. with VC's own headers
+ # Turn off some warnings: 1. for problems with CRTP 2. with VC's own headers
# 3. alleged ambiguos assignment
# I hope we find a cleaner way to get rid of this warning
wd = ' /wd4355 /wd4996 /wd4522'
@@ -79,10 +79,10 @@ def add_opt(env, opt):
env.Append(CCFLAGS = '-O2')
# env.Append(CCFLAGS = '-pg') # for profiling
# env.Append(LINKFLAGS = '-pg') # for profiling
-
+
if env['CC'] != 'cl':
env.Append(CXXFLAGS = conf.env['CCFLAGS'])
-
+
def check_no_long_double(conf):
cc = conf.env['CC']
@@ -117,7 +117,7 @@ def check_for_blas(env):
if blas_path:
print 'adding ' + blas_path + ' to LIBPATH.'
env.Append(LIBPATH = [ blas_path, blas_path + '/lib/' ])
-
+
# extra linker flags for blas
blas_ldflags = ARGUMENTS.get('blas_ldflags', '')
if blas_ldflags:
@@ -137,7 +137,7 @@ def check_for_blas(env):
return myenv
else:
print "Autodetecting BLAS support. See config.log for details!"
-
+
########################
# check for acml
myenv = env.Copy()
@@ -151,7 +151,7 @@ def check_for_blas(env):
myenv = conf.Finish()
if(found_blas == 1):
return myenv
-
+
########################
# check for goto
myenv = env.Copy()
@@ -161,7 +161,7 @@ def check_for_blas(env):
myenv.Append(LIBS=['pthread'])
# extra linker flags for libgoto
# myenv.Append(_LIBFLAGS=['libs/numeric/mtl/build/xerbla.c'])
- myenv.Append(_LIBFLAGS=['libs/numeric/mtl/build/xerbla.o']) # not portable !!!
+ myenv.Append(_LIBFLAGS=['libs/numeric/mtl/build/xerbla.o']) # not portable !!!
# myenv.Library('build/xerbla', 'build/xerbla.c')
# myenv.Append(LIBS=['xerbla'])
# myenv.Append(LIBPATH=['build'])
@@ -176,7 +176,7 @@ def check_for_blas(env):
myenv = conf.Finish()
if(found_blas == 1):
return myenv
-
+
########################
# check for ATLAS
myenv = env.Copy()
@@ -192,9 +192,9 @@ def check_for_blas(env):
return myenv
return env
-
-
+
+
###################################
# Add UMFPACK (extremely simplistic)
###################################
@@ -236,7 +236,7 @@ def check_for_umfpack(env):
env.Append(CPPPATH = [ umfpack_path + '/Include' ])
detected_umfpack(env)
return env
-
+
@@ -351,12 +351,12 @@ if int(ARGUMENTS.get('full_warnings', 0)):
full_warnings = ARGUMENTS.get('full_warnings', 0)
-# add user-defined CC flags
+# add user-defined CC flags
add_ccflag = ARGUMENTS.get('add_ccflag', '')
if add_ccflag:
env.Append(CCFLAGS = add_ccflag)
-# add user-defined CXX flags
+# add user-defined CXX flags
add_cxxflag = ARGUMENTS.get('add_cxxflag', '')
if add_cxxflag:
env.Append(CXXFLAGS = add_cxxflag)
@@ -379,12 +379,12 @@ add_debug(debug_env)
opt = ARGUMENTS.get('opt', 0)
# Add optimization flags and then copy C flags into C++ flags
-add_opt(debug_env, 0)
+add_opt(debug_env, 0)
add_opt(env, int(opt))
add_opt(opt_env, 1)
add_opt(high_opt_env, 2)
-# add user-defined optimization flags
+# add user-defined optimization flags
add_optflag = ARGUMENTS.get('add_optflag', '')
if add_optflag:
add_user_opt(env, add_optflag)
@@ -400,12 +400,12 @@ check = ARGUMENTS.get('check', 0)
Export('env debug_env opt_env high_opt_env check full_warnings')
-SConscript(['libs/numeric/mtl/build/SConscript',
- 'libs/numeric/mtl/test/SConscript',
- 'libs/numeric/mtl/test_with_optimization/SConscript',
- 'libs/numeric/mtl/examples/SConscript',
+SConscript(['libs/numeric/mtl/build/SConscript',
+ 'libs/numeric/mtl/test/SConscript',
+ 'libs/numeric/mtl/test_with_optimization/SConscript',
+ 'libs/numeric/mtl/examples/SConscript',
'libs/numeric/mtl/experimental/SConscript',
- 'libs/numeric/mtl/timing/SConscript',
- 'libs/numeric/linear_algebra/test/SConscript',
+ 'libs/numeric/mtl/timing/SConscript',
+ 'libs/numeric/linear_algebra/test/SConscript',
'libs/numeric/itl/test/SConscript'])
diff --git a/AMDiS/lib/mtl4/boost/numeric/itl/iteration/basic_iteration.hpp b/AMDiS/lib/mtl4/boost/numeric/itl/iteration/basic_iteration.hpp
index 369995fdaa481d91f65b13dd97009ba26cd13636..6c2d59c997d42cf26c13e342ac2aca2b33f95c8f 100644
--- a/AMDiS/lib/mtl4/boost/numeric/itl/iteration/basic_iteration.hpp
+++ b/AMDiS/lib/mtl4/boost/numeric/itl/iteration/basic_iteration.hpp
@@ -33,27 +33,27 @@ class basic_iteration
max_iter(max_iter_), rtol_(t), atol_(a), is_finished(false), my_quite(false), my_suppress(false) { }
basic_iteration(Real nb, int max_iter_, Real t, Real a = Real(0))
- : error(0), i(0), norm_r0(nb), max_iter(max_iter_), rtol_(t), atol_(a), is_finished(false),
+ : error(0), i(0), norm_r0(nb), max_iter(max_iter_), rtol_(t), atol_(a), is_finished(false),
my_quite(false), my_suppress(false) {}
virtual ~basic_iteration() {}
bool check_max()
{
- if (i >= max_iter)
+ if (i >= max_iter)
error= 1, is_finished= true, err_msg= "Too many iterations.";
return is_finished;
}
template
- bool finished(const Vector& r)
+ bool finished(const Vector& r)
{
if (converged(two_norm(r)))
return is_finished= true;
return check_max();
}
- bool finished(const Real& r)
+ bool finished(const Real& r)
{
if (converged(r))
return is_finished= true;
@@ -61,9 +61,9 @@ class basic_iteration
}
template
- bool finished(const std::complex& r)
+ bool finished(const std::complex& r)
{
- if (converged(std::abs(r)))
+ if (converged(std::abs(r)))
return is_finished= true;
return check_max();
}
@@ -75,8 +75,8 @@ class basic_iteration
bool converged(const Real& r) { resid_= r; return converged(); }
- bool converged() const
- {
+ bool converged() const
+ {
if (norm_r0 == 0)
return resid_ <= atol_; // ignore relative tolerance if |r0| is zero
return resid_ <= rtol_ * norm_r0 || resid_ <= atol_;
@@ -95,7 +95,7 @@ class basic_iteration
bool is_converged() const { return is_finished && error == 0; }
int iterations() const { return i; }
-
+
int max_iterations() const { return max_iter; }
void set_max_iterations(int m) { max_iter= m; }
@@ -132,7 +132,7 @@ class basic_iteration
error= that.error;
err_msg= that.err_msg;
is_finished= true;
- } else
+ } else
finished(resid_);
}
diff --git a/AMDiS/lib/mtl4/boost/numeric/itl/iteration/cyclic_iteration.hpp b/AMDiS/lib/mtl4/boost/numeric/itl/iteration/cyclic_iteration.hpp
index a488a19ee1a56920c837018b854886e84b34e8c5..c838f68e1c04a2539753bfb568cfbf48f246f726 100644
--- a/AMDiS/lib/mtl4/boost/numeric/itl/iteration/cyclic_iteration.hpp
+++ b/AMDiS/lib/mtl4/boost/numeric/itl/iteration/cyclic_iteration.hpp
@@ -1,13 +1,13 @@
// Software License for MTL
-//
+//
// Copyright (c) 2007 The Trustees of Indiana University.
// 2008 Dresden University of Technology and the Trustees of Indiana University.
// 2010 SimuNova UG (haftungsbeschränkt), www.simunova.com.
// All rights reserved.
// Authors: Peter Gottschling and Andrew Lumsdaine
-//
+//
// This file is part of the Matrix Template Library2
-//
+//
// See also license.mtl.txt in the distribution.
#ifndef ITL_CYCLIC_ITERATION_INCLUDE
@@ -20,7 +20,7 @@ namespace itl {
/// Class for iteration control that cyclically prints residual
template
- class cyclic_iteration : public basic_iteration
+ class cyclic_iteration : public basic_iteration
{
typedef basic_iteration super;
typedef cyclic_iteration self;
@@ -29,7 +29,7 @@ namespace itl {
{
if (!this->my_quite && this->i % cycle == 0)
if (multi_print || this->i != last_print) { // Avoid multiple print-outs in same iteration
- out << "iteration " << this->i << ": resid " << this->resid()
+ out << "iteration " << this->i << ": resid " << this->resid()
// << " / " << this->norm_r0 << " = " << this->resid() / this->norm_r0 << " (rel. error)"
<< std::endl;
last_print= this->i;
@@ -37,7 +37,7 @@ namespace itl {
}
public:
-
+
template
cyclic_iteration(const Vector& r0, int max_iter_, Real tol_, Real atol_ = Real(0), int cycle_ = 100,
OStream& out = std::cout)
@@ -48,12 +48,12 @@ namespace itl {
OStream& out = std::cout)
: super(r0, max_iter_, tol_, atol_), cycle(cycle_), last_print(-1), multi_print(false), out(out)
{}
-
+
bool finished() { return super::finished(); }
template
- bool finished(const T& r)
+ bool finished(const T& r)
{
bool ret= super::finished(r);
print_resid();
@@ -61,7 +61,7 @@ namespace itl {
}
inline self& operator++() { ++this->i; return *this; }
-
+
inline self& operator+=(int n) { this->i+= n; return *this; }
operator int() const { return error_code(); }
@@ -72,7 +72,7 @@ namespace itl {
/// Set whether the residual is printed multiple times in iteration
void set_multi_print(bool m) { multi_print= m; }
- int error_code() const
+ int error_code() const
{
if (!this->my_suppress)
out << "finished! error code = " << this->error << '\n'
diff --git a/AMDiS/lib/mtl4/boost/numeric/itl/iteration/noisy_iteration.hpp b/AMDiS/lib/mtl4/boost/numeric/itl/iteration/noisy_iteration.hpp
index 73acbdf99dc4f971c3e23d1d4dd92c04d037f7b7..1bfff486f6704b11290eda59da53fe05edb5278e 100644
--- a/AMDiS/lib/mtl4/boost/numeric/itl/iteration/noisy_iteration.hpp
+++ b/AMDiS/lib/mtl4/boost/numeric/itl/iteration/noisy_iteration.hpp
@@ -1,13 +1,13 @@
// Software License for MTL
-//
+//
// Copyright (c) 2007 The Trustees of Indiana University.
// 2008 Dresden University of Technology and the Trustees of Indiana University.
// 2010 SimuNova UG (haftungsbeschränkt), www.simunova.com.
// All rights reserved.
// Authors: Peter Gottschling and Andrew Lumsdaine
-//
+//
// This file is part of the Matrix Template Library
-//
+//
// See also license.mtl.txt in the distribution.
#ifndef ITL_NOISY_ITERATION_INCLUDE
@@ -19,7 +19,7 @@
namespace itl {
template
- class noisy_iteration : public cyclic_iteration
+ class noisy_iteration : public cyclic_iteration
{
public:
template
diff --git a/AMDiS/lib/mtl4/boost/numeric/itl/itl.hpp b/AMDiS/lib/mtl4/boost/numeric/itl/itl.hpp
index d802660d34666b8509fefadaaee32bfa9c4c3c79..4b28a411fb6d6559426c48caacd893593f109f4b 100644
--- a/AMDiS/lib/mtl4/boost/numeric/itl/itl.hpp
+++ b/AMDiS/lib/mtl4/boost/numeric/itl/itl.hpp
@@ -1,13 +1,13 @@
// Software License for MTL
-//
+//
// Copyright (c) 2007 The Trustees of Indiana University.
// 2008 Dresden University of Technology and the Trustees of Indiana University.
// 2010 SimuNova UG (haftungsbeschränkt), www.simunova.com.
// All rights reserved.
// Authors: Peter Gottschling and Andrew Lumsdaine
-//
+//
// This file is part of the Matrix Template Library
-//
+//
// See also license.mtl.txt in the distribution.
#ifndef ITL_ITL_INCLUDE
diff --git a/AMDiS/lib/mtl4/boost/numeric/itl/itl_fwd.hpp b/AMDiS/lib/mtl4/boost/numeric/itl/itl_fwd.hpp
index 15ddadbd2c5af1c16a356b3f0ef7518daffefd4a..59976671e7ebc444fafbe1036ff52e6cf0ecce64 100644
--- a/AMDiS/lib/mtl4/boost/numeric/itl/itl_fwd.hpp
+++ b/AMDiS/lib/mtl4/boost/numeric/itl/itl_fwd.hpp
@@ -1,13 +1,13 @@
// Software License for MTL
-//
+//
// Copyright (c) 2007 The Trustees of Indiana University.
// 2008 Dresden University of Technology and the Trustees of Indiana University.
// 2010 SimuNova UG (haftungsbeschränkt), www.simunova.com.
// All rights reserved.
// Authors: Peter Gottschling and Andrew Lumsdaine
-//
+//
// This file is part of the Matrix Template Library
-//
+//
// See also license.mtl.txt in the distribution.
#ifndef ITL_ITL_FWD_INCLUDE
@@ -27,7 +27,7 @@ namespace itl {
template struct solver;
template class identity;
- // template Vector solve(const identity&, const Vector& x);
+ // template Vector solve(const identity&, const Vector& x);
// template Vector adjoint_solve(const identity&, const Vector& x);
template class diagonal;
@@ -46,39 +46,39 @@ namespace itl {
} // namespace pc
- template < typename LinearOperator, typename HilbertSpaceX, typename HilbertSpaceB,
+ template < typename LinearOperator, typename HilbertSpaceX, typename HilbertSpaceB,
typename Preconditioner, typename Iteration >
- int cg(const LinearOperator& A, HilbertSpaceX& x, const HilbertSpaceB& b,
+ int cg(const LinearOperator& A, HilbertSpaceX& x, const HilbertSpaceB& b,
const Preconditioner& M, Iteration& iter);
- template < typename LinearOperator, typename Preconditioner= pc::identity,
+ template < typename LinearOperator, typename Preconditioner= pc::identity,
typename RightPreconditioner= pc::identity >
class cg_solver;
- template < typename LinearOperator, typename Vector,
+ template < typename LinearOperator, typename Vector,
typename Preconditioner, typename Iteration >
int bicg(const LinearOperator &A, Vector &x, const Vector &b,
const Preconditioner &M, Iteration& iter);
- template < class LinearOperator, class HilbertSpaceX, class HilbertSpaceB,
+ template < class LinearOperator, class HilbertSpaceX, class HilbertSpaceB,
class Preconditioner, class Iteration >
- int bicgstab(const LinearOperator& A, HilbertSpaceX& x, const HilbertSpaceB& b,
+ int bicgstab(const LinearOperator& A, HilbertSpaceX& x, const HilbertSpaceB& b,
const Preconditioner& M, Iteration& iter);
- template < class LinearOperator, class HilbertSpaceX, class HilbertSpaceB,
+ template < class LinearOperator, class HilbertSpaceX, class HilbertSpaceB,
class Preconditioner, class Iteration >
- int bicgstab_2(const LinearOperator& A, HilbertSpaceX& x, const HilbertSpaceB& b,
+ int bicgstab_2(const LinearOperator& A, HilbertSpaceX& x, const HilbertSpaceB& b,
const Preconditioner& M, Iteration& iter);
- template < typename LinearOperator, typename Vector,
- typename LeftPreconditioner, typename RightPreconditioner,
+ template < typename LinearOperator, typename Vector,
+ typename LeftPreconditioner, typename RightPreconditioner,
typename Iteration >
int bicgstab_ell(const LinearOperator &A, Vector &x, const Vector &b,
- const LeftPreconditioner &L, const RightPreconditioner &R,
+ const LeftPreconditioner &L, const RightPreconditioner &R,
Iteration& iter, size_t l);
- template < typename LinearOperator, typename Preconditioner= pc::identity,
+ template < typename LinearOperator, typename Preconditioner= pc::identity,
typename RightPreconditioner= pc::identity >
class bicgstab_ell_solver;
diff --git a/AMDiS/lib/mtl4/boost/numeric/itl/krylov/bicg.hpp b/AMDiS/lib/mtl4/boost/numeric/itl/krylov/bicg.hpp
index 9dde56bc35f9e5253be85625b0346c4cfd4f97ce..35ca928ddff82eed2e9e17671d719a18bdf63411 100644
--- a/AMDiS/lib/mtl4/boost/numeric/itl/krylov/bicg.hpp
+++ b/AMDiS/lib/mtl4/boost/numeric/itl/krylov/bicg.hpp
@@ -1,13 +1,13 @@
// Software License for MTL
-//
+//
// Copyright (c) 2007 The Trustees of Indiana University.
// 2008 Dresden University of Technology and the Trustees of Indiana University.
// 2010 SimuNova UG (haftungsbeschränkt), www.simunova.com.
// All rights reserved.
// Authors: Peter Gottschling and Andrew Lumsdaine
-//
+//
// This file is part of the Matrix Template Library
-//
+//
// See also license.mtl.txt in the distribution.
#ifndef ITL_BICG_INCLUDE
@@ -23,7 +23,7 @@
namespace itl {
/// Bi-Conjugate Gradient
-template < typename LinearOperator, typename Vector,
+template < typename LinearOperator, typename Vector,
typename Preconditioner, typename Iteration >
int bicg(const LinearOperator &A, Vector &x, const Vector &b,
const Preconditioner &M, Iteration& iter)
@@ -46,7 +46,7 @@ int bicg(const LinearOperator &A, Vector &x, const Vector &b,
p= z;
p_tilde= z_tilde;
} else {
- beta= rho_1 / rho_2;
+ beta= rho_1 / rho_2;
p= z + beta * p;
p_tilde= z_tilde + conj(beta) * p_tilde;
}
@@ -65,20 +65,20 @@ int bicg(const LinearOperator &A, Vector &x, const Vector &b,
}
/// Solver class for BiCG method; right preconditioner ignored (prints warning if not identity)
-template < typename LinearOperator, typename Preconditioner= pc::identity,
+template < typename LinearOperator, typename Preconditioner= pc::identity,
typename RightPreconditioner= pc::identity >
class bicg_solver
{
public:
/// Construct solver from a linear operator; generate (left) preconditioner from it
- explicit bicg_solver(const LinearOperator& A) : A(A), L(A)
+ explicit bicg_solver(const LinearOperator& A) : A(A), L(A)
{
if (!pc::static_is_identity::value)
std::cerr << "Right Preconditioner ignored!" << std::endl;
}
/// Construct solver from a linear operator and (left) preconditioner
- bicg_solver(const LinearOperator& A, const Preconditioner& L) : A(A), L(L)
+ bicg_solver(const LinearOperator& A, const Preconditioner& L) : A(A), L(L)
{
if (!pc::static_is_identity::value)
std::cerr << "Right Preconditioner ignored!" << std::endl;
@@ -98,7 +98,7 @@ class bicg_solver
itl::basic_iteration iter(x, 1, 0, 0);
return bicg(A, x, b, L, iter);
}
-
+
private:
const LinearOperator& A;
Preconditioner L;
diff --git a/AMDiS/lib/mtl4/boost/numeric/itl/krylov/bicgstab.hpp b/AMDiS/lib/mtl4/boost/numeric/itl/krylov/bicgstab.hpp
index c61d487464ed77795b9dc15762f2ac9f6cf8ed6a..91c2a693fc0e86f6e7255d710a81c410b85aefd7 100644
--- a/AMDiS/lib/mtl4/boost/numeric/itl/krylov/bicgstab.hpp
+++ b/AMDiS/lib/mtl4/boost/numeric/itl/krylov/bicgstab.hpp
@@ -1,13 +1,13 @@
// Software License for MTL
-//
+//
// Copyright (c) 2007 The Trustees of Indiana University.
// 2008 Dresden University of Technology and the Trustees of Indiana University.
// 2010 SimuNova UG (haftungsbeschränkt), www.simunova.com.
// All rights reserved.
// Authors: Peter Gottschling and Andrew Lumsdaine
-//
+//
// This file is part of the Matrix Template Library
-//
+//
// See also license.mtl.txt in the distribution.
#ifndef ITL_BICGSTAB_INCLUDE
@@ -22,9 +22,9 @@
namespace itl {
/// Bi-Conjugate Gradient Stabilized
-template < class LinearOperator, class HilbertSpaceX, class HilbertSpaceB,
+template < class LinearOperator, class HilbertSpaceX, class HilbertSpaceB,
class Preconditioner, class Iteration >
-int bicgstab(const LinearOperator& A, HilbertSpaceX& x, const HilbertSpaceB& b,
+int bicgstab(const LinearOperator& A, HilbertSpaceX& x, const HilbertSpaceB& b,
const Preconditioner& M, Iteration& iter)
{
typedef typename mtl::Collection::value_type Scalar;
@@ -32,7 +32,7 @@ int bicgstab(const LinearOperator& A, HilbertSpaceX& x, const HilbertSpaceB& b,
mtl::vampir_trace<7004> tracer;
Scalar rho_1(0), rho_2(0), alpha(0), beta(0), gamma, omega(0);
- Vector p(resource(x)), phat(resource(x)), s(resource(x)), shat(resource(x)),
+ Vector p(resource(x)), phat(resource(x)), s(resource(x)), shat(resource(x)),
t(resource(x)), v(resource(x)), r(resource(x)), rtilde(resource(x));
r = b - A * x;
@@ -58,7 +58,7 @@ int bicgstab(const LinearOperator& A, HilbertSpaceX& x, const HilbertSpaceB& b,
alpha = rho_1 / gamma;
s = r - alpha * v;
-
+
if (iter.finished(s)) {
x += alpha * phat;
break;
@@ -66,30 +66,30 @@ int bicgstab(const LinearOperator& A, HilbertSpaceX& x, const HilbertSpaceB& b,
shat = solve(M, s);
t = A * shat;
omega = dot(t, s) / dot(t, t);
-
+
x += omega * shat + alpha * phat;
r = s - omega * t;
-
- rho_2 = rho_1;
+
+ rho_2 = rho_1;
}
return iter;
}
/// Solver class for BiCGStab method; right preconditioner ignored (prints warning if not identity)
-template < typename LinearOperator, typename Preconditioner= pc::identity,
+template < typename LinearOperator, typename Preconditioner= pc::identity,
typename RightPreconditioner= pc::identity >
class bicgstab_solver
{
public:
/// Construct solver from a linear operator; generate (left) preconditioner from it
- explicit bicgstab_solver(const LinearOperator& A) : A(A), L(A)
+ explicit bicgstab_solver(const LinearOperator& A) : A(A), L(A)
{
if (!pc::static_is_identity::value)
std::cerr << "Right Preconditioner ignored!" << std::endl;
}
/// Construct solver from a linear operator and (left) preconditioner
- bicgstab_solver(const LinearOperator& A, const Preconditioner& L) : A(A), L(L)
+ bicgstab_solver(const LinearOperator& A, const Preconditioner& L) : A(A), L(L)
{
if (!pc::static_is_identity::value)
std::cerr << "Right Preconditioner ignored!" << std::endl;
@@ -109,7 +109,7 @@ class bicgstab_solver
itl::basic_iteration iter(x, 1, 0, 0);
return solve(b, x, iter);
}
-
+
private:
const LinearOperator& A;
Preconditioner L;
diff --git a/AMDiS/lib/mtl4/boost/numeric/itl/krylov/bicgstab_2.hpp b/AMDiS/lib/mtl4/boost/numeric/itl/krylov/bicgstab_2.hpp
index 013379700470ba2f73f2375f262e6d1642f83167..692878d0f3cb8f1a2f96c598f034d624aa1d4a95 100644
--- a/AMDiS/lib/mtl4/boost/numeric/itl/krylov/bicgstab_2.hpp
+++ b/AMDiS/lib/mtl4/boost/numeric/itl/krylov/bicgstab_2.hpp
@@ -1,13 +1,13 @@
// Software License for MTL
-//
+//
// Copyright (c) 2007 The Trustees of Indiana University.
// 2008 Dresden University of Technology and the Trustees of Indiana University.
// 2010 SimuNova UG (haftungsbeschränkt), www.simunova.com.
// All rights reserved.
// Authors: Peter Gottschling and Andrew Lumsdaine
-//
+//
// This file is part of the Matrix Template Library
-//
+//
// See also license.mtl.txt in the distribution.
#ifndef ITL_BICGSTAB_2_INCLUDE
@@ -30,7 +30,7 @@
namespace itl {
/// Bi-Conjugate Gradient Stabilized(2)
-template < typename LinearOperator, typename Vector,
+template < typename LinearOperator, typename Vector,
typename Preconditioner, typename Iteration >
int bicgstab_2(const LinearOperator &A, Vector &x, const Vector &b,
const Preconditioner &L, Iteration& iter)
@@ -47,7 +47,7 @@ int bicgstab_2(const LinearOperator &A, Vector &x, const Vector &b,
Vector x0(resource(x)), y(resource(x));
mtl::vector::dense_vector r_hat(l+1,Vector(resource(x))), u_hat(l+1,Vector(resource(x)));
- // shift problem
+ // shift problem
x0= zero;
r_hat[0]= b;
if (two_norm(x) != zero) {
@@ -61,7 +61,7 @@ int bicgstab_2(const LinearOperator &A, Vector &x, const Vector &b,
r_hat[0]= y;
u_hat[0]= zero;
- Scalar rho_0(one), rho_1(zero), alpha(zero), Gamma(zero), beta(zero), omega(one);
+ Scalar rho_0(one), rho_1(zero), alpha(zero), Gamma(zero), beta(zero), omega(one);
mtl::matrix::dense2D tau(l+1, l+1);
mtl::vector::dense_vector sigma(l+1), gamma(l+1), gamma_a(l+1), gamma_aa(l+1);
@@ -70,26 +70,26 @@ int bicgstab_2(const LinearOperator &A, Vector &x, const Vector &b,
rho_0= -omega * rho_0;
for (Size j= 0; j < 2; ++j) {
- rho_1= dot(r0_tilde, r_hat[j]);
+ rho_1= dot(r0_tilde, r_hat[j]);
beta= alpha * rho_1/rho_0; rho_0= rho_1;
for (Size i= 0; i <= j; ++i)
u_hat[i]= r_hat[i] - beta * u_hat[i];
-
+
y= A * u_hat[j];
u_hat[j+1]= solve(L, y);
- Gamma= dot(r0_tilde, u_hat[j+1]);
+ Gamma= dot(r0_tilde, u_hat[j+1]);
alpha= rho_0 / Gamma;
for (Size i= 0; i <= j; ++i)
r_hat[i]-= alpha * u_hat[i+1];
-
+
if (iter.finished(r_hat[j])) {
x+= x0;
return iter;
}
- y= A * r_hat[j];
+ y= A * r_hat[j];
r_hat[j+1]= solve(L, y);
x+= alpha * u_hat[0];
}
@@ -98,13 +98,13 @@ int bicgstab_2(const LinearOperator &A, Vector &x, const Vector &b,
irange i1m(1, imax);
mtl::vector::dense_vector r_hat_tail(r_hat[i1m]);
tau[i1m][i1m]= orthogonalize_factors(r_hat_tail);
- for (Size j= 1; j <= l; ++j)
+ for (Size j= 1; j <= l; ++j)
gamma_a[j]= dot(r_hat[j], r_hat[0]) / tau[j][j];
gamma[l]= gamma_a[l]; omega= gamma[l];
if (omega == zero) return iter.fail(3, "bicg breakdown #2");
- // is this something like a tri-solve?
+ // is this something like a tri-solve?
for (Size j= l-1; j > 0; --j) {
Scalar sum= zero;
for (Size i=j+1;i<=l;++i)
@@ -130,20 +130,20 @@ int bicgstab_2(const LinearOperator &A, Vector &x, const Vector &b,
/// Solver class for BiCGStab(2) method; right preconditioner ignored (prints warning if not identity)
-template < typename LinearOperator, typename Preconditioner= pc::identity,
+template < typename LinearOperator, typename Preconditioner= pc::identity,
typename RightPreconditioner= pc::identity >
class bicgstab_2_solver
{
public:
/// Construct solver from a linear operator; generate (left) preconditioner from it
- explicit bicgstab_2_solver(const LinearOperator& A) : A(A), L(A)
+ explicit bicgstab_2_solver(const LinearOperator& A) : A(A), L(A)
{
if (!pc::static_is_identity::value)
std::cerr << "Right Preconditioner ignored!" << std::endl;
}
/// Construct solver from a linear operator and (left) preconditioner
- bicgstab_2_solver(const LinearOperator& A, const Preconditioner& L) : A(A), L(L)
+ bicgstab_2_solver(const LinearOperator& A, const Preconditioner& L) : A(A), L(L)
{
if (!pc::static_is_identity::value)
std::cerr << "Right Preconditioner ignored!" << std::endl;
@@ -163,7 +163,7 @@ class bicgstab_2_solver
itl::basic_iteration iter(x, 1, 0, 0);
return bicgstab_2(A, x, b, L, iter);
}
-
+
private:
const LinearOperator& A;
Preconditioner L;
diff --git a/AMDiS/lib/mtl4/boost/numeric/itl/krylov/bicgstab_ell.hpp b/AMDiS/lib/mtl4/boost/numeric/itl/krylov/bicgstab_ell.hpp
index 450eb5cc477c4aa6e7a0492f3a35f23e7f159130..21b249650b7578feff179c7496a19346471f8a67 100644
--- a/AMDiS/lib/mtl4/boost/numeric/itl/krylov/bicgstab_ell.hpp
+++ b/AMDiS/lib/mtl4/boost/numeric/itl/krylov/bicgstab_ell.hpp
@@ -1,13 +1,13 @@
// Software License for MTL
-//
+//
// Copyright (c) 2007 The Trustees of Indiana University.
// 2008 Dresden University of Technology and the Trustees of Indiana University.
// 2010 SimuNova UG (haftungsbeschränkt), www.simunova.com.
// All rights reserved.
// Authors: Peter Gottschling and Andrew Lumsdaine
-//
+//
// This file is part of the Matrix Template Library
-//
+//
// See also license.mtl.txt in the distribution.
// Written by Jan Bos
@@ -31,12 +31,12 @@
namespace itl {
-/// Bi-Conjugate Gradient Stabilized(ell)
-template < typename LinearOperator, typename Vector,
- typename LeftPreconditioner, typename RightPreconditioner,
+/// Bi-Conjugate Gradient Stabilized(ell)
+template < typename LinearOperator, typename Vector,
+ typename LeftPreconditioner, typename RightPreconditioner,
typename Iteration >
int bicgstab_ell(const LinearOperator &A, Vector &x, const Vector &b,
- const LeftPreconditioner &L, const RightPreconditioner &R,
+ const LeftPreconditioner &L, const RightPreconditioner &R,
Iteration& iter, size_t l)
{
mtl::vampir_trace<7006> tracer;
@@ -50,7 +50,7 @@ int bicgstab_ell(const LinearOperator &A, Vector &x, const Vector &b,
Vector x0(resource(x)), y(resource(x));
mtl::vector::dense_vector r_hat(l+1,Vector(resource(x))), u_hat(l+1,Vector(resource(x)));
- // shift problem
+ // shift problem
x0= zero;
r_hat[0]= b;
if (two_norm(x) != zero) {
@@ -64,7 +64,7 @@ int bicgstab_ell(const LinearOperator &A, Vector &x, const Vector &b,
r_hat[0]= y;
u_hat[0]= zero;
- Scalar rho_0(one), rho_1(zero), alpha(zero), Gamma(zero), beta(zero), omega(one);
+ Scalar rho_0(one), rho_1(zero), alpha(zero), Gamma(zero), beta(zero), omega(one);
mtl::matrix::dense2D tau(l+1, l+1);
mtl::vector::dense_vector sigma(l+1), gamma(l+1), gamma_a(l+1), gamma_aa(l+1);
@@ -73,20 +73,20 @@ int bicgstab_ell(const LinearOperator &A, Vector &x, const Vector &b,
rho_0= -omega * rho_0;
for (Size j= 0; j < l; ++j) {
- rho_1= dot(r0_tilde, r_hat[j]);
+ rho_1= dot(r0_tilde, r_hat[j]);
beta= alpha * rho_1/rho_0; rho_0= rho_1;
for (Size i= 0; i <= j; ++i)
u_hat[i]= r_hat[i] - beta * u_hat[i];
-
+
y= A * Vector(solve(R, u_hat[j]));
u_hat[j+1]= solve(L, y);
- Gamma= dot(r0_tilde, u_hat[j+1]);
+ Gamma= dot(r0_tilde, u_hat[j+1]);
alpha= rho_0 / Gamma;
for (Size i= 0; i <= j; ++i)
r_hat[i]-= alpha * u_hat[i+1];
-
+
if (iter.finished(r_hat[j])) {
x= solve(R, x);
x+= x0;
@@ -94,7 +94,7 @@ int bicgstab_ell(const LinearOperator &A, Vector &x, const Vector &b,
}
r_hat[j+1]= solve(R, r_hat[j]);
- y= A * r_hat[j+1];
+ y= A * r_hat[j+1];
r_hat[j+1]= solve(L, y);
x+= alpha * u_hat[0];
}
@@ -103,13 +103,13 @@ int bicgstab_ell(const LinearOperator &A, Vector &x, const Vector &b,
irange i1m(1, imax);
mtl::vector::dense_vector r_hat_tail(r_hat[i1m]);
tau[i1m][i1m]= orthogonalize_factors(r_hat_tail);
- for (Size j= 1; j <= l; ++j)
+ for (Size j= 1; j <= l; ++j)
gamma_a[j]= dot(r_hat[j], r_hat[0]) / tau[j][j];
gamma[l]= gamma_a[l]; omega= gamma[l];
if (omega == zero) return iter.fail(3, "bicg breakdown #2");
- // is this something like a tri-solve?
+ // is this something like a tri-solve?
for (Size j= l-1; j > 0; --j) {
Scalar sum= zero;
for (Size i=j+1;i<=l;++i)
@@ -134,7 +134,7 @@ int bicgstab_ell(const LinearOperator &A, Vector &x, const Vector &b,
/// Solver class for BiCGStab(ell) method; right preconditioner ignored (prints warning if not identity)
-template < typename LinearOperator, typename Preconditioner,
+template < typename LinearOperator, typename Preconditioner,
typename RightPreconditioner>
class bicgstab_ell_solver
{
@@ -146,7 +146,7 @@ class bicgstab_ell_solver
bicgstab_ell_solver(const LinearOperator& A, size_t l, const Preconditioner& L) : A(A), l(l), L(L), R(A) {}
/// Construct solver from a linear operator and left preconditioner
- bicgstab_ell_solver(const LinearOperator& A, size_t l, const Preconditioner& L, const RightPreconditioner& R)
+ bicgstab_ell_solver(const LinearOperator& A, size_t l, const Preconditioner& L, const RightPreconditioner& R)
: A(A), l(l), L(L), R(R) {}
/// Solve linear system approximately as specified by \p iter
@@ -163,7 +163,7 @@ class bicgstab_ell_solver
itl::basic_iteration iter(x, 1, 0, 0);
return solve(b, x, iter);
}
-
+
private:
const LinearOperator& A;
size_t l;
diff --git a/AMDiS/lib/mtl4/boost/numeric/itl/krylov/cg.hpp b/AMDiS/lib/mtl4/boost/numeric/itl/krylov/cg.hpp
index f1f2eeedbee8ecbaa8fe07b69b14c32d72d79019..df6d418b5931e58f40e81ead85e9fc8e5c3e4f2b 100644
--- a/AMDiS/lib/mtl4/boost/numeric/itl/krylov/cg.hpp
+++ b/AMDiS/lib/mtl4/boost/numeric/itl/krylov/cg.hpp
@@ -1,13 +1,13 @@
// Software License for MTL
-//
+//
// Copyright (c) 2007 The Trustees of Indiana University.
// 2008 Dresden University of Technology and the Trustees of Indiana University.
// 2010 SimuNova UG (haftungsbeschränkt), www.simunova.com.
// All rights reserved.
// Authors: Peter Gottschling and Andrew Lumsdaine
-//
+//
// This file is part of the Matrix Template Library
-//
+//
// See also license.mtl.txt in the distribution.
#ifndef ITL_CG_INCLUDE
@@ -33,9 +33,9 @@
namespace itl {
/// Conjugate Gradients without preconditioning
-template < typename LinearOperator, typename HilbertSpaceX, typename HilbertSpaceB,
+template < typename LinearOperator, typename HilbertSpaceX, typename HilbertSpaceB,
typename Iteration >
-int cg(const LinearOperator& A, HilbertSpaceX& x, const HilbertSpaceB& b,
+int cg(const LinearOperator& A, HilbertSpaceX& x, const HilbertSpaceB& b,
Iteration& iter)
{
mtl::vampir_trace<7001> tracer;
@@ -46,20 +46,20 @@ int cg(const LinearOperator& A, HilbertSpaceX& x, const HilbertSpaceB& b,
Scalar rho(0), rho_1(0), alpha(0), alpha_1(0);
Vector p(resource(x)), q(resource(x)), r(resource(x)), z(resource(x));
-
+
r = b - A*x;
rho = dot(r, r);
while (! iter.finished(Real(sqrt(abs(rho))))) {
++iter;
if (iter.first())
p = r;
- else
- p = r + (rho / rho_1) * p;
+ else
+ p = r + (rho / rho_1) * p;
// q = A * p; alpha = rho / dot(p, q);
(lazy(q)= A * p) || (lazy(alpha_1)= lazy_dot(p, q));
alpha= rho / alpha_1;
-
+
x += alpha * p;
rho_1 = rho;
(lazy(r) -= alpha * q) || (lazy(rho) = lazy_unary_dot(r));
@@ -69,9 +69,9 @@ int cg(const LinearOperator& A, HilbertSpaceX& x, const HilbertSpaceB& b,
}
/// Conjugate Gradients
-template < typename LinearOperator, typename HilbertSpaceX, typename HilbertSpaceB,
+template < typename LinearOperator, typename HilbertSpaceX, typename HilbertSpaceB,
typename Preconditioner, typename Iteration >
-int cg(const LinearOperator& A, HilbertSpaceX& x, const HilbertSpaceB& b,
+int cg(const LinearOperator& A, HilbertSpaceX& x, const HilbertSpaceB& b,
const Preconditioner& L, Iteration& iter)
{
using pc::is_identity;
@@ -86,7 +86,7 @@ int cg(const LinearOperator& A, HilbertSpaceX& x, const HilbertSpaceB& b,
Scalar rho(0), rho_1(0), rr, alpha(0), alpha_1;
Vector p(resource(x)), q(resource(x)), r(resource(x)), z(resource(x));
-
+
r = b - A*x;
rr = dot(r, r);
while (! iter.finished(Real(sqrt(abs(rr))))) {
@@ -95,12 +95,12 @@ int cg(const LinearOperator& A, HilbertSpaceX& x, const HilbertSpaceB& b,
if (iter.first())
p = z;
- else
+ else
p = z + (rho / rho_1) * p;
-
+
(lazy(q)= A * p) || (lazy(alpha_1)= lazy_dot(p, q));
alpha= rho / alpha_1;
-
+
x += alpha * p;
rho_1 = rho;
(lazy(r) -= alpha * q) || (lazy(rr) = lazy_unary_dot(r));
@@ -109,29 +109,29 @@ int cg(const LinearOperator& A, HilbertSpaceX& x, const HilbertSpaceB& b,
}
/// Conjugate Gradients with ignored right preconditioner to unify interface
-template < typename LinearOperator, typename HilbertSpaceX, typename HilbertSpaceB,
+template < typename LinearOperator, typename HilbertSpaceX, typename HilbertSpaceB,
typename Preconditioner, typename RightPreconditioner, typename Iteration >
-int cg(const LinearOperator& A, HilbertSpaceX& x, const HilbertSpaceB& b,
+int cg(const LinearOperator& A, HilbertSpaceX& x, const HilbertSpaceB& b,
const Preconditioner& L, const RightPreconditioner&, Iteration& iter)
{
return cg(A, x, b, L, iter);
}
/// Solver class for CG method; right preconditioner ignored (prints warning if not identity)
-template < typename LinearOperator, typename Preconditioner,
+template < typename LinearOperator, typename Preconditioner,
typename RightPreconditioner>
class cg_solver
{
public:
/// Construct solver from a linear operator; generate (left) preconditioner from it
- explicit cg_solver(const LinearOperator& A) : A(A), L(A)
+ explicit cg_solver(const LinearOperator& A) : A(A), L(A)
{
if (!pc::static_is_identity::value)
std::cerr << "Right Preconditioner ignored!" << std::endl;
}
/// Construct solver from a linear operator and (left) preconditioner
- cg_solver(const LinearOperator& A, const Preconditioner& L) : A(A), L(L)
+ cg_solver(const LinearOperator& A, const Preconditioner& L) : A(A), L(L)
{
if (!pc::static_is_identity::value)
std::cerr << "Right Preconditioner ignored!" << std::endl;
@@ -151,7 +151,7 @@ class cg_solver
itl::basic_iteration iter(x, 1, 0, 0);
return solve(b, x, iter);
}
-
+
private:
const LinearOperator& A;
Preconditioner L;
diff --git a/AMDiS/lib/mtl4/boost/numeric/itl/krylov/cgs.hpp b/AMDiS/lib/mtl4/boost/numeric/itl/krylov/cgs.hpp
index 0fc0705bbb62048fbacd3f81d9ce78f1dfd51ef9..ac41db09b29ec978bfdca366c78b927daf362ef3 100644
--- a/AMDiS/lib/mtl4/boost/numeric/itl/krylov/cgs.hpp
+++ b/AMDiS/lib/mtl4/boost/numeric/itl/krylov/cgs.hpp
@@ -1,13 +1,13 @@
// Software License for MTL
-//
+//
// Copyright (c) 2007 The Trustees of Indiana University.
// 2008 Dresden University of Technology and the Trustees of Indiana University.
// 2010 SimuNova UG (haftungsbeschränkt), www.simunova.com.
// All rights reserved.
// Authors: Peter Gottschling and Andrew Lumsdaine
-//
+//
// This file is part of the Matrix Template Library
-//
+//
// See also license.mtl.txt in the distribution.
#ifndef ITL_CGS_INCLUDE
@@ -21,7 +21,7 @@
namespace itl {
/// Conjugate Gradient Squared
-template < typename LinearOperator, typename Vector,
+template < typename LinearOperator, typename Vector,
typename Preconditioner, typename Iteration >
int cgs(const LinearOperator &A, Vector &x, const Vector &b,
const Preconditioner &M, Iteration& iter)
@@ -52,7 +52,7 @@ int cgs(const LinearOperator &A, Vector &x, const Vector &b,
u+= q;
uhat= solve(M, u);
-
+
x+= alpha * uhat;
qhat= A * uhat;
r-= alpha * qhat;
@@ -63,20 +63,20 @@ int cgs(const LinearOperator &A, Vector &x, const Vector &b,
}
/// Solver class for CGS method; right preconditioner ignored (prints warning if not identity)
-template < typename LinearOperator, typename Preconditioner= pc::identity,
+template < typename LinearOperator, typename Preconditioner= pc::identity,
typename RightPreconditioner= pc::identity >
class cgs_solver
{
public:
/// Construct solver from a linear operator; generate (left) preconditioner from it
- explicit cgs_solver(const LinearOperator& A) : A(A), L(A)
+ explicit cgs_solver(const LinearOperator& A) : A(A), L(A)
{
if (!pc::static_is_identity::value)
std::cerr << "Right Preconditioner ignored!" << std::endl;
}
/// Construct solver from a linear operator and (left) preconditioner
- cgs_solver(const LinearOperator& A, const Preconditioner& L) : A(A), L(L)
+ cgs_solver(const LinearOperator& A, const Preconditioner& L) : A(A), L(L)
{
if (!pc::static_is_identity::value)
std::cerr << "Right Preconditioner ignored!" << std::endl;
@@ -96,7 +96,7 @@ class cgs_solver
itl::basic_iteration iter(x, 1, 0, 0);
return solve(b, x, iter);
}
-
+
private:
const LinearOperator& A;
Preconditioner L;
diff --git a/AMDiS/lib/mtl4/boost/numeric/itl/krylov/fsm.hpp b/AMDiS/lib/mtl4/boost/numeric/itl/krylov/fsm.hpp
index e398bcef1dbf113fcf6fbe4a1c67389430e08c75..d509fa88a20bc963325630fe4b1448b6b25494ec 100644
--- a/AMDiS/lib/mtl4/boost/numeric/itl/krylov/fsm.hpp
+++ b/AMDiS/lib/mtl4/boost/numeric/itl/krylov/fsm.hpp
@@ -1,13 +1,13 @@
// Software License for MTL
-//
-// Copyright (c) 2007 The Trustees of Indiana University.
+//
+// Copyright (c) 2007 The Trustees of Indiana University.
// 2008 Dresden University of Technology and the Trustees of Indiana University.
-// 2010 SimuNova UG (haftungsbeschränkt), www.simunova.com.
+// 2010 SimuNova UG (haftungsbeschränkt), www.simunova.com.
// All rights reserved.
// Authors: Peter Gottschling and Andrew Lumsdaine
-//
+//
// This file is part of the Matrix Template Library
-//
+//
// See also license.mtl.txt in the distribution.
#ifndef ITL_FSM_INCLUDE
@@ -19,7 +19,7 @@ namespace itl {
/// Folded spectrum method
/** Computed and named as in http://en.wikipedia.org/wiki/Folded_spectrum_method **/
-template < typename LinearOperator, typename VectorSpace, typename EigenValue,
+template < typename LinearOperator, typename VectorSpace, typename EigenValue,
typename Damping, typename Iteration >
int fsm(const LinearOperator& H, VectorSpace& phi, EigenValue eps, Damping alpha, Iteration& iter)
{
diff --git a/AMDiS/lib/mtl4/boost/numeric/itl/krylov/gmres.hpp b/AMDiS/lib/mtl4/boost/numeric/itl/krylov/gmres.hpp
index 1a0235a171a15600314261b1dcee4a21732e34dc..02762b03d2fe998b74813850598f2d6f33ecdadb 100644
--- a/AMDiS/lib/mtl4/boost/numeric/itl/krylov/gmres.hpp
+++ b/AMDiS/lib/mtl4/boost/numeric/itl/krylov/gmres.hpp
@@ -29,7 +29,7 @@
namespace itl {
/// Generalized Minimal Residual method (without restart)
-/** It computes at most kmax_in iterations (or size(x) depending on what is smaller)
+/** It computes at most kmax_in iterations (or size(x) depending on what is smaller)
regardless on whether the termination criterion is reached or not. **/
template < typename Matrix, typename Vector, typename LeftPreconditioner, typename RightPreconditioner, typename Iteration >
int gmres_full(const Matrix &A, Vector &x, const Vector &b,
@@ -45,8 +45,8 @@ int gmres_full(const Matrix &A, Vector &x, const Vector &b,
Scalar rho, nu, hr;
Size k, kmax(std::min(size(x), Size(iter.max_iterations() - iter.iterations())));
Vector r0(b - A *x), r(solve(L,r0)), va(resource(x)), va0(resource(x)), va00(resource(x));
- mtl::matrix::multi_vector V(Vector(resource(x), zero), kmax+1);
- mtl::vector::dense_vector s(kmax+1, zero), c(kmax+1, zero), g(kmax+1, zero), y(kmax, zero); // replicated in distributed solvers
+ mtl::matrix::multi_vector V(Vector(resource(x), zero), kmax+1);
+ mtl::vector::dense_vector s(kmax+1, zero), c(kmax+1, zero), g(kmax+1, zero), y(kmax, zero); // replicated in distributed solvers
mtl::matrix::dense2D H(kmax+1, kmax); // dito
H= 0;
@@ -60,7 +60,7 @@ int gmres_full(const Matrix &A, Vector &x, const Vector &b,
for (k= 0; k < kmax ; ++k, ++iter) {
va0= A * Vector(solve(R, V.vector(k)));
V.vector(k+1)= va= solve(L,va0);
- // orth(V, V[k+1], false);
+ // orth(V, V[k+1], false);
// modified Gram Schmidt method
for (Size j= 0; j < k+1; j++) {
H[j][k]= dot(V.vector(j), V.vector(k+1));
@@ -74,13 +74,13 @@ int gmres_full(const Matrix &A, Vector &x, const Vector &b,
V.vector(k+1)-= hr * V.vector(j);
}
H[k+1][k]= two_norm(V.vector(k+1));
- if (H[k+1][k] != zero) // watch for breakdown
+ if (H[k+1][k] != zero) // watch for breakdown
V.vector(k+1)*= 1. / H[k+1][k];
// k Given's rotations
for(Size i= 0; i < k; i++)
mtl::matrix::givens >(H, H[i][k-1], H[i+1][k-1]).trafo(i);
-
+
nu= sqrt(H[k][k]*H[k][k]+H[k+1][k]*H[k+1][k]);
if(nu != zero){
c[k]= H[k][k]/nu;
@@ -91,7 +91,7 @@ int gmres_full(const Matrix &A, Vector &x, const Vector &b,
}
rho= abs(g[k+1]);
}
-
+
//reduce k, to get regular matrix
while (k > 0 && abs(g[k-1]<= iter.atol())) k--;
@@ -99,18 +99,18 @@ int gmres_full(const Matrix &A, Vector &x, const Vector &b,
irange range(k);
for (; !range.empty(); --range) {
try {
- y[range]= lu_solve(H[range][range], g[range]);
+ y[range]= lu_solve(H[range][range], g[range]);
} catch (mtl::matrix_singular) { continue; } // if singular then try with sub-matrix
break;
}
if (range.finish() < k)
- std::cerr << "GMRES orhogonalized with " << k << " vectors but matrix singular, can only use "
+ std::cerr << "GMRES orhogonalized with " << k << " vectors but matrix singular, can only use "
<< range.finish() << " vectors!\n";
if (range.empty())
return iter.fail(2, "GMRES did not find any direction to correct x");
x+= Vector(solve(R, Vector(V.vector(range)*y[range])));
-
+
r= b - A*x;
return iter.terminate(r);
}
@@ -121,7 +121,7 @@ template < typename Matrix, typename Vector, typename LeftPreconditioner,
int gmres(const Matrix &A, Vector &x, const Vector &b,
LeftPreconditioner &L, RightPreconditioner &R,
Iteration& iter, typename mtl::Collection::size_type restart)
-{
+{
do {
Iteration inner(iter);
inner.set_max_iterations(std::min(int(iter.iterations()+restart), iter.max_iterations()));
@@ -134,21 +134,21 @@ int gmres(const Matrix &A, Vector &x, const Vector &b,
}
/// Solver class for GMRES; right preconditioner ignored (prints warning if not identity)
-template < typename LinearOperator, typename Preconditioner= pc::identity,
+template < typename LinearOperator, typename Preconditioner= pc::identity,
typename RightPreconditioner= pc::identity >
class gmres_solver
{
public:
/// Construct solver from a linear operator; generate (left) preconditioner from it
- explicit gmres_solver(const LinearOperator& A, size_t restart= 8)
+ explicit gmres_solver(const LinearOperator& A, size_t restart= 8)
: A(A), restart(restart), L(A), R(A) {}
/// Construct solver from a linear operator and left preconditioner
- gmres_solver(const LinearOperator& A, size_t restart, const Preconditioner& L)
+ gmres_solver(const LinearOperator& A, size_t restart, const Preconditioner& L)
: A(A), restart(restart), L(L), R(A) {}
/// Construct solver from a linear operator and left preconditioner
- gmres_solver(const LinearOperator& A, size_t restart, const Preconditioner& L, const RightPreconditioner& R)
+ gmres_solver(const LinearOperator& A, size_t restart, const Preconditioner& L, const RightPreconditioner& R)
: A(A), restart(restart), L(L), R(R) {}
/// Solve linear system approximately as specified by \p iter
@@ -165,7 +165,7 @@ class gmres_solver
itl::basic_iteration iter(x, 1, 0, 0);
return solve(b, x, iter);
}
-
+
private:
const LinearOperator& A;
size_t restart;
diff --git a/AMDiS/lib/mtl4/boost/numeric/itl/krylov/idr_s.hpp b/AMDiS/lib/mtl4/boost/numeric/itl/krylov/idr_s.hpp
index 9979361adbadbe51fa59a25e2f3773a530e6fa87..33eacb0666879774404c08d22e00d1020d725c14 100644
--- a/AMDiS/lib/mtl4/boost/numeric/itl/krylov/idr_s.hpp
+++ b/AMDiS/lib/mtl4/boost/numeric/itl/krylov/idr_s.hpp
@@ -1,16 +1,16 @@
// Software License for MTL
-//
+//
// Copyright (c) 2007 The Trustees of Indiana University.
// 2008 Dresden University of Technology and the Trustees of Indiana University.
// 2010 SimuNova UG (haftungsbeschränkt), www.simunova.com.
// All rights reserved.
// Authors: Peter Gottschling and Andrew Lumsdaine
-//
+//
// This file is part of the Matrix Template Library
-//
+//
// See also license.mtl.txt in the distribution.
-// Peter Sonneveld and Martin B. van Gijzen, IDR(s): a family of simple and fast algorithms for solving large nonsymmetric linear systems.
+// Peter Sonneveld and Martin B. van Gijzen, IDR(s): a family of simple and fast algorithms for solving large nonsymmetric linear systems.
// SIAM J. Sci. Comput. Vol. 31, No. 2, pp. 1035-1062 (2008). (copyright SIAM)
#ifndef ITL_IDR_S_INCLUDE
@@ -29,12 +29,12 @@
namespace itl {
-/// Induced Dimension Reduction on s dimensions (IDR(s))
-template < typename LinearOperator, typename Vector,
- typename LeftPreconditioner, typename RightPreconditioner,
+/// Induced Dimension Reduction on s dimensions (IDR(s))
+template < typename LinearOperator, typename Vector,
+ typename LeftPreconditioner, typename RightPreconditioner,
typename Iteration >
int idr_s(const LinearOperator &A, Vector &x, const Vector &b,
- const LeftPreconditioner &, const RightPreconditioner &,
+ const LeftPreconditioner &, const RightPreconditioner &,
Iteration& iter, size_t s)
{
mtl::vampir_trace<7010> tracer;
@@ -49,10 +49,10 @@ int idr_s(const LinearOperator &A, Vector &x, const Vector &b,
Scalar omega(zero);
Vector x0(x), y(resource(x)), v(resource(x)), t(resource(x)), q(resource(x)), r(b - A * x);
mtl::matrix::multi_vector dR(Vector(resource(x), zero), s), dX(Vector(resource(x), zero), s), P(Vector(resource(x), zero), s);
- mtl::vector::dense_vector m(s), c(s), dm(s); // replicated in distributed solvers
+ mtl::vector::dense_vector m(s), c(s), dm(s); // replicated in distributed solvers
mtl::matrix::dense2D M(s, s); // dito
- random(P);
+ random(P);
P.vector(0)= r;
orth(P);
@@ -61,20 +61,20 @@ int idr_s(const LinearOperator &A, Vector &x, const Vector &b,
omega= dot(v, r) / dot(v, v);
dX.vector(k)= omega * r;
dR.vector(k)= -omega * v;
- x+= dX.vector(k);
+ x+= dX.vector(k);
r+= dR.vector(k);
if ((++iter).finished(r)) return iter;
- M[iall][k]= trans(P) * dR.vector(k);
+ M[iall][k]= trans(P) * dR.vector(k);
}
Size oldest= 0;
m= trans(P) * r;
while (! iter.finished(r)) {
-
+
for (size_t k= 0; k < s; k++) {
c= lu_solve(M, m);
- q= dR * -c;
+ q= dR * -c;
v= r + q;
if (k == 0) {
t= A * v;
@@ -101,7 +101,7 @@ int idr_s(const LinearOperator &A, Vector &x, const Vector &b,
}
/// Solver class for IDR(s) method; right preconditioner ignored (prints warning if not identity)
-template < typename LinearOperator, typename Preconditioner= pc::identity,
+template < typename LinearOperator, typename Preconditioner= pc::identity,
typename RightPreconditioner= pc::identity >
class idr_s_solver
{
@@ -113,7 +113,7 @@ class idr_s_solver
idr_s_solver(const LinearOperator& A, size_t s, const Preconditioner& L) : A(A), s(s), L(L), R(A) {}
/// Construct solver from a linear operator and left preconditioner
- idr_s_solver(const LinearOperator& A, size_t s, const Preconditioner& L, const RightPreconditioner& R)
+ idr_s_solver(const LinearOperator& A, size_t s, const Preconditioner& L, const RightPreconditioner& R)
: A(A), s(s), L(L), R(R) {}
/// Solve linear system approximately as specified by \p iter
@@ -130,7 +130,7 @@ class idr_s_solver
itl::basic_iteration iter(x, 1, 0, 0);
return solve(b, x, iter);
}
-
+
private:
const LinearOperator& A;
size_t s;
diff --git a/AMDiS/lib/mtl4/boost/numeric/itl/krylov/qmr.hpp b/AMDiS/lib/mtl4/boost/numeric/itl/krylov/qmr.hpp
index 151c5eeb0187b68b1a88a070b7ef1bab8b0d6402..8b1baa5939ce500425fce185594590d235e5bcab 100644
--- a/AMDiS/lib/mtl4/boost/numeric/itl/krylov/qmr.hpp
+++ b/AMDiS/lib/mtl4/boost/numeric/itl/krylov/qmr.hpp
@@ -26,7 +26,7 @@ namespace itl {
/// Quasi-Minimal Residual method
template < typename Matrix, typename Vector,typename LeftPreconditioner,
typename RightPreconditioner, typename Iteration >
-int qmr(const Matrix& A, Vector& x, const Vector& b, LeftPreconditioner& L,
+int qmr(const Matrix& A, Vector& x, const Vector& b, LeftPreconditioner& L,
const RightPreconditioner& R, Iteration& iter)
{
mtl::vampir_trace<7008> tracer;
@@ -36,7 +36,7 @@ int qmr(const Matrix& A, Vector& x, const Vector& b, LeftPreconditioner& L,
const Scalar zero= math::zero(Scalar()), one= math::one(Scalar());
Scalar beta, gamma(one), gamma_1, delta, eta(-one), ep(one), rho_1, theta(zero), theta_1;
- Vector r(b - A * x), v_tld(r), y(solve(L, v_tld)), w_tld(r), z(adjoint_solve(R,w_tld)), v(resource(x)), w(resource(x)),
+ Vector r(b - A * x), v_tld(r), y(solve(L, v_tld)), w_tld(r), z(adjoint_solve(R,w_tld)), v(resource(x)), w(resource(x)),
y_tld(resource(x)), z_tld(resource(x)), p(resource(x)), q(resource(x)), p_tld(resource(x)), d(resource(x)), s(resource(x));
if (iter.finished(r))
@@ -60,7 +60,7 @@ int qmr(const Matrix& A, Vector& x, const Vector& b, LeftPreconditioner& L,
return iter.fail(3, "qmr breakdown, delta=0 #3");
y_tld = solve(R,y);
- z_tld = adjoint_solve(L,z);
+ z_tld = adjoint_solve(L,z);
if (iter.first()) {
p = y_tld;
@@ -81,8 +81,8 @@ int qmr(const Matrix& A, Vector& x, const Vector& b, LeftPreconditioner& L,
y = solve(L,v_tld);
rho_1 = rho;
rho = two_norm(y);
- w_tld= trans(A)*q - beta*w;
- z = adjoint_solve(R, w_tld);
+ w_tld= trans(A)*q - beta*w;
+ z = adjoint_solve(R, w_tld);
xi = two_norm(z);
gamma_1 = gamma;
theta_1 = theta;
@@ -107,7 +107,7 @@ int qmr(const Matrix& A, Vector& x, const Vector& b, LeftPreconditioner& L,
}
/// Solver class for Quasi-minimal residual method; right preconditioner ignored (prints warning if not identity)
-template < typename LinearOperator, typename Preconditioner= pc::identity,
+template < typename LinearOperator, typename Preconditioner= pc::identity,
typename RightPreconditioner= pc::identity >
class qmr_solver
{
@@ -119,7 +119,7 @@ class qmr_solver
qmr_solver(const LinearOperator& A, const Preconditioner& L) : A(A), L(L), R(A) {}
/// Construct solver from a linear operator and left preconditioner
- qmr_solver(const LinearOperator& A, const Preconditioner& L, const RightPreconditioner& R)
+ qmr_solver(const LinearOperator& A, const Preconditioner& L, const RightPreconditioner& R)
: A(A), L(L), R(R) {}
/// Solve linear system approximately as specified by \p iter
@@ -136,7 +136,7 @@ class qmr_solver
itl::basic_iteration iter(x, 1, 0, 0);
return solve(b, x, iter);
}
-
+
private:
const LinearOperator& A;
Preconditioner L;
diff --git a/AMDiS/lib/mtl4/boost/numeric/itl/krylov/repeating_solver.hpp b/AMDiS/lib/mtl4/boost/numeric/itl/krylov/repeating_solver.hpp
index 9716cf2620ab256a835bc86228a9ab9e7a2e8f56..ac905e441a08613d2fa1c0370856e82d6b894fbe 100644
--- a/AMDiS/lib/mtl4/boost/numeric/itl/krylov/repeating_solver.hpp
+++ b/AMDiS/lib/mtl4/boost/numeric/itl/krylov/repeating_solver.hpp
@@ -1,13 +1,13 @@
// Software License for MTL
-//
-// Copyright (c) 2007 The Trustees of Indiana University.
+//
+// Copyright (c) 2007 The Trustees of Indiana University.
// 2008 Dresden University of Technology and the Trustees of Indiana University.
-// 2010 SimuNova UG, www.simunova.com.
+// 2010 SimuNova UG, www.simunova.com.
// All rights reserved.
// Authors: Peter Gottschling and Andrew Lumsdaine
-//
+//
// This file is part of the Matrix Template Library
-//
+//
// See also tools/license/license.mtl.txt in the distribution.
#ifndef ITL_REPEATING_SOLVER_INCLUDE
diff --git a/AMDiS/lib/mtl4/boost/numeric/itl/krylov/tfqmr.hpp b/AMDiS/lib/mtl4/boost/numeric/itl/krylov/tfqmr.hpp
index eb2284bca4c8f0a18fe9fda06bd0f668ee30e1ba..5370f16ce603cee2a36046ca74c14207ec98b91b 100644
--- a/AMDiS/lib/mtl4/boost/numeric/itl/krylov/tfqmr.hpp
+++ b/AMDiS/lib/mtl4/boost/numeric/itl/krylov/tfqmr.hpp
@@ -29,7 +29,7 @@ namespace itl {
/// Transposed-free Quasi-minimal residual
template < typename Matrix, typename Vector,
typename LeftPreconditioner, typename RightPreconditioner, typename Iteration >
-int tfqmr(const Matrix &A, Vector &x, const Vector &b, const LeftPreconditioner &L,
+int tfqmr(const Matrix &A, Vector &x, const Vector &b, const LeftPreconditioner &L,
const RightPreconditioner &R, Iteration& iter)
{
mtl::vampir_trace<7009> tracer;
@@ -40,7 +40,7 @@ int tfqmr(const Matrix &A, Vector &x, const Vector &b, const LeftPreconditioner
const Scalar zero= math::zero(Scalar()), one= math::one(Scalar());
Scalar theta(zero), eta(zero), tau, rho, rhon, sigma, alpha, beta, c;
- Vector rt(b - A*Vector(solve(R, x))) /* shift x= R*x */, r(solve(L, rt)), u1(resource(x)), u2(resource(x)),
+ Vector rt(b - A*Vector(solve(R, x))) /* shift x= R*x */, r(solve(L, rt)), u1(resource(x)), u2(resource(x)),
y1(resource(x)), y2(resource(x)), w(resource(x)), d(resource(x), zero), v(resource(x));
if (iter.finished(rt))
@@ -94,7 +94,7 @@ int tfqmr(const Matrix &A, Vector &x, const Vector &b, const LeftPreconditioner
}
/// Solver class for Transposed-free quasi-minimal residual method; right preconditioner ignored (prints warning if not identity)
-template < typename LinearOperator, typename Preconditioner= pc::identity,
+template < typename LinearOperator, typename Preconditioner= pc::identity,
typename RightPreconditioner= pc::identity >
class tfqmr_solver
{
@@ -106,7 +106,7 @@ class tfqmr_solver
tfqmr_solver(const LinearOperator& A, const Preconditioner& L) : A(A), L(L), R(A) {}
/// Construct solver from a linear operator and left preconditioner
- tfqmr_solver(const LinearOperator& A, const Preconditioner& L, const RightPreconditioner& R)
+ tfqmr_solver(const LinearOperator& A, const Preconditioner& L, const RightPreconditioner& R)
: A(A), L(L), R(R) {}
/// Solve linear system approximately as specified by \p iter
@@ -123,7 +123,7 @@ class tfqmr_solver
itl::basic_iteration iter(x, 1, 0, 0);
return solve(b, x, iter);
}
-
+
private:
const LinearOperator& A;
Preconditioner L;
diff --git a/AMDiS/lib/mtl4/boost/numeric/itl/minimization/quasi_newton.hpp b/AMDiS/lib/mtl4/boost/numeric/itl/minimization/quasi_newton.hpp
index 2136952be262c5f759f42ae149c939687b7de40b..2a92b3635596f986ebafad35f0a865bab8f65c32 100644
--- a/AMDiS/lib/mtl4/boost/numeric/itl/minimization/quasi_newton.hpp
+++ b/AMDiS/lib/mtl4/boost/numeric/itl/minimization/quasi_newton.hpp
@@ -1,13 +1,13 @@
// Software License for MTL
-//
-// Copyright (c) 2007 The Trustees of Indiana University.
+//
+// Copyright (c) 2007 The Trustees of Indiana University.
// 2008 Dresden University of Technology and the Trustees of Indiana University.
-// 2010 SimuNova UG (haftungsbeschränkt), www.simunova.com.
+// 2010 SimuNova UG (haftungsbeschränkt), www.simunova.com.
// All rights reserved.
// Authors: Peter Gottschling and Andrew Lumsdaine
-//
+//
// This file is part of the Matrix Template Library
-//
+//
// See also license.mtl.txt in the distribution.
#ifndef ITL_QUASI_NEWTON_INCLUDE
@@ -25,30 +25,30 @@
namespace itl {
/// Quasi-Newton method
-template
-Vector quasi_newton(Vector& x, F f, Grad grad_f, Step step, Update update, Iter& iter)
-{
+Vector quasi_newton(Vector& x, F f, Grad grad_f, Step step, Update update, Iter& iter)
+{
typedef typename mtl::Collection::value_type value_type;
Vector d, y, x_k, s;
Matrix H(size(x), size(x));
-
+
H= 1;
for (; !iter.finished(two_norm(grad_f(x))); ++iter) {
- d= H * -grad_f(x); // std::cout << "d is " << d << '\n';
+ d= H * -grad_f(x); // std::cout << "d is " << d << '\n';
value_type alpha= step(x, d, f, grad_f); assert(alpha == alpha);
x_k= x + alpha * d; // std::cout << "x_k is " << x_k << '\n';
s= alpha * d; // std::cout << "alpha is " << alpha << '\n';
y= grad_f(x_k) - grad_f(x);
- update(H, y, s);
- x= x_k;
+ update(H, y, s);
+ x= x_k;
}
return x;
}
/// Quasi-Newton method
template
-Vector inline quasi_newton(Vector& x, F f, Grad grad_f, Step step, Update update, Iter& iter)
+Vector inline quasi_newton(Vector& x, F f, Grad grad_f, Step step, Update update, Iter& iter)
{
typedef typename mtl::traits::gradient::type hessian_type;
// typedef typename mtl::Collection::value_type value_type;
diff --git a/AMDiS/lib/mtl4/boost/numeric/itl/pc/binary_heap.hpp b/AMDiS/lib/mtl4/boost/numeric/itl/pc/binary_heap.hpp
index 399ae33d39bf2305395cd1fa3ce46c464f2d44e2..4fb6e8d7cb6bc237ea55f3e88c378b5697c4aa59 100644
--- a/AMDiS/lib/mtl4/boost/numeric/itl/pc/binary_heap.hpp
+++ b/AMDiS/lib/mtl4/boost/numeric/itl/pc/binary_heap.hpp
@@ -1,13 +1,13 @@
// Software License for MTL
-//
+//
// Copyright (c) 2007 The Trustees of Indiana University.
// 2008 Dresden University of Technology and the Trustees of Indiana University.
// 2010 SimuNova UG (haftungsbeschränkt), www.simunova.com.
// All rights reserved.
// Authors: Peter Gottschling and Andrew Lumsdaine
-//
+//
// This file is part of the Matrix Template Library
-//
+//
// See also license.mtl.txt in the distribution.
//
// Algorithm inspired by Nick Vannieuwenhoven, rewritten by Cornelius Steinhardt
diff --git a/AMDiS/lib/mtl4/boost/numeric/itl/pc/comparators.hpp b/AMDiS/lib/mtl4/boost/numeric/itl/pc/comparators.hpp
index 5d660c2b1585fe08342ac44a35e8fa51c6be212a..03380067571746405b9c2276277e812a2d675e0d 100644
--- a/AMDiS/lib/mtl4/boost/numeric/itl/pc/comparators.hpp
+++ b/AMDiS/lib/mtl4/boost/numeric/itl/pc/comparators.hpp
@@ -1,13 +1,13 @@
// Software License for MTL
-//
+//
// Copyright (c) 2007 The Trustees of Indiana University.
// 2008 Dresden University of Technology and the Trustees of Indiana University.
// 2010 SimuNova UG (haftungsbeschränkt), www.simunova.com.
// All rights reserved.
// Authors: Peter Gottschling and Andrew Lumsdaine
-//
+//
// This file is part of the Matrix Template Library
-//
+//
// See also license.mtl.txt in the distribution.
//
// Algorithm inspired by Nick Vannieuwenhoven, written by Cornelius Steinhardt
diff --git a/AMDiS/lib/mtl4/boost/numeric/itl/pc/concat.hpp b/AMDiS/lib/mtl4/boost/numeric/itl/pc/concat.hpp
index 6fd880b4d073b701e1c02222d24f3f03568f9665..8a079970d773de0dc98e75ff5c0882bb7508ed9d 100644
--- a/AMDiS/lib/mtl4/boost/numeric/itl/pc/concat.hpp
+++ b/AMDiS/lib/mtl4/boost/numeric/itl/pc/concat.hpp
@@ -1,13 +1,13 @@
// Software License for MTL
-//
-// Copyright (c) 2007 The Trustees of Indiana University.
+//
+// Copyright (c) 2007 The Trustees of Indiana University.
// 2008 Dresden University of Technology and the Trustees of Indiana University.
-// 2010 SimuNova UG, www.simunova.com.
+// 2010 SimuNova UG, www.simunova.com.
// All rights reserved.
// Authors: Peter Gottschling and Andrew Lumsdaine
-//
+//
// This file is part of the Matrix Template Library
-//
+//
// See also tools/license/license.mtl.txt in the distribution.
#ifndef ITL_PC_CONCAT_INCLUDE
diff --git a/AMDiS/lib/mtl4/boost/numeric/itl/pc/diagonal.hpp b/AMDiS/lib/mtl4/boost/numeric/itl/pc/diagonal.hpp
index 12c02e048d57d71e5900e91dcf0af7c934bbb89d..1694adb0674b6b19b2adcd4c52f15c54c10bd98a 100644
--- a/AMDiS/lib/mtl4/boost/numeric/itl/pc/diagonal.hpp
+++ b/AMDiS/lib/mtl4/boost/numeric/itl/pc/diagonal.hpp
@@ -1,13 +1,13 @@
-// Software License for MTL
-//
+// Software License for MTL
+//
// Copyright (c) 2007 The Trustees of Indiana University.
// 2008 Dresden University of Technology and the Trustees of Indiana University.
// 2010 SimuNova UG (haftungsbeschränkt), www.simunova.com.
// All rights reserved.
// Authors: Peter Gottschling and Andrew Lumsdaine
-//
+//
// This file is part of the Matrix Template Library
-//
+//
// See also license.mtl.txt in the distribution.
#ifndef ITL_PC_DIAGONAL_INCLUDE
@@ -84,7 +84,7 @@ class diagonal
protected:
mtl::vector::dense_vector inv_diag;
-};
+};
/// Solve approximately a sparse system in terms of inverse diagonal
template
diff --git a/AMDiS/lib/mtl4/boost/numeric/itl/pc/ic_0.hpp b/AMDiS/lib/mtl4/boost/numeric/itl/pc/ic_0.hpp
index d38b8b4a5ac0c2564cbeaa64ef6a7726090ca464..bfea47a37f8aae6e6d8227fd766c25fedba217e0 100644
--- a/AMDiS/lib/mtl4/boost/numeric/itl/pc/ic_0.hpp
+++ b/AMDiS/lib/mtl4/boost/numeric/itl/pc/ic_0.hpp
@@ -1,13 +1,13 @@
// Software License for MTL
-//
+//
// Copyright (c) 2007 The Trustees of Indiana University.
// 2008 Dresden University of Technology and the Trustees of Indiana University.
// 2010 SimuNova UG (haftungsbeschränkt), www.simunova.com.
// All rights reserved.
// Authors: Peter Gottschling and Andrew Lumsdaine
-//
+//
// This file is part of the Matrix Template Library
-//
+//
// See also license.mtl.txt in the distribution.
#ifndef ITL_PC_IC_0_INCLUDE
@@ -99,7 +99,7 @@ class ic_0
void adjoint_solve(const VectorIn& x, VectorOut& y) const
{
mtl::vampir_trace<5044> tracer;
- solve(x, y);
+ solve(x, y);
}
@@ -109,7 +109,7 @@ class ic_0
protected:
template friend struct ic_0_evaluator;
- // Dummy type to perform factorization in initializer list not in
+ // Dummy type to perform factorization in initializer list not in
struct factorizer
{
factorizer(const Matrix &A, U_type& U)
@@ -130,25 +130,25 @@ class ic_0
}
// Factorization adapted from Saad
- // Undefined (runtime) behavior if matrix is not symmetric
+ // Undefined (runtime) behavior if matrix is not symmetric
// UF is type for the factorization
- template
+ template
void factorize(const Matrix& A, UF& U, boost::mpl::true_, boost::mpl::true_)
{
- using namespace mtl; using namespace mtl::tag; using mtl::traits::range_generator;
+ using namespace mtl; using namespace mtl::tag; using mtl::traits::range_generator;
using math::reciprocal; using mtl::matrix::upper;
mtl::vampir_trace<5035> tracer;
// For the factorization we take still the value_type of A and later we copy it maybe to another value_type
typedef typename mtl::Collection::value_type value_type;
- typedef typename range_generator::type cur_type;
- typedef typename range_generator::type icur_type;
+ typedef typename range_generator::type cur_type;
+ typedef typename range_generator::type icur_type;
MTL_THROW_IF(num_rows(A) != num_cols(A), mtl::matrix_not_square());
U= upper(A);
typename mtl::traits::col::type col(U);
- typename mtl::traits::value::type value(U);
+ typename mtl::traits::value::type value(U);
cur_type kc= begin(U), kend= end(U);
for (size_type k= 0; kc != kend; ++kc, ++k) {
@@ -159,7 +159,7 @@ class ic_0
// U[k][k]= 1.0 / sqrt(U[k][k]);
value_type inv_dia= reciprocal(sqrt(value(*ic)));
value(*ic, inv_dia);
- // icur_type jbegin=
+ // icur_type jbegin=
++ic;
for (; ic != iend; ++ic) {
// U[k][i] *= U[k][k]
@@ -174,8 +174,8 @@ class ic_0
icur_type jc= begin(irow), jend= end(irow);
while (col(*jc) <= k) ++jc;
while (col(*--jend) > i) ;
- ++jend;
-
+ ++jend;
+
for (; jc != jend; ++jc) {
size_type j= col(*jc);
U.lvalue(j, i)-= d * U[k][j];
@@ -191,7 +191,7 @@ class ic_0
L_type L;
lower_solver_t lower_solver;
upper_solver_t upper_solver;
-};
+};
#if 0
template
@@ -204,9 +204,9 @@ struct ic_0_solver
template
void assign_to(VectorOut& y) const
- { P.solve(x, y); }
+ { P.solve(x, y); }
- const ic_0& P;
+ const ic_0& P;
const Vector& x;
};
#endif
@@ -219,7 +219,7 @@ struct ic_0_evaluator
typedef typename mtl::Collection::value_type out_value_type;
- ic_0_evaluator(VectorOut& y, const Solver& s)
+ ic_0_evaluator(VectorOut& y, const Solver& s)
: y(y), s(s), U(s.P.U), y0(s.P.solve_lower(s.x, y)) { MTL_DEBUG_ARG(lr= 99999999); }
diff --git a/AMDiS/lib/mtl4/boost/numeric/itl/pc/identity.hpp b/AMDiS/lib/mtl4/boost/numeric/itl/pc/identity.hpp
index 22d46f02e4808a62e776d223962301ff3cbd453a..16b691dc986ed8bf8aac8f0da93395e604d5e280 100644
--- a/AMDiS/lib/mtl4/boost/numeric/itl/pc/identity.hpp
+++ b/AMDiS/lib/mtl4/boost/numeric/itl/pc/identity.hpp
@@ -1,13 +1,13 @@
// Software License for MTL
-//
+//
// Copyright (c) 2007 The Trustees of Indiana University.
// 2008 Dresden University of Technology and the Trustees of Indiana University.
// 2010 SimuNova UG (haftungsbeschränkt), www.simunova.com.
// All rights reserved.
// Authors: Peter Gottschling and Andrew Lumsdaine
-//
+//
// This file is part of the Matrix Template Library
-//
+//
// See also license.mtl.txt in the distribution.
#ifndef ITL_PC_IDENTITY_INCLUDE
@@ -58,7 +58,7 @@ class identity
mtl::vampir_trace<5034> tracer;
x= b;
}
-};
+};
template
solver, Vector, false>
diff --git a/AMDiS/lib/mtl4/boost/numeric/itl/pc/ilu.hpp b/AMDiS/lib/mtl4/boost/numeric/itl/pc/ilu.hpp
index 1be76edc3130be98d27ef4c7ce574fdc789404c5..173ad4215bf0a83d6cb4088af0f4e6892c78a133 100644
--- a/AMDiS/lib/mtl4/boost/numeric/itl/pc/ilu.hpp
+++ b/AMDiS/lib/mtl4/boost/numeric/itl/pc/ilu.hpp
@@ -1,13 +1,13 @@
// Software License for MTL
-//
+//
// Copyright (c) 2007 The Trustees of Indiana University.
// 2008 Dresden University of Technology and the Trustees of Indiana University.
// 2010 SimuNova UG (haftungsbeschränkt), www.simunova.com.
// All rights reserved.
// Authors: Peter Gottschling and Andrew Lumsdaine
-//
+//
// This file is part of the Matrix Template Library
-//
+//
// See also license.mtl.txt in the distribution.
#ifndef ITL_PC_ILU_INCLUDE
@@ -51,13 +51,13 @@ class ilu
typedef mtl::matrix::detail::upper_trisolve_t adjoint_upper_solver_t;
/// Factorization adapted from Saad
- explicit ilu(const Matrix& A)
- : f(A, L, U), lower_solver(L), upper_solver(U), adjoint_L(adjoint(L)), adjoint_U(adjoint(U)),
+ explicit ilu(const Matrix& A)
+ : f(A, L, U), lower_solver(L), upper_solver(U), adjoint_L(adjoint(L)), adjoint_U(adjoint(U)),
adjoint_lower_solver(adjoint_U), adjoint_upper_solver(adjoint_L) {}
template
- ilu(const Matrix& A, const FactPara& p)
- : f(A, p, L, U), lower_solver(L), upper_solver(U), adjoint_L(adjoint(L)), adjoint_U(adjoint(U)),
+ ilu(const Matrix& A, const FactPara& p)
+ : f(A, p, L, U), lower_solver(L), upper_solver(U), adjoint_L(adjoint(L)), adjoint_U(adjoint(U)),
adjoint_lower_solver(adjoint_U), adjoint_upper_solver(adjoint_L) {}
/// Solve LU y = x --> y= U^{-1} L^{-1} x
@@ -130,7 +130,7 @@ class ilu
adjoint_lower_solver_t adjoint_lower_solver;
adjoint_upper_solver_t adjoint_upper_solver;
-};
+};
template
class ilu >, Factorizer, V2> // last 2 arguments are dummies
@@ -176,9 +176,9 @@ struct ilu_solver
template
void assign_to(VectorOut& y) const
- { P.solve(x, y); }
+ { P.solve(x, y); }
- const pc_type& P;
+ const pc_type& P;
const Vector& x;
};
#endif
@@ -187,7 +187,7 @@ struct ilu_solver
/// Solve LU x = b --> x= U^{-1} L^{-1} b
template
-// ilu_solver
+// ilu_solver
solver, Vector, false>
inline solve(const ilu& P, const Vector& x)
{
@@ -197,7 +197,7 @@ inline solve(const ilu& P, const Vector& x)
/// Solve (LU)^H x = b --> x= L^{-H} U^{-H} b
template
-// Vector
+// Vector
solver, Vector, true>
inline adjoint_solve(const ilu& P, const Vector& b)
{
diff --git a/AMDiS/lib/mtl4/boost/numeric/itl/pc/ilu_0.hpp b/AMDiS/lib/mtl4/boost/numeric/itl/pc/ilu_0.hpp
index 3e2109e8d413f6c98cf41245bdc0f02e42602c2f..7cc04d3ebdb7aa351470c202a864a530e6b0fd5f 100644
--- a/AMDiS/lib/mtl4/boost/numeric/itl/pc/ilu_0.hpp
+++ b/AMDiS/lib/mtl4/boost/numeric/itl/pc/ilu_0.hpp
@@ -1,13 +1,13 @@
// Software License for MTL
-//
+//
// Copyright (c) 2007 The Trustees of Indiana University.
// 2008 Dresden University of Technology and the Trustees of Indiana University.
// 2010 SimuNova UG (haftungsbeschränkt), www.simunova.com.
// All rights reserved.
// Authors: Peter Gottschling and Andrew Lumsdaine
-//
+//
// This file is part of the Matrix Template Library
-//
+//
// See also license.mtl.txt in the distribution.
#ifndef ITL_PC_ILU_0_INCLUDE
@@ -30,7 +30,7 @@
namespace itl { namespace pc {
-// Dummy type to perform factorization in initializer list not in
+// Dummy type to perform factorization in initializer list not in
struct ilu_0_factorizer
{
template
@@ -44,8 +44,8 @@ struct ilu_0_factorizer
template
void factorize(const Matrix& A, L_type& L, U_type& U, boost::mpl::true_)
{
- using namespace mtl; using namespace mtl::tag; using mtl::traits::range_generator;
- using math::reciprocal;
+ using namespace mtl; using namespace mtl::tag; using mtl::traits::range_generator;
+ using math::reciprocal;
MTL_THROW_IF(num_rows(A) != num_cols(A), mtl::matrix_not_square());
mtl::vampir_trace<5038> tracer;
@@ -55,10 +55,10 @@ struct ilu_0_factorizer
typedef mtl::matrix::compressed2D LU_type;
LU_type LU(A);
- typedef typename range_generator::type cur_type;
- typedef typename range_generator::type icur_type;
+ typedef typename range_generator::type cur_type;
+ typedef typename range_generator::type icur_type;
typename mtl::traits::col::type col(LU);
- typename mtl::traits::value::type value(LU);
+ typename mtl::traits::value::type value(LU);
mtl::vector::dense_vector > inv_dia(num_rows(A));
cur_type ic= begin(LU), iend= end(LU);
for (size_type i= 0; ic != iend; ++ic, ++i) {
@@ -72,14 +72,14 @@ struct ilu_0_factorizer
for (icur_type jc= kc + 1; jc != kend; ++jc)
value(*jc, value(*jc) - aik * LU[k][col(*jc)]);
- // std::cout << "LU after eliminating A[" << i << "][" << k << "] =\n" << LU;
+ // std::cout << "LU after eliminating A[" << i << "][" << k << "] =\n" << LU;
}
inv_dia[i]= reciprocal(LU[i][i]);
}
- invert_diagonal(LU);
+ invert_diagonal(LU);
L= strict_lower(LU);
U= upper(LU);
- }
+ }
};
template ::value_type>
diff --git a/AMDiS/lib/mtl4/boost/numeric/itl/pc/ilut.hpp b/AMDiS/lib/mtl4/boost/numeric/itl/pc/ilut.hpp
index 707d2f7bf7579661612d03f2ba964e7662ab21ff..5752c066fdd382f9a45ab484455e63a75b5c4bf3 100644
--- a/AMDiS/lib/mtl4/boost/numeric/itl/pc/ilut.hpp
+++ b/AMDiS/lib/mtl4/boost/numeric/itl/pc/ilut.hpp
@@ -1,13 +1,13 @@
// Software License for MTL
-//
-// Copyright (c) 2007 The Trustees of Indiana University.
+//
+// Copyright (c) 2007 The Trustees of Indiana University.
// 2008 Dresden University of Technology and the Trustees of Indiana University.
-// 2010 SimuNova UG (haftungsbeschränkt), www.simunova.com.
+// 2010 SimuNova UG (haftungsbeschränkt), www.simunova.com.
// All rights reserved.
// Authors: Peter Gottschling and Andrew Lumsdaine
-//
+//
// This file is part of the Matrix Template Library
-//
+//
// See also license.mtl.txt in the distribution.
#ifndef ITL_PC_ILUT_INCLUDE
@@ -48,7 +48,7 @@ struct ilut_factorizer
template
void factorize(const Matrix& A, const Para& p, L_type& L, U_type& U, boost::mpl::true_)
- {
+ {
mtl::vampir_trace<5049> tracer;
using std::abs; using mtl::traits::range_generator; using mtl::begin; using mtl::end;
using namespace mtl::tag;
@@ -56,22 +56,22 @@ struct ilut_factorizer
typedef typename mtl::Collection::value_type value_type;
typedef typename mtl::Collection::size_type size_type;
- typedef typename range_generator::type cur_type;
- typedef typename range_generator::type icur_type;
+ typedef typename range_generator::type cur_type;
+ typedef typename range_generator::type icur_type;
typename mtl::traits::col::type col(A);
- typename mtl::traits::const_value::type value(A);
+ typename mtl::traits::const_value::type value(A);
size_type n= num_rows(A);
- L.change_dim(n, n);
+ L.change_dim(n, n);
U.change_dim(n, n);
{
mtl::matrix::inserter L_ins(L, p.first);
mtl::matrix::inserter U_ins(U, p.first + 1); // plus one for diagonal
-
+
mtl::vector::sparse_vector vec(n); // corr. row in paper
cur_type ic= begin(A); // , iend= end(A);
for (size_type i= 0; i < n; ++i, ++ic) {
-
+
for (icur_type kc= begin(ic), kend= end(ic); kc != kend; ++kc) // row= A[i][*]
vec.insert(col(*kc), value(*kc));
// std::cerr << "vec_" << i << " = " << vec << std::endl;
@@ -96,7 +96,7 @@ struct ilut_factorizer
// std::cerr << "vec_" << i << " = " << vec << std::endl;
vec.sort_on_data();
// std::cerr << "vec_" << i << " sorted on data = " << vec << std::endl;
-
+
// std::cout << "vec at " << i << " is " << vec << '\n';
// mtl::vampir_trace<9904> tracer2;
bool diag_found= false;
@@ -111,7 +111,7 @@ struct ilut_factorizer
U_ins[i][k] << v;
} else // i > k
if (cntl++ < p.first)
- L_ins[i][k] << v;
+ L_ins[i][k] << v;
}
if (!diag_found) std::cerr << "Deleted diagonal!!!!\n";
vec.make_empty();
@@ -128,7 +128,7 @@ class ilut
{
typedef ilu base;
public:
- ilut(const Matrix& A, std::size_t p, typename mtl::Collection::value_type tau)
+ ilut(const Matrix& A, std::size_t p, typename mtl::Collection::value_type tau)
: base(A, std::make_pair(p, tau)) {}
};
diff --git a/AMDiS/lib/mtl4/boost/numeric/itl/pc/imf_algorithms.hpp b/AMDiS/lib/mtl4/boost/numeric/itl/pc/imf_algorithms.hpp
index 8bf58cc337780aeb1f49867b1ca6d4210c28550b..7905a2b3e2b9313dd1f290694b30cd5e60055c35 100644
--- a/AMDiS/lib/mtl4/boost/numeric/itl/pc/imf_algorithms.hpp
+++ b/AMDiS/lib/mtl4/boost/numeric/itl/pc/imf_algorithms.hpp
@@ -1,13 +1,13 @@
// Software License for MTL
-//
+//
// Copyright (c) 2007 The Trustees of Indiana University.
// 2008 Dresden University of Technology and the Trustees of Indiana University.
// 2010 SimuNova UG (haftungsbeschränkt), www.simunova.com.
// All rights reserved.
// Authors: Peter Gottschling and Andrew Lumsdaine
-//
+//
// This file is part of the Matrix Template Library
-//
+//
// See also license.mtl.txt in the distribution.
//
// Algorithm inspired by Nick Vannieuwenhoven, written by Cornelius Steinhardt
@@ -15,7 +15,7 @@
/*
* Implementation of the IMF factorization and application routines.
*/
-
+
#ifndef MTL_IMF_ALGORITHMS_INCLUDE
#define MTL_IMF_ALGORITHMS_INCLUDE
@@ -41,7 +41,7 @@
#include "boost/unordered_set.hpp"
-namespace itl { namespace pc {
+namespace itl { namespace pc {
////////////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////////
//
@@ -183,7 +183,7 @@ struct MinConnectedNodesEstimation {
std::sort( nodes.begin(), nodes.end() );
int degree = -el.nb_vars()+1;
- for(unsigned int i = 1; i < nodes.size(); ++i)
+ for(unsigned int i = 1; i < nodes.size(); ++i)
if( nodes[i-1] != nodes[i] )
if (!UseStatus || status[nodes[i]] == UNMARKED)
++degree;
@@ -225,7 +225,7 @@ struct IsRemoved {
*/
template< typename ValType >
template< class Mesh >
-void itl::pc::imf_preconditioner::factor(const Mesh& mesh , const int maxlofi
+void itl::pc::imf_preconditioner::factor(const Mesh& mesh , const int maxlofi
) {
mtl::vampir_trace<5052> tracer;
typedef typename Mesh::element_type element_type;
@@ -238,10 +238,10 @@ void itl::pc::imf_preconditioner::factor(const Mesh& mesh , const int m
// typedef typename neigh_coll_type::const_iterator const_neigh_iterator;
typedef typename element_type::index_type index_type;
typedef typename element_type::matrix_type matrix_type;
-
+
typedef typename mtl::matrix::coordinate2D coo_sparse_type_upper;
typedef typename mtl::matrix::coordinate2D coo_sparse_type_lower;
-
+
typedef std::map cmap;
// typedef typename cmap::iterator cmap_iterator;
@@ -274,7 +274,7 @@ void itl::pc::imf_preconditioner::factor(const Mesh& mesh , const int m
elements.push_back( *&it );
++it;
}
-
+
// Data structures for the preconditioner.
std::vector block_diagonal;
@@ -344,7 +344,7 @@ void itl::pc::imf_preconditioner::factor(const Mesh& mesh , const int m
**************************************************************************/
// Make sure the set of unmarked elements is empty again.
- assert( unmarked_elements.empty() );
+ assert( unmarked_elements.empty() );
unmarked_elements_degr.clear();
unmarked_elements_srtd.clear();
// Construct the set of available diagonal elements along with their
@@ -425,16 +425,16 @@ void itl::pc::imf_preconditioner::factor(const Mesh& mesh , const int m
for(unsigned int a= 0; a < size(involve_node); a++){
for(unsigned int b= 0; b < size(involve_neigh); b++){
if(involve_node[a] == involve_neigh[b])
- c++;
+ c++;
}
}
upperbound+= c*(size(involve_neigh)-c);
}
}
-
+
// Update permutation offsets.
perm_high = perm_off;
-
+
/***************************************************************************
* Phase 2: Compute the update matrices
**************************************************************************/
@@ -476,7 +476,7 @@ void itl::pc::imf_preconditioner::factor(const Mesh& mesh , const int m
for(int i = 0; i < n1; ++i) {
to_local[p(i)] = i;
}
-
+
for(int i = 0; i < n2; ++i) {
to_local[q(i)] = mtl::size(p) + i;
}
@@ -493,7 +493,7 @@ void itl::pc::imf_preconditioner::factor(const Mesh& mesh , const int m
// Remap indices.
index_type local_idx( neigh.get_indices() );
-
+
for(int i = 0; i < neigh.nb_vars(); ++i) {
local_idx(i) = to_local[ local_idx(i) ];
}
@@ -512,7 +512,7 @@ void itl::pc::imf_preconditioner::factor(const Mesh& mesh , const int m
local_idx(i) = to_local[ local_idx(i) ];
}
//insert the diagonal element
- {
+ {
mtl::matrix::inserter > ins(frontal);
ins << element_matrix(
diag_el.get_values(), local_idx, local_idx);
@@ -539,15 +539,15 @@ void itl::pc::imf_preconditioner::factor(const Mesh& mesh , const int m
mtl::irange n0(0,n1);
diag_el.get_values() = inv(mtl::clone(frontal[n0][n0]));
frontal[n0][n0] = diag_el.get_values();
-
- if( (level <= maxlofi) && (n2 > 0) ) {
+
+ if( (level <= maxlofi) && (n2 > 0) ) {
//------------------------------------------------------------------------------
// ELEMENT COALESCING APPROACH
//------------------------------------------------------------------------------
// The lofi is below the user-requested level. Use Algorithm 2
// in [1].
// Compute the Schur complement.
- mtl::irange n1r(0,n1), n2r(n1, mtl::imax);
+ mtl::irange n1r(0,n1), n2r(n1, mtl::imax);
frontal[n2r][n2r]-= frontal[n2r][n1r] * frontal[n1r][n1r] * frontal[n1r][n2r];
mtl::irange nz(n1,n1+n2);
matrix_type Z( mtl::clone(frontal[nz][nz]) );
@@ -557,7 +557,7 @@ void itl::pc::imf_preconditioner::factor(const Mesh& mesh , const int m
elements.push_back( fill );
el_status.push_back( UNMARKED );
-
+
// Determine the level-2 neighbors.
neigh_set_type lvl2_neighs = diag_el.get_level_neighbors( 2 );
// Remove the level-1 neighbors of the diagonal element.
@@ -587,7 +587,7 @@ void itl::pc::imf_preconditioner::factor(const Mesh& mesh , const int m
// versa.
neigh_neighs.push_back( fill );
fill->get_neighbors().push_back( &neigh );
-
+
}
// Update sequence number.
++max_sequence_number;
@@ -620,7 +620,7 @@ void itl::pc::imf_preconditioner::factor(const Mesh& mesh , const int m
}
// Compute the Schur complement.
- mtl::irange n1r(0,n1), n2r(n1, mtl::imax);
+ mtl::irange n1r(0,n1), n2r(n1, mtl::imax);
frontal[n2r][n2r]-= frontal[n2r][n1r] * frontal[n1r][n1r] * frontal[n1r][n2r];
// Distribute the values of the (modified) update matrix
// over the level-1 neighbors.
@@ -659,11 +659,11 @@ void itl::pc::imf_preconditioner::factor(const Mesh& mesh , const int m
std::cout << "level " << level << " complete: ";
std::cout << mesh.get_total_vars()-perm_high << " nodes remaining."<< "\n";
-
+
++level;
} while( (mesh.get_total_vars() - perm_high > 0) ); // There are still variables to cover.
-
-
+
+
diagonal_offsets.push_back( mesh.get_total_vars() );
assert( mesh.get_total_vars() - perm_high == 0 );
assert( lower_matrices.size()+2 == diagonal_offsets.size() );
@@ -671,18 +671,18 @@ void itl::pc::imf_preconditioner::factor(const Mesh& mesh , const int m
* Phase 3: Apply permutation vector to lower and upper matrices
**************************************************************************/
mtl::vampir_trace<9903> tb3;
-
+
mtl::matrix::traits::permutation<>::type P(permutation(m_ordering));
typedef typename coo_sparse_type_lower::size_type size_type;
-
+
for( std::size_t k = 0; k < lower_matrices.size(); ++k ) {
coo_sparse_type_lower& L = *(lower_matrices[k]);
coo_sparse_type_upper& U = *(upper_matrices[k]);
if (nnz(L)> 0) {
- std::vector &L_row(L.row_index_array()),
- &L_col(L.column_index_array()),
- &U_row(U.row_index_array()),
+ std::vector &L_row(L.row_index_array()),
+ &L_col(L.column_index_array()),
+ &U_row(U.row_index_array()),
&U_col(U.column_index_array());
const int off_low = diagonal_offsets[k];
for(unsigned int i = 0; i < nnz(L); ++i) {
@@ -694,7 +694,7 @@ void itl::pc::imf_preconditioner::factor(const Mesh& mesh , const int m
U_col[i] = m_ordering( U_col[i] );
}
}
-
+
m_lower.push_back(mtl::matrix::compressed2D(L));
m_upper.push_back(mtl::matrix::compressed2D(U));
}
@@ -771,7 +771,7 @@ Vector imf_preconditioner::imf_apply(const Vector& rhs) const
assert(off_low <= off_high);
// Compute dy = inv(D)*y
vector_type dy(n1);
- dy = zero;
+ dy = zero;
for(int off = off_low; off < off_high; ++b_off ) { //parallel
const int block_size = num_rows( m_diagonal[b_off] );
dy[mtl::irange(off-off_low, off-off_low+block_size)] = m_diagonal[b_off] * res[mtl::irange(off, off + block_size)];
@@ -786,7 +786,7 @@ Vector imf_preconditioner::imf_apply(const Vector& rhs) const
// Backward elimination.
{
- mtl::vampir_trace<9902> tb2;
+ mtl::vampir_trace<9902> tb2;
int b_off = m_nb_blocks-1;
for(int level = m_levels-1; level >= 0; --level) {
@@ -794,7 +794,7 @@ Vector imf_preconditioner::imf_apply(const Vector& rhs) const
const int off_high = m_diagonal_index[level+1];
// y' = y - Fx
// assert( m_upper[level] );
-
+
vector_type yp(m_upper[level] * res);
res[mtl::irange(off_low, off_high) ] -= yp[mtl::irange(0, off_high-off_low) ];
// y = inv(D)*y'
diff --git a/AMDiS/lib/mtl4/boost/numeric/itl/pc/imf_preconditioner.hpp b/AMDiS/lib/mtl4/boost/numeric/itl/pc/imf_preconditioner.hpp
index 728a97d7176a9ddc5c9eb17da311d6c7e33a9f78..d76732f7e7620e431124d2c779c0c21d2dd37474 100644
--- a/AMDiS/lib/mtl4/boost/numeric/itl/pc/imf_preconditioner.hpp
+++ b/AMDiS/lib/mtl4/boost/numeric/itl/pc/imf_preconditioner.hpp
@@ -1,13 +1,13 @@
// Software License for MTL
-//
+//
// Copyright (c) 2007 The Trustees of Indiana University.
// 2008 Dresden University of Technology and the Trustees of Indiana University.
// 2010 SimuNova UG (haftungsbeschränkt), www.simunova.com.
// All rights reserved.
// Authors: Peter Gottschling and Andrew Lumsdaine
-//
+//
// This file is part of the Matrix Template Library
-//
+//
// See also license.mtl.txt in the distribution.
//
// Algorithm inspired by Nick Vannieuwenhoven, written by Cornelius Steinhardt
@@ -88,7 +88,7 @@ public:
}
/// Destructor
- ~imf_preconditioner()
+ ~imf_preconditioner()
{
delete[] m_diagonal_index;
delete[] m_diagonal;
@@ -102,7 +102,7 @@ private:
/// Constructs the IMF preconditioner.Forward declaration
template< class ElementStructure >
- void factor(const ElementStructure&, const int);
+ void factor(const ElementStructure&, const int);
public:
@@ -115,13 +115,13 @@ public:
/// Applies the preconditioner to the given matrix.
template
- void solve(const VectorIn& b, VectorOut& x) const
+ void solve(const VectorIn& b, VectorOut& x) const
{
VectorIn m(trans(P)*b), m_tmp(imf_apply(m));
x= P * m_tmp;
- }
+ }
-private:
+private:
/// Applies the preconditioner prototype
template< class Vector >
Vector imf_apply(const Vector&) const;
@@ -140,7 +140,7 @@ private:
/// The number of levels (equals the number of entries in the diagonal index array minus one).
int m_levels;
-
+
/** The index array for the matrices on the block diagonal. The i^th entry
* indicates where the i^th level of block diagonal matrices starts in the
* right hand side vector. */
@@ -156,7 +156,7 @@ private:
upper_matrix_coll_type m_upper;
};
-/// Solve
+/// Solve
template
solver, Vector, false>
inline solve(const imf_preconditioner& P, const Vector& b)
diff --git a/AMDiS/lib/mtl4/boost/numeric/itl/pc/is_identity.hpp b/AMDiS/lib/mtl4/boost/numeric/itl/pc/is_identity.hpp
index 5a5ce5190e8464a87ae75a7467acfd5f69cf225a..6074646a1ee2ac0e4d67d20f95f4d35f4064755f 100644
--- a/AMDiS/lib/mtl4/boost/numeric/itl/pc/is_identity.hpp
+++ b/AMDiS/lib/mtl4/boost/numeric/itl/pc/is_identity.hpp
@@ -1,13 +1,13 @@
// Software License for MTL
-//
-// Copyright (c) 2007 The Trustees of Indiana University.
+//
+// Copyright (c) 2007 The Trustees of Indiana University.
// 2008 Dresden University of Technology and the Trustees of Indiana University.
-// 2010 SimuNova UG (haftungsbeschränkt), www.simunova.com.
+// 2010 SimuNova UG (haftungsbeschränkt), www.simunova.com.
// All rights reserved.
// Authors: Peter Gottschling and Andrew Lumsdaine
-//
+//
// This file is part of the Matrix Template Library
-//
+//
// See also license.mtl.txt in the distribution.
#ifndef ITL_PC_IS_IDENTITY_INCLUDE
@@ -19,7 +19,7 @@
namespace itl { namespace pc {
template
-bool is_identity(const PC&)
+bool is_identity(const PC&)
{ return false; }
template
diff --git a/AMDiS/lib/mtl4/boost/numeric/itl/pc/matrix_algorithms.hpp b/AMDiS/lib/mtl4/boost/numeric/itl/pc/matrix_algorithms.hpp
index b0f73b759a4162e6413a38b37fa9045632ba996b..6f815903a1c1fee8d5235032410af7761ebcc0c7 100644
--- a/AMDiS/lib/mtl4/boost/numeric/itl/pc/matrix_algorithms.hpp
+++ b/AMDiS/lib/mtl4/boost/numeric/itl/pc/matrix_algorithms.hpp
@@ -1,13 +1,13 @@
// Software License for MTL
-//
+//
// Copyright (c) 2007 The Trustees of Indiana University.
// 2008 Dresden University of Technology and the Trustees of Indiana University.
// 2010 SimuNova UG (haftungsbeschränkt), www.simunova.com.
// All rights reserved.
// Authors: Peter Gottschling and Andrew Lumsdaine
-//
+//
// This file is part of the Matrix Template Library
-//
+//
// See also license.mtl.txt in the distribution.
//
// Algorithm inspired by Nick Vannieuwenhoven, written by Cornelius Steinhardt
@@ -26,9 +26,9 @@
namespace mtl { namespace matrix {
-/// Construct the sparse data structure from an elementstructure
-template< typename ElementStructure, typename Matrix, typename Vector>
-void assemble_compressed(const ElementStructure& es, Matrix& A, Vector& order)
+/// Construct the sparse data structure from an elementstructure
+template< typename ElementStructure, typename Matrix, typename Vector>
+void assemble_compressed(const ElementStructure& es, Matrix& A, Vector& order)
{
typedef typename ElementStructure::element_type::value_type value_type;
@@ -40,7 +40,7 @@ void assemble_compressed(const ElementStructure& es, Matrix& A, Vector& order)
A.change_dim(es.get_total_vars(), es.get_total_vars());
set_to_zero(A);
value_type zero(0);
-
+
{//start inserterblock
mtl::matrix::inserter > ins(A);
for(iterator it = es.element_begin(); it != es.element_end(); ++it) {
@@ -59,9 +59,9 @@ void assemble_compressed(const ElementStructure& es, Matrix& A, Vector& order)
}
-/// Construct the sparse data structure from an elementstructure
-template< typename ElementStructure, typename Matrix>
-void assemble_compressed(const ElementStructure& es, Matrix& A)
+/// Construct the sparse data structure from an elementstructure
+template< typename ElementStructure, typename Matrix>
+void assemble_compressed(const ElementStructure& es, Matrix& A)
{
typedef typename ElementStructure::element_type::matrix_type::size_type size_type;
mtl::dense_vector ident(es.get_total_vars());
diff --git a/AMDiS/lib/mtl4/boost/numeric/itl/pc/solver.hpp b/AMDiS/lib/mtl4/boost/numeric/itl/pc/solver.hpp
index 2afcf730bdb8f0419f8a7490a56eca46ada20cda..7125e219647edf8ae591f14870f49f5348e33af1 100644
--- a/AMDiS/lib/mtl4/boost/numeric/itl/pc/solver.hpp
+++ b/AMDiS/lib/mtl4/boost/numeric/itl/pc/solver.hpp
@@ -1,13 +1,13 @@
// Software License for MTL
-//
-// Copyright (c) 2007 The Trustees of Indiana University.
+//
+// Copyright (c) 2007 The Trustees of Indiana University.
// 2008 Dresden University of Technology and the Trustees of Indiana University.
-// 2010 SimuNova UG (haftungsbeschränkt), www.simunova.com.
+// 2010 SimuNova UG (haftungsbeschränkt), www.simunova.com.
// All rights reserved.
// Authors: Peter Gottschling and Andrew Lumsdaine
-//
+//
// This file is part of the Matrix Template Library
-//
+//
// See also license.mtl.txt in the distribution.
#ifndef ITL_PC_SOLVER_INCLUDE
@@ -32,22 +32,22 @@ struct solver
/// Assign result to vector \p y, if possible without copying
template
void assign_to(VectorOut& y) const
- {
+ {
mtl::vampir_trace<5055> tracer;
- assign_to(y, boost::mpl::bool_());
- }
+ assign_to(y, boost::mpl::bool_());
+ }
protected:
template
void assign_to(VectorOut& y, boost::mpl::false_) const
- { P.solve(x, y); }
-
+ { P.solve(x, y); }
+
template
void assign_to(VectorOut& y, boost::mpl::true_) const
- { P.adjoint_solve(x, y); }
+ { P.adjoint_solve(x, y); }
- const pc_type& P;
+ const pc_type& P;
const Vector& x;
};
diff --git a/AMDiS/lib/mtl4/boost/numeric/itl/pc/sorting.hpp b/AMDiS/lib/mtl4/boost/numeric/itl/pc/sorting.hpp
index a118f3ecec53e94e8f1652923970a789aae705b8..aea9658b6ba8be69ed639550a5342f94cb3688e5 100644
--- a/AMDiS/lib/mtl4/boost/numeric/itl/pc/sorting.hpp
+++ b/AMDiS/lib/mtl4/boost/numeric/itl/pc/sorting.hpp
@@ -1,13 +1,13 @@
// Software License for MTL
-//
+//
// Copyright (c) 2007 The Trustees of Indiana University.
// 2008 Dresden University of Technology and the Trustees of Indiana University.
// 2010 SimuNova UG (haftungsbeschränkt), www.simunova.com.
// All rights reserved.
// Authors: Peter Gottschling and Andrew Lumsdaine
-//
+//
// This file is part of the Matrix Template Library
-//
+//
// See also license.mtl.txt in the distribution.
//
// Algorithm inspired by Nick Vannieuwenhoven, written by Cornelius Steinhardt
diff --git a/AMDiS/lib/mtl4/boost/numeric/itl/pc/sub_matrix_pc.hpp b/AMDiS/lib/mtl4/boost/numeric/itl/pc/sub_matrix_pc.hpp
index 20d48a9e67d9f4dd749a7eb85d452b192b8cc951..0f0b22bc963f0071130b691499c7b2f637ebfb5b 100644
--- a/AMDiS/lib/mtl4/boost/numeric/itl/pc/sub_matrix_pc.hpp
+++ b/AMDiS/lib/mtl4/boost/numeric/itl/pc/sub_matrix_pc.hpp
@@ -1,13 +1,13 @@
// Software License for MTL
-//
-// Copyright (c) 2007 The Trustees of Indiana University.
+//
+// Copyright (c) 2007 The Trustees of Indiana University.
// 2008 Dresden University of Technology and the Trustees of Indiana University.
-// 2010 SimuNova UG, www.simunova.com.
+// 2010 SimuNova UG, www.simunova.com.
// All rights reserved.
// Authors: Peter Gottschling and Andrew Lumsdaine
-//
+//
// This file is part of the Matrix Template Library
-//
+//
// See also tools/license/license.mtl.txt in the distribution.
#ifndef ITL_PC_SUB_MATRIX_PC_INCLUDE
@@ -25,9 +25,9 @@
namespace itl { namespace pc {
/// Class for applying \tparam Preconditioner only on a sub-matrix
-/** Other entries are just copied.
+/** Other entries are just copied.
Optionally preconditioner can be referred from outside instead of storing it by setting
- \tparam Store to true.
+ \tparam Store to true.
**/
template
class sub_matrix_pc
@@ -37,11 +37,11 @@ class sub_matrix_pc
struct matrix_container
{
- matrix_container() : Ap(0) {}
+ matrix_container() : Ap(0) {}
matrix_container(const tag_type& tags, const Matrix& src)
{
- using std::size_t;
+ using std::size_t;
using namespace mtl;
mtl::vector::dense_vector perm(size(tags));
@@ -54,22 +54,22 @@ class sub_matrix_pc
Ap= new Matrix(n, n);
- typename traits::row::type row(src);
- typename traits::col::type col(src);
- typename traits::const_value::type value(src);
+ typename traits::row::type row(src);
+ typename traits::col::type col(src);
+ typename traits::const_value::type value(src);
typedef typename traits::range_generator::type cursor_type;
matrix::inserter ins(*Ap, Ap->nnz() / Ap->dim1());
-
- for (cursor_type cursor = mtl::begin(src), cend = mtl::end(src);
+
+ for (cursor_type cursor = mtl::begin(src), cend = mtl::end(src);
cursor != cend; ++cursor) {
// std::cout << dest << '\n';
-
+
typedef typename traits::range_generator::type icursor_type;
- for (icursor_type icursor = mtl::begin