-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge pull request #5 from philippeganz/dev
Dev
- Loading branch information
Showing
35 changed files
with
4,133 additions
and
1,904 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -3,15 +3,15 @@ | |
/// \brief AstroQUT solver header | ||
/// \author Jairo Diaz <[email protected]> 2016-2017 | ||
/// \author Philippe Ganz <[email protected]> 2017 | ||
/// \version 0.2.0 | ||
/// \date 2017-12-28 | ||
/// \version 0.3.0 | ||
/// \date 2018-02-25 | ||
/// \copyright GPL-3.0 | ||
/// | ||
|
||
#ifndef ASTROQUT_WS_HPP | ||
#define ASTROQUT_WS_HPP | ||
|
||
#include "utils/matrix.hpp" | ||
#include "utils/linearop/matrix.hpp" | ||
|
||
|
||
namespace astroqut{ | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -2,14 +2,16 @@ | |
/// \file include/const.hpp | ||
/// \brief Constant values used throughout the whole project | ||
/// \author Philippe Ganz <[email protected]> | ||
/// \version 0.2.0 | ||
/// \date 2018-01-07 | ||
/// \version 0.3.0 | ||
/// \date 2018-03-30 | ||
/// \copyright GPL-3.0 | ||
/// | ||
|
||
#ifndef ASTROQUT_CONST_HPP | ||
#define ASTROQUT_CONST_HPP | ||
|
||
//#define DEBUG | ||
//#define VERBOSE | ||
#define DO_ARGCHECKS | ||
|
||
#endif // ASTROQUT_CONST_HPP |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -3,17 +3,17 @@ | |
/// \brief FISTA (Fast Iterative Shrinkage Tresholding Algorithm) solver for Poisson distributed noise. | ||
/// \author Hatef Monajemi <[email protected]> 2012-2014 | ||
/// \author Philippe Ganz <[email protected]> 2017-2018 | ||
/// \version 0.2.0 | ||
/// \date 2018-01-04 | ||
/// \version 0.3.0 | ||
/// \date 2018-02-25 | ||
/// \copyright GPL-3.0 | ||
/// | ||
|
||
#ifndef ASTROQUT_FISTA_POISSON_HPP | ||
#define ASTROQUT_FISTA_POISSON_HPP | ||
|
||
#include "utils/matrix.hpp" | ||
#include "utils/operator/matmult.hpp" | ||
#include "utils/operator/convolution.hpp" | ||
#include "utils/linearop/matrix.hpp" | ||
#include "utils/linearop/operator/matmult.hpp" | ||
#include "utils/linearop/operator/convolution.hpp" | ||
|
||
#include <iostream> | ||
#include <iomanip> | ||
|
@@ -32,6 +32,7 @@ struct Parameters | |
Parameters() noexcept | ||
: tol(1e-6) | ||
, max_iter(2000) | ||
, init_value{} | ||
, log(true) | ||
, log_period(10) | ||
{} | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -2,7 +2,7 @@ | |
/// \file include/settings.hpp | ||
/// \brief Constant optimization values used throughout the whole project | ||
/// \author Philippe Ganz <[email protected]> | ||
/// \version 0.2.0 | ||
/// \version 0.3.0 | ||
/// \date 2018-01-07 | ||
/// \copyright GPL-3.0 | ||
/// | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -2,22 +2,64 @@ | |
/// \file include/test.hpp | ||
/// \brief Test suites to validate the project code | ||
/// \author Philippe Ganz <[email protected]> | ||
/// \version 0.2.0 | ||
/// \date 2017-12-28 | ||
/// \version 0.3.0 | ||
/// \date 2018-03-30 | ||
/// \copyright GPL-3.0 | ||
/// | ||
|
||
#ifndef ASTROQUT_TEST_HPP | ||
#define ASTROQUT_TEST_HPP | ||
|
||
#include "test/matrix.hpp" | ||
#include "test/fista.hpp" | ||
#include "test/matrix.hpp" | ||
#include "test/operator.hpp" | ||
|
||
#include <chrono> | ||
#include <iostream> | ||
#include <random> | ||
|
||
namespace astroqut{ | ||
namespace test{ | ||
|
||
bool Matrix(); | ||
bool FISTA(); | ||
template <class T> | ||
bool PerfTest(size_t length) | ||
{ | ||
using namespace matrix; | ||
|
||
Time<T>(length); | ||
|
||
bool transpose_square = TransposeSquare<T>(); | ||
bool transpose_rect = TransposeRect<T>(); | ||
|
||
bool add = Add<T>(); | ||
bool sub = Sub<T>(); | ||
bool mult_square = MultSquare<T>(); | ||
bool mult_rect = MultRect<T>(); | ||
bool vect_mat = MultVectMat<T>(); | ||
bool mat_vect = MultMatVect<T>(); | ||
|
||
bool norm_one = NormOne<T>(); | ||
bool norm_two = NormTwo<T>(); | ||
bool norm_inf = NormInf<T>(); | ||
|
||
bool sum = Sum<T>(); | ||
|
||
bool shrink = Shrink<T>(); | ||
|
||
return transpose_square && transpose_rect && add && sub && mult_square && mult_rect && vect_mat && mat_vect && norm_one && norm_two && norm_inf && sum && shrink; | ||
} | ||
|
||
template <class T> | ||
void PerfTestOptional(size_t length) | ||
{ | ||
using namespace matrix; | ||
|
||
Optimizations<T>(length); | ||
} | ||
|
||
bool OperatorTest(); | ||
|
||
bool FISTATest(); | ||
|
||
} // namespace test | ||
} // namespace astroqut | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -2,8 +2,8 @@ | |
/// \file include/test/fista.hpp | ||
/// \brief Test suite to validate the FISTA class. | ||
/// \author Philippe Ganz <[email protected]> | ||
/// \version 0.2.0 | ||
/// \date 2018-01-04 | ||
/// \version 0.3.0 | ||
/// \date 2018-01-12 | ||
/// \copyright GPL-3.0 | ||
/// | ||
|
||
|
@@ -21,9 +21,7 @@ namespace astroqut{ | |
namespace test{ | ||
namespace fista{ | ||
|
||
bool SmallExample1(); | ||
bool SmallExample2(); | ||
bool SmallExample3(); | ||
bool SmallExample(); | ||
|
||
void Time(size_t length); | ||
|
||
|
Oops, something went wrong.