Re: [eigen] Addition to Eigen-unsupported Spline module

[ Thread Index | Date Index | More lists.tuxfamily.org/eigen Archives ]


What Christoph said backs up introducing a new typedef like e.g.

EIGEN_MAKE_ARRAY_TYPEDEFS_ALL_SIZES(DenseIndex, Idx)

Are there any objections about doing this? I am fine with it. That's all which keeps us from merging.

Regards,
Hauke


On Tue, Jun 24, 2014 at 4:29 AM, Jeff J <complexzeros@xxxxxxxxx> wrote:
I decided to go with LU decomposition with complete pivoting, because it gave the best results. The seed 1403534440 passes now on VS 2013. It wasn't getting better precision on gcc. It was just better with that seed because the different random number generators were giving a better system.


On Mon, Jun 23, 2014 at 1:06 PM, Jeff J <complexzeros@xxxxxxxxx> wrote:
On second thought, it might also have something do with the basis function derivatives calculation or the endpoint derivative setup.


On Mon, Jun 23, 2014 at 12:53 PM, Jeff J <complexzeros@xxxxxxxxx> wrote:
I am able to reproduce that with VS 2013, 64-bit build. It just wasn't achieving precision to 1e-12 (but it was when I built it using gcc). With that seed value, it's only accurate to 1e-11 for the points. I noticed that with the Interpolate function, it's accurate to 1e-14. What is acceptable precision for this sort of thing? 1e-10 is plenty for my purposes. I'll dig into it a little more, but I can't think of what would cause that other than the solver.



On Mon, Jun 23, 2014 at 8:42 AM, Hauke Heibel <hauke.heibel@xxxxxxxxx> wrote:
This seed crashes on my system 1403534440 with a 64 bit build and Visual Studio 2012. I have no time to debug this right now. I hope you can reproduce it on your side.

Regards,
Hauke


On Mon, Jun 23, 2014 at 4:15 PM, Hauke Heibel <hauke.heibel@xxxxxxxxx> wrote:
There is one potential issue which came up when I looked at the code.

The code introduces an Eigen wide "typedef Array<DenseIndex, 1, Dynamic> IndexType". 

This is similar to the typedefs provided by Array.h though only typedefs for int exist and none for DenseIndex.

I see the following potential solutions:
a) add a Spline namespace and move the typedef and other Spline related code there
b) add EIGEN_MAKE_ARRAY_TYPEDEFS_ALL_SIZES(DenseIndex, Idx) (or something similar)
c) be explicit and write it all out in the few places where it is used

I am not sure whether to use b) or c). At the moment I am slightly in favor of c) though that might change at any time.

Jeff already mentioned on the pull request that unfortunately the IndexType did not properly fit to the SplineTraits since it is independent of the Spline type.

Regards,
Hauke


On Mon, Jun 23, 2014 at 4:00 PM, Jeff J <complexzeros@xxxxxxxxx> wrote:
If anyone is interested in taking a look, I submitted a pull request for an addition I made to perform Spline interpolation to data points with derivative constraints. This is particularly useful for shape design, which is what I'm interested in.

Best,
Jeff








Mail converted by MHonArc 2.6.19+ http://listengine.tuxfamily.org/