title: Eigen Spline module Assertion
body: <p>I'm using spline module in Eigen, and Assertion failed when I set the type of <code>Spline&lt;double, 1&gt;</code> as member variables.
  this is a example,</p>
  
  <pre><code>#include "Eigen/eigen"
  #include "unsupported/Eigen/splines"
  using namespace Eigen;
  class Spline1d
  {
     Spline&lt;double, 1&gt; spl1d;
  public:
     ~Spline1d() {};
     Spline1d() {};
     Spline1d(const MatrixXd &amp;input) {
        spl1d = SplineFitting&lt;Spline&lt;double, 1&gt; &gt;::Interpolate(input.row(1), 1, input.row(0));
     }
  };
  int main()
  {
     MatrixXd vals(2, 5);
     vals &lt;&lt; 1.0, 2.0, 3.0, 4.0, 5.0,
            1.0, 2.0, 3.0, 4.0, 5.0;
  
     // Spline1d spl(vals);                  // case 1
     Spline&lt;double, 1&gt; spl1d =       // case 2
           SplineFitting&lt;Spline&lt;double, 1&gt;&gt;::Interpolate(vals.row(1), 1, vals.row(0));
     return 0;
  }
  </code></pre>
  
  <p>comment <code>case 1</code> , using <code>case 2</code>, it works fine.</p>
  
  <p>But comment <code>case 2</code>, using <code>case 1</code>, it fails, and it is run time error.
  this is the Error message in command line，</p>
  
  <pre><code>Assertion failed: v == T(Value), file d:\onedrive\documents\codes\library\eigen\
  src/Core/util/XprHelper.h, line 53
  </code></pre>