- Feb 06, 2015
-
-
Steffen Müthing authored
If an iterator facade (like entity iterators) wants to allow the embedded implementation to return either an (internally stored) reference or a temporary object and expose these two behaviors to enable performance optimizations, operator->() needs special handling: If the implementation returns a reference, operator->() in the facade can simply return the address of the referenced object, but if the returned object is a temporary, we need to capture and store it in a helper object to make sure it outlives the member access. This patch adds a little helper function that tansparently handles both cases.
-
Steffen Müthing authored
The ForLoop TMP used to put a number of restrictions on the arguments to apply(), mainly due to the limited capabilities of C++01 wrt. to argument forwarding. But now we have C++11, so we can throw away all that awkward code and replace it with a single forwarding function that supports arbitrary numbers of arbitrary combinations of lvalues and rvalues - all hail variadic templates and perfect forwarding!
-
- Jan 11, 2015
-
-
Christoph Grüninger authored
If LAPACK is not available, it return 77 indicating skipped test
-
Christoph Grüninger authored
Like we do for Autotools. This is only supported for CMake 3.0 or newer. Oder versions ignore the property and report the test as failed.
-
- Dec 29, 2014
-
-
Christoph Grüninger authored
-
- Dec 05, 2014
-
-
Dominic Kempf authored
This specialization was missing and made it impossible to parse bitsets. The implementation uses the specialization for bool. It was not possible to reuse the parseRange method, because a bitset doesnt have begin() and end().
-
- Dec 02, 2014
-
-
Carsten Gräser authored
While the following is legal c++11 array<T,n> foo = { t1, t2, ...} older compilers (namely gcc-4.4) issue a warning on missing braces.
-
Carsten Gräser authored
-
Christoph Grüninger authored
This reverts commit d26e5ed3. We have to wait until our minimal required compiler is GCC 4.7 or newer. Thanks to Carsten for the heads-up.
-
- Dec 01, 2014
-
-
Carsten Gräser authored
-
Carsten Gräser authored
-
- Nov 28, 2014
-
-
Christoph Grüninger authored
The signature changed in C++11 which we require now. To get more details see the mailinglost in October 2012.
-
Christoph Grüninger authored
It should be std::endl. Courtesy of GCC 5-svn, it refuses to compile these.
-
Christoph Grüninger authored
GCC warns about it.
-
Carsten Gräser authored
While gcc supports them (as extension) runtime sized arrays are not standard c++. They are not even contained in c++14 but postponed to a later TS.
-
- Nov 25, 2014
-
-
Christoph Grüninger authored
-
- Nov 21, 2014
-
-
Christoph Grüninger authored
-
- Nov 13, 2014
-
-
Jö Fahlke authored
Add "@relatesalso null_deleter", this includes the documentation for the function with null_deleter but also leaves a standalone version. Document what is so special about the shared_ptr the function returns. Mention the #include needed to get the function.
-
- Nov 08, 2014
-
-
Jö Fahlke authored
If it found an option, it now skips over the option's argument for further processing. Also, it throws an exception when the last command line argument is an option (that option cannot have an argument).
-
Jö Fahlke authored
-
Jö Fahlke authored
"C", no matter what locale is currently set.
-
Jö Fahlke authored
[parametertree][locale][fs1528] Check ParameterTree::get() with a locale using "," as the decimal seperator. ParameterTrees are usually read from configuration files. The format of the configuration file should not depend on the locale. For the commandline parser it would likewise be surprising if "progname -param 0.5" stopped working in a german locale. Not long ago these kinds of errors would not even generate a diagnosis due to FS#1527. However, the locale of the program is "C" by default, so probably not many poeple are actually affected by this problem. It can happen however that other libraries linked into the same program set the locale from the environment.
-
Jö Fahlke authored
"Makefile.in", "*.o", etc. need only be listed in the toplevel .gitignore, the rules are applied recursively. Test programs etc. should be listed as "/program" in their directory's .gitignore, so they are not accidentially ignored in a lower level directory.
-
Jö Fahlke authored
ParameterTree::get("key", def). These overloads were using atoi() resp. atof(), effectively ignoring junk at the end of values. This led to the situation where a floating point value "0.5" could be parsed as an int "0" without any diagnostic.
-
Jö Fahlke authored
-
Jö Fahlke authored
assert() works only in debug builds (without -DNDEBUG). Instead, implement our own check_assert().
-
- Nov 07, 2014
-
-
Oliver Sander authored
-
Oliver Sander authored
I took the formula from http://en.wikipedia.org/wiki/Eigenvalue_algorithm (retrieved lated August 2014). Wikipedia claims to have taken it from Smith, Oliver K. (April 1961), Eigenvalues of a symmetric 3 × 3 matrix, Communications of the ACM 4 (4): 168, doi:10.1145/355578.366316 I did not check stability of efficiency of this, but no problems related to either are mentioned in the literature. The main reason I need the closed-form expression is to be able to pipe it into an algorithmic differentiation system.
-
- Nov 06, 2014
-
-
Oliver Sander authored
Rip out the complete test for eigenValuesNonSym and replace it by the Rosser matrix test from fieldmatrixtest.cc The old test was complete nonsense: an implementation of some sort of strange undocumented shape function set that happened to need eigenvalues for something. Lots of undocumented code, and no checks at all whether the values obtained by eigenValuesNonSym actually make sense. Only, for the particular choice of parameters used, eigenValuesNonSym was never called. Yes, you read this correctly: these hundreds of lines of code didn't actually test anything. The new test is copied form fieldmatrixtest.cc and adapted for DynamicMatrix types. It computes eigenvalues of a given 8x8 matrix and compares with the known results. Unfortunately, the test matrix is only symmetric. Tests with more general matrices are left for another day.
-
Oliver Sander authored
Rather than assuming the caller has set it to the correct size already. Setting the size in the method eigenValuesNonSym itself makes code more robust. Plus, the time needed for that should be negligible compared to the actual eigenvalue computations.
-
- Oct 29, 2014
-
-
Oliver Sander authored
-
Oliver Sander authored
It is not actually needed, because the code also works in other cases. A comment next the assertion even explicitly stated that it is not needed!
-
Uli Sack authored
-
Uli Sack authored
-
- Oct 17, 2014
-
-
Oliver Sander authored
-
- Oct 14, 2014
-
-
Carsten Gräser authored
We decided to have all stl like stuff in Dune::Std:: and not in Std:: Besides our decision with the previous version tupleutility.hh did not compile if a header refering to Dune::Std:: was included.
-
Carsten Gräser authored
-
Carsten Gräser authored
This uses perfect forwarding (following Herb Sutter) and SFINAE (following Stephan T. Lavavej) to get a standard comforming implementation also for array.
-
- Oct 08, 2014
-
-
Dominic Kempf authored
-
Dominic Kempf authored
-