#include <deal.II/lac/vector.h>
#include <deal.II/lac/block_vector.h>
+#include <boost/math/special_functions/round.hpp>
+
#include <iostream>
#include <iomanip>
&work[0], &lwork, &ipiv[0], &info);
AssertThrow (info==0, LAPACKSupport::ExcErrorCode("gesdd", info));
// Now resize work array and
- lwork = static_cast<int>(work[0] + .5);
+ lwork = boost::math::iround(work[0]);
work.resize(lwork);
// Do the actual SVD.
// for work, everything else would not be acceptable.
Assert (info == 0, ExcInternalError());
// Allocate working array according to suggestion.
- lwork = (int) (work[0]+.1);
+ lwork = boost::math::iround(work[0]);
// resize workspace array
work.resize((size_type ) lwork);
// for work, everything else would not be acceptable.
Assert (info == 0, ExcInternalError());
// Allocate working array according to suggestion.
- lwork = (int) (work[0]+.1);
+ lwork = boost::math::iround(work[0]);
work.resize(static_cast<size_type> (lwork));
// Finally compute the eigenvalues.
// for work, everything else would not be acceptable.
Assert (info == 0, ExcInternalError());
// Allocate working array according to suggestion.
- lwork = (int) (work[0]+.1);
+ lwork = boost::math::iround(work[0]);
// resize workspace arrays
work.resize(static_cast<size_type> (lwork));
// for work, everything else would not be acceptable.
Assert (info == 0, ExcInternalError());
// Allocate working array according to suggestion.
- lwork = (int) (work[0]+.1);
+ lwork = boost::math::iround(work[0]);
// resize workspace array
work.resize((size_type) lwork);