Mechanics of Defect Evolution Library
Loading...
Searching...
No Matches
Lattices_NEW/RLLL.h
Go to the documentation of this file.
1/* This file is part of model.
2 *
3 * MoDELib is distributed without any warranty under the MIT License.
4 */
5
6
7#ifndef model_RLLL_h_
8#define model_RLLL_h_
9
10#include <iostream>
11#include <iomanip>
12#include <cfloat> // FLT_EPSILON
13#include <Eigen/Dense>
14
15namespace model
16{
17
18
19 class RLLL
20 {/* Ying Hung Gan, Cong Ling, Complex Lattice Reduction Algorithm for Low-Complexity Full-Diversity MIMO Detection
21 * IEEE TRANSACTIONS ON SIGNAL PROCESSING, VOL. 57, NO. 7, JULY 2009
22 */
23
24 typedef Eigen::MatrixXd MatrixType;
25 typedef Eigen::VectorXd VectorType;
26
27
28 MatrixType B;
29 Eigen::Matrix<long int,Eigen::Dynamic,Eigen::Dynamic> U;
30
31 /**********************************************************************/
32 void update(VectorType& H,
33 MatrixType& M,
34 const int& k);
35 /**********************************************************************/
36 void size_reduce(MatrixType& M,
37 const int& k,
38 const int& j);
39 public:
40
41
42 /**********************************************************************/
43 RLLL(const MatrixType& B0,
44 const double& delta) ;
45
46 /**********************************************************************/
47 const MatrixType& reducedBasis() const;
48 /**********************************************************************/
49 const Eigen::Matrix<long int,Eigen::Dynamic,Eigen::Dynamic>& unimodularMatrix() const;
50
51 };
52
53
54} // end namespace
55#endif
56
57
Eigen::Matrix3d M
const MatrixType & reducedBasis() const
RLLL(const MatrixType &B0, const double &delta)
const Eigen::Matrix< long int, Eigen::Dynamic, Eigen::Dynamic > & unimodularMatrix() const
int j
int k