From: Bastien R. <rou...@gm...> - 2013-06-27 12:29:29
|
Hi, Coyuld you try the https://github.com/bastien-roucaries/qucsrework.git branch local_complex_20130624 I have used libeigen to simplify our matrix computation and speed up the process. And ported to c++11 Bastien |
From: Bastien R. <rou...@gm...> - 2013-06-28 16:22:41
|
Any comments about this ? On Thu, Jun 27, 2013 at 2:29 PM, Bastien ROUCARIES <rou...@gm...> wrote: > Hi, > > Coyuld you try the https://github.com/bastien-roucaries/qucsrework.git > branch local_complex_20130624 > > I have used libeigen to simplify our matrix computation and speed up > the process. > > And ported to c++11 > > Bastien |
From: Clemens N. <cl...@fa...> - 2013-06-30 09:11:06
Attachments:
error.txt
|
Hi, I did a checkout on your git repo & tried to compile, but got the following error: make[3]: Entering directory `/home/cnovak/src/qucs-src/qucsrework/qucs-core/src/math' g++ -DHAVE_CONFIG_H -I. -I../.. -I/usr/include/eigen3 -I../../src -O2 -pipe -fno-exceptions -fno-rtti -fno-check-new -MT complex.o -MD -MP -MF .deps/complex.Tpo -c -o complex.o complex.cpp mv -f .deps/complex.Tpo .deps/complex.Po g++ -DHAVE_CONFIG_H -I. -I../.. -I/usr/include/eigen3 -I../../src -O2 -pipe -fno-exceptions -fno-rtti -fno-check-new -MT fspecial.o -MD -MP -MF .deps/fspecial.Tpo -c -o fspecial.o fspecial.cpp mv -f .deps/fspecial.Tpo .deps/fspecial.Po g++ -DHAVE_CONFIG_H -I. -I../.. -I/usr/include/eigen3 -I../../src -O2 -pipe -fno-exceptions -fno-rtti -fno-check-new -MT matrix.o -MD -MP -MF .deps/matrix.Tpo -c -o matrix.o matrix.cpp In file included from matrix.cpp:96:0: matrix.h: In function ‘matrix real(const matrix&)’: matrix.h:349:41: error: no matching function for call to ‘ptr_fun(<unresolved overloaded function type>)’ std::ptr_fun(std::real<nr_complex_t>)) ... The rest of the error messages is attached to this mail. I installed eigen3 (I'm on Archlinux & it's in the AUR) and the first example on http://eigen.tuxfamily.org/dox/GettingStarted.html works as expected. The include path which I provide manually for the eigen3 example is /usr/include/eigen3 and seems qucs-core picks up the path correctly but then something breaks. gcc -v outputs: Using built-in specs. COLLECT_GCC=gcc COLLECT_LTO_WRAPPER=/usr/lib/gcc/x86_64-unknown-linux-gnu/4.8.1/lto-wrapper Target: x86_64-unknown-linux-gnu Configured with: /build/gcc/src/gcc-4.8.1/configure --prefix=/usr --libdir=/usr/lib --libexecdir=/usr/lib --mandir=/usr/share/man --infodir=/usr/share/info --with-bugurl=https://bugs.archlinux.org/ --enable-languages=c,c++,ada,fortran,go,lto,objc,obj-c++ --enable-shared --enable-threads=posix --with-system-zlib --enable-__cxa_atexit --disable-libunwind-exceptions --enable-clocale=gnu --disable-libstdcxx-pch --enable-gnu-unique-object --enable-linker-build-id --enable-cloog-backend=isl --disable-cloog-version-check --enable-lto --enable-gold --enable-ld=default --enable-plugin --with-plugin-ld=ld.gold --with-linker-hash-style=gnu --disable-install-libiberty --disable-multilib --disable-libssp --disable-werror --enable-checking=release Thread model: posix gcc version 4.8.1 (GCC) A build of "normal" qucs works, though. I hope my error messages are of some help... Regards - Clemens On 2013-06-28 18:22, Bastien ROUCARIES wrote: > Any comments about this ? > > > On Thu, Jun 27, 2013 at 2:29 PM, Bastien ROUCARIES > <rou...@gm...> wrote: >> Hi, >> >> Coyuld you try the >> https://github.com/bastien-roucaries/qucsrework.git >> branch local_complex_20130624 >> >> I have used libeigen to simplify our matrix computation and speed up >> the process. >> >> And ported to c++11 >> >> Bastien > > ------------------------------------------------------------------------------ > This SF.net email is sponsored by Windows: > > Build for Windows Store. > > http://p.sf.net/sfu/windows-dev2dev > _______________________________________________ > Qucs-devel mailing list > Quc...@li... > https://lists.sourceforge.net/lists/listinfo/qucs-devel |
From: roucaries b. <rou...@gm...> - 2013-06-30 18:30:14
|
On Sun, Jun 30, 2013 at 11:10 AM, Clemens Novak <cl...@fa...> wrote: > Hi, > > I did a checkout on your git repo & tried to compile, but got the following > error: > > make[3]: Entering directory > `/home/cnovak/src/qucs-src/qucsrework/qucs-core/src/math' > g++ -DHAVE_CONFIG_H -I. -I../.. -I/usr/include/eigen3 -I../../src -O2 > -pipe -fno-exceptions -fno-rtti -fno-check-new -MT complex.o -MD -MP -MF > .deps/complex.Tpo -c -o complex.o complex.cpp > mv -f .deps/complex.Tpo .deps/complex.Po > g++ -DHAVE_CONFIG_H -I. -I../.. -I/usr/include/eigen3 -I../../src -O2 > -pipe -fno-exceptions -fno-rtti -fno-check-new -MT fspecial.o -MD -MP -MF > .deps/fspecial.Tpo -c -o fspecial.o fspecial.cpp > mv -f .deps/fspecial.Tpo .deps/fspecial.Po > g++ -DHAVE_CONFIG_H -I. -I../.. -I/usr/include/eigen3 -I../../src -O2 > -pipe -fno-exceptions -fno-rtti -fno-check-new -MT matrix.o -MD -MP -MF > .deps/matrix.Tpo -c -o matrix.o matrix.cpp > In file included from matrix.cpp:96:0: > matrix.h: In function ‘matrix real(const matrix&)’: > matrix.h:349:41: error: no matching function for call to > ‘ptr_fun(<unresolved overloaded function type>)’ > std::ptr_fun(std::real<nr_complex_t>)) > ... You do not compile in c++11 mode thus this error due to some limitation between eigen and qucs. I could work arround it if needeed. I have pushed a new version with improved autoconf but you need to ../autogen.sh before compiling. > The rest of the error messages is attached to this mail. > > I installed eigen3 (I'm on Archlinux & it's in the AUR) and the first > example on http://eigen.tuxfamily.org/dox/GettingStarted.html works as > expected. The include path which I provide manually for the eigen3 example > is /usr/include/eigen3 and seems qucs-core picks up the path correctly but > then something breaks. > > gcc -v outputs: > > > Using built-in specs. > COLLECT_GCC=gcc > COLLECT_LTO_WRAPPER=/usr/lib/gcc/x86_64-unknown-linux-gnu/4.8.1/lto-wrapper > Target: x86_64-unknown-linux-gnu > Configured with: /build/gcc/src/gcc-4.8.1/configure --prefix=/usr > --libdir=/usr/lib --libexecdir=/usr/lib --mandir=/usr/share/man > --infodir=/usr/share/info --with-bugurl=https://bugs.archlinux.org/ > --enable-languages=c,c++,ada,fortran,go,lto,objc,obj-c++ --enable-shared > --enable-threads=posix --with-system-zlib --enable-__cxa_atexit > --disable-libunwind-exceptions --enable-clocale=gnu --disable-libstdcxx-pch > --enable-gnu-unique-object --enable-linker-build-id > --enable-cloog-backend=isl --disable-cloog-version-check --enable-lto > --enable-gold --enable-ld=default --enable-plugin --with-plugin-ld=ld.gold > --with-linker-hash-style=gnu --disable-install-libiberty --disable-multilib > --disable-libssp --disable-werror --enable-checking=release > Thread model: posix > gcc version 4.8.1 (GCC) > > A build of "normal" qucs works, though. I hope my error messages are of some > help... > > Regards - Clemens > > > > > > > > On 2013-06-28 18:22, Bastien ROUCARIES wrote: >> >> Any comments about this ? >> >> >> On Thu, Jun 27, 2013 at 2:29 PM, Bastien ROUCARIES >> <rou...@gm...> wrote: >>> >>> Hi, >>> >>> Coyuld you try the https://github.com/bastien-roucaries/qucsrework.git >>> branch local_complex_20130624 >>> >>> I have used libeigen to simplify our matrix computation and speed up >>> the process. >>> >>> And ported to c++11 >>> >>> Bastien >> >> >> >> ------------------------------------------------------------------------------ >> This SF.net email is sponsored by Windows: >> >> Build for Windows Store. >> >> http://p.sf.net/sfu/windows-dev2dev >> _______________________________________________ >> Qucs-devel mailing list >> Quc...@li... >> https://lists.sourceforge.net/lists/listinfo/qucs-devel > > > ------------------------------------------------------------------------------ > This SF.net email is sponsored by Windows: > > Build for Windows Store. > > http://p.sf.net/sfu/windows-dev2dev > _______________________________________________ > Qucs-devel mailing list > Quc...@li... > https://lists.sourceforge.net/lists/listinfo/qucs-devel > |
From: Frans S. <fra...@gm...> - 2013-07-03 07:45:44
|
Hello Bastien, Thank you for all your work on the improvements of the qucs matrix calculations. As you may have seen, I have added your branch to the sourceforge qucs repository as well, I suggest you continue your work there in stead of github. If you give me your username I will give you access. > Portable to mac unix and windows eseally . Note that you need > pkg-config script but by using some override of LD_FLAGS you could > compile under windows easilly (we should add a doc but I prefer to > cross compile from linux). For the release I already build the windows version using cross compile, which is a lot easier than native compile on Windows hosts. Most windows users won't compile their own software anyway, so I think we can default to cross compile. > > Thanks and regards, Frans |
From: Soeren D. S. <soe...@gm...> - 2013-07-14 16:22:50
|
Using Eigen is certainly a good idea. But most code relevant to transient simulation uses the "tmatrix" class template. Is that intended to be replaced, too? Do we really need two matrix classes in the first place? Isn't "matrix" essentially "tmatrix<nr_complex_t>"? Sören Am 27.06.2013 14:29, schrieb Bastien ROUCARIES: > Hi, > > Coyuld you try the https://github.com/bastien-roucaries/qucsrework.git > branch local_complex_20130624 > > I have used libeigen to simplify our matrix computation and speed up > the process. > > And ported to c++11 > > Bastien |
From: roucaries b. <rou...@gm...> - 2013-07-14 17:20:50
|
On Sun, Jul 14, 2013 at 6:22 PM, Soeren D. Schulze <soe...@gm...> wrote: > Using Eigen is certainly a good idea. But most code relevant to > transient simulation uses the "tmatrix" class template. Is that > intended to be replaced, too? I plan to replace step by step, in order to be bissectable. > > Do we really need two matrix classes in the first place? Isn't "matrix" > essentially "tmatrix<nr_complex_t>"? Yes, i think so, but in order to be bisectable I need to do step by step. So the step are: 1. ::matrix use eigen as embeded private 2. ::matrix is API compatible with eigen 3. ::matrix is replaced by eigen Then I will check tmatrix, like the previous one. The harder part is vector because they use vector as: - std::vector an array with automatic growing - math vector Or the two uses are orthogonal from a c++ implementation point of view and merging the two is bad for a speed point of view > > > Sören > > Am 27.06.2013 14:29, schrieb Bastien ROUCARIES: >> Hi, >> >> Coyuld you try the https://github.com/bastien-roucaries/qucsrework.git >> branch local_complex_20130624 >> >> I have used libeigen to simplify our matrix computation and speed up >> the process. >> >> And ported to c++11 >> >> Bastien > > ------------------------------------------------------------------------------ > See everything from the browser to the database with AppDynamics > Get end-to-end visibility with application monitoring from AppDynamics > Isolate bottlenecks and diagnose root cause in seconds. > Start your free trial of AppDynamics Pro today! > http://pubads.g.doubleclick.net/gampad/clk?id=48808831&iu=/4140/ostg.clktrk > _______________________________________________ > Qucs-devel mailing list > Quc...@li... > https://lists.sourceforge.net/lists/listinfo/qucs-devel |