Re: [eigen] eigen short support: discussion thread

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


Thanks for that. It seems to be building now. Though it takes a lot of
time and I am still compiling it. I'll let you know how it went. This
seems like a good time to ask, why do we need NumTraits.h in the first
place? And what does it do?

On Tue, Aug 25, 2009 at 3:28 PM, Gael
Guennebaud<gael.guennebaud@xxxxxxxxx> wrote:
> hi,
>
> this is because in NumTraits.h, line 58 you have:
>
> typedef int Real;
>
> while, I guess, it should be:
>
> typedef short Real;
>
> cheers,
>
> gael.
>
>
> On Tue, Aug 25, 2009 at 10:54 AM, Rohit Garg<rpg.314@xxxxxxxxx> wrote:
>> Hi,
>>
>> I pushed a new change with short support to my branch here.
>>
>> http://bitbucket.org/rpg/eigen2-rpg-branch/overview/
>>
>> I did just as Benoit spelled out here,
>>
>> http://listengine.tuxfamily.org/lists.tuxfamily.org/eigen/2009/08/msg00108.html
>>
>> If you look into the NumTraits.h and MathFunctions.h files, the short
>> portion added by me is a virtual clone of the int portion. with int
>> replaced by float.
>>
>> Yet, when I try to run the unit tests, I get this,
>>
>> ~/Documents/numerical/eigen2-rpg-branch/build@rpg> make -j2
>> [  2%] [  2%] Building CXX object test/CMakeFiles/test_array.dir/array.cpp.o
>> Building CXX object test/CMakeFiles/test_adjoint.dir/adjoint.cpp.o
>> In file included from
>> /home/rpg/Documents/numerical/eigen2-rpg-branch/Eigen/Core:131,
>>                 from
>> /home/rpg/Documents/numerical/eigen2-rpg-branch/Eigen/Array:5,
>>                 from
>> /home/rpg/Documents/numerical/eigen2-rpg-branch/test/main.h:140,
>>                 from
>> /home/rpg/Documents/numerical/eigen2-rpg-branch/test/adjoint.cpp:26:
>> /home/rpg/Documents/numerical/eigen2-rpg-branch/Eigen/src/Core/MathFunctions.h:58:
>> error: template-id ‘precision<short int>’ for ‘short int
>> Eigen::precision()’ does not match any template declaration
>> /home/rpg/Documents/numerical/eigen2-rpg-branch/Eigen/src/Core/MathFunctions.h:33:
>> warning: inline function ‘typename Eigen::NumTraits<T>::Real
>> Eigen::precision() [with T = short int]’ used but never defined
>> make[2]: *** [test/CMakeFiles/test_adjoint.dir/adjoint.cpp.o] Error 1
>> make[1]: *** [test/CMakeFiles/test_adjoint.dir/all] Error 2
>> make[1]: *** Waiting for unfinished jobs....
>> In file included from
>> /home/rpg/Documents/numerical/eigen2-rpg-branch/Eigen/Core:131,
>>                 from
>> /home/rpg/Documents/numerical/eigen2-rpg-branch/Eigen/Array:5,
>>                 from
>> /home/rpg/Documents/numerical/eigen2-rpg-branch/test/main.h:140,
>>                 from
>> /home/rpg/Documents/numerical/eigen2-rpg-branch/test/array.cpp:26:
>> /home/rpg/Documents/numerical/eigen2-rpg-branch/Eigen/src/Core/MathFunctions.h:58:
>> error: template-id ‘precision<short int>’ for ‘short int
>> Eigen::precision()’ does not match any template declaration
>> /home/rpg/Documents/numerical/eigen2-rpg-branch/Eigen/src/Core/MathFunctions.h:33:
>> warning: inline function ‘typename Eigen::NumTraits<T>::Real
>> Eigen::precision() [with T = short int]’ used but never defined
>> make[2]: *** [test/CMakeFiles/test_array.dir/array.cpp.o] Error 1
>> make[1]: *** [test/CMakeFiles/test_array.dir/all] Error 2
>> make: *** [all] Error 2
>> ~/Documents/numerical/eigen2-rpg-branch/build@rpg>
>>
>>
>> Will somebody be please kind enough to look into what went wrong?
>> precision<short> is plainly there. Thanks
>>
>> --
>> Rohit Garg
>>
>> http://rpg-314.blogspot.com/
>>
>> Senior Undergraduate
>> Department of Physics
>> Indian Institute of Technology
>> Bombay
>>
>>
>>
>
>
>



-- 
Rohit Garg

http://rpg-314.blogspot.com/

Senior Undergraduate
Department of Physics
Indian Institute of Technology
Bombay



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