From 0ad5239581edd1b7c8134dce0b1534fd0b64bce2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?David=20Holzm=C3=BCller?= Date: Sun, 7 Apr 2019 22:35:01 +0200 Subject: [PATCH] adjusted readme file --- README.md | 45 ++++++--------------------------------------- 1 file changed, 6 insertions(+), 39 deletions(-) diff --git a/README.md b/README.md index 69b32cc..b6aa0f2 100644 --- a/README.md +++ b/README.md @@ -1,45 +1,12 @@ -The sfcpp library is published under an Apache 2.0 license. The sfc part of this library is described in my bachelor thesis (https://arxiv.org/abs/1710.06384). If you use the sfc part of this project for research purposes, please cite one of the following publications: -- David Holzmüller: Efficient Neighbor-Finding on Space-Filling Curves. Bachelor Thesis (2017). - -The sfcpp library can be compiled by executing the top-level Makefile (make debug / make release). This Makefile executes cmake on CMakeLists.txt to generate a Makefile in the build folder, which is then automatically executed using make to compile the library. -The modules img, sfc and the test code can be excluded from the build process. The test code requires all modules to be built and the img module requires the OpenCV libraries to be installed. The modules latex and sfc use the Color class of the img module. -The sfcpp library requires the libraries Eigen3 and boost. It has only been tested on an Ubuntu system but contains very little platform-dependent code and should be rather easy to port to other systems. - - -The sfcpp library contains the following modules: - -cpp - currently unimplemented, contains some class stubs for C++ code generation - -data - contains data structures - -files - contains miscellaneous functions for file handling - -geo - contains geometric functions: -- ConvexPolytope represents the face structure of a convex polytope -- QuickHullAlgorithm can compute such a polytope as the convex hull of a list of vertices -- coordinate system, point and vector classes for conversion between different coordinate systems and representation of 3D points and vectors - -img - contains OpenCV wrappers for image processing - -latex - contains classes for generation of LaTeX code and a submodule latex::tikz for generation of TikZ code - -math - contains mathematical functions and classes representing mathematical objects - -sfc - contains code for computations around space-filling curves: -- The KDCurveSpecification and CurveSpecification classes can be used to specify a curve -- The CurveInformation class computes informations about a CurveSpecification -- The CurveRenderer class can be used to generate TikZ graphics visualizing curves -- Several Algorithms classes provide optimized algorithms for different curves -- Some of the remaining classes are currently unimplemented because they were intended for code generation - -strings - contains string helper functions - -time - contains a Stopwatch class - -A separate folder called "test" contains code that is compiled for execution and linked against the library. Currently, it contains code for rendering and analyzing space-filling curves and making performance tests. The code there can also be used as an example of how to use the sfc module. +This is a header-only library providing a fast matrix-vector product and linear system solver for tensor product matrices with a downward-closed index set restriction. This can especially be applied to compute interpolation coefficients for a sparse grid basis or evaluate a sparse interpolant at sparse grid points. +The fast_sparse_interpolation library is published under an Apache 2.0 license. If you use this project for research purposes, please cite one of the following publications: +- David Holzmüller, Dirk Pflüger: Fast Sparse Grid Interpolation Coefficients Via LU Decomposition (2019). + +Example code for usage can be found in test/main.cpp. This file can be compiled by executing the top-level Makefile (make debug / make release). This Makefile executes cmake on CMakeLists.txt to generate a Makefile in the build folder, which is then automatically executed using make to compile the library. +Note for developers: To run the script ./prepend_header.sh, modify it to only prepend the header in files that do not contain one and run shopt -s globstar beforehand