1 #include <Eigen/Sparse> 9 Eigen::VectorXd&
b,
const Eigen::VectorXd& boundary)
11 int n =
int(boundary.size());
14 if(i==-1 || i==n)
b(
id) -= w * boundary(j);
15 else if(j==-1 || j==n)
b(
id) -= w * boundary(i);
16 else coeffs.push_back(
T(
id,id1,w));
22 Eigen::ArrayXd boundary = Eigen::ArrayXd::LinSpaced(n, 0,
M_PI).sin().pow(2);
23 for(
int j=0;
j<
n; ++
j)
25 for(
int i=0;
i<
n; ++
i)
40 QImage img(bits.
data(),
n,
n,QImage::Format_Indexed8);
41 img.setColorCount(256);
42 for(
int i=0;
i<256;
i++) img.setColor(
i,qRgb(
i,
i,
i));
Eigen::Triplet< double > T
void buildProblem(std::vector< T > &coefficients, Eigen::VectorXd &b, int n)
EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE const Scalar * data() const
Eigen::SparseMatrix< double > SpMat
void insertCoefficient(int id, int i, int j, double w, std::vector< T > &coeffs, Eigen::VectorXd &b, const Eigen::VectorXd &boundary)
General-purpose arrays with easy API for coefficient-wise operations.
void saveAsBitmap(const Eigen::VectorXd &x, int n, const char *filename)
Map< const Array< unsigned char, sizeof(T), 1 > > bits(const T &x)
set noclip points set clip one set noclip two set bar set border lt lw set xdata set ydata set zdata set x2data set y2data set boxwidth set dummy x