Re: [eigen] use Eigen to solve 3D hydrodynamic equations per book Hydrodynamics by Horace Lamb

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


One more tangent:  I have that book ''Hydrodynamics'' by Horace Lamb in my library.  It's a gem.
Dick


On Mon, Jan 4, 2021 at 5:19 AM David Tellenbach <david.tellenbach@xxxxxx> wrote:
a super small mailing list network etiquette explanation (netiquette):
Thanks Janek!

If you insist on using old Borland compiler you might fix your problems with

template<typename T>
ostream& operator<<(ostream& os, T);

by declaring your own operator<< which then calls AnsiString(…). But
I really wouldn't go that way. This need to overload operator<< is a
first bump on a very bumpy road. And the bumps are there because of
compiler deficiencies. I've been on that road many times.
I always hated it.
Just another note if you insist on using such an old compiler (and if IO is
really the only thing that makes troubles): You can also completely disable
IO in Eigen by defining EIGEN_NO_IO.

Thanks,
David

On 4. Jan 2021, at 14:14, Janek Kozicki (yade) <jkozicki-yade@xxxxxxxxx> wrote:

Hello Trevor,

a super small mailing list network etiquette explanation (netiquette):

Please don't hijack unrelated threads ...

It means that you replied to a thread of email messages in which a
different topic was discussed. Usually to discuss new things a new
first email with a different title is started.

"Top-posting" means that the answer is written above the replied-to
email. I am top posting right now.

Now about your problem:

I think that your compiler is really too old. "C++03" means that
eigen should compile with a compiler which adheres to C++ standard
released in year 2003. Personally I avoid code older than C++14.
Although I started writing my computational framework yade using
C++03, during past years I moved it to C++11 then to C++14/17.

New linux distributions are capable of running on quite an old
hardware. I would suggest that you choose some linux distribution,
e.g. from https://distrowatch.com/ and install it. Personally I use
devuan, but I made this choice only because I don't like systemd
(which runs smoothly only on newer hardware btw).

Some distributions are specifically tailored to older, slower
hardware. If you install some linux then you will have access to most
recent, best compilers.

If you insist on using old Borland compiler you might fix your problems with

template<typename T>
ostream& operator<<(ostream& os, T);

by declaring your own operator<< which then calls AnsiString(…). But
I really wouldn't go that way. This need to overload operator<< is a
first bump on a very bumpy road. And the bumps are there because of
compiler deficiencies. I've been on that road many times.
I always hated it.

From discussions on boost mailing list I inferred (maybe incorrectly)
that Borland compiler (recently renamed to Embarcadero) is almost
discontinued and has extremely poor user support. They just keep
selling new versions to get money, but they don't keep working on
them.

Good luck with solving 3D hydrodynamic equations!

best regards
Janek

Trevor Smith said:     (by the date of Mon, 4 Jan 2021 18:24:40 +1100 (AEDT))

Christop,

Thanks for replying.
Yes, really!
Borland Builder Ver 1.0 does not use <iostream>  but all i/o goes via
VCL using a class called AnsiString("Hello World").

I have a copy of Borland Builder ver 4.50 somewhere round the house.
Will try and load that and advise...
Thanks for your encouragement.

Regards,

Trevor

------ Original Message ------
From: "Christoph Hertzberg" <chtz@xxxxxxxxxxxxxxxxxxxxxxxx>
To: eigen@xxxxxxxxxxxxxxxxxxx
Sent: Monday, 4 Jan, 2021 At 11:31 AM
Subject: Re: [eigen] Re: Eigen interop with boost::multiprecision broken

Please don't hijack unrelated threads ...

Are you really running Borland C++ Builder 1.0 (which according to
wikipedia was released in 1997)? Are you able to upgrade to a newer
compiler version (or switch to gcc, clang, or msvc which are much more
frequently tested)?

Eigen should be C++03 compatible, so if you have problems with a
compliant compiler, please file a report. I don't understand what you
mean by
   using only “>>’s” and String.h.

Cheers,
Christoph

On 03/01/2021 20.48, Trevor Smith wrote:
Ian,
Seems I have joined a blog site re Eigen.
I am a 77 year old blitzer of a programmer (started out with FORTRAN
in 1961!) and I may be only looking over the fence and should go away?
I will describe myself and you might tell me what I need to do...
My aim is to find a general matrix inverter.
I want it to solve 3D hydrodynamic equations per book “Hydrodynamics”
by Horace Lamb.
I run Borland’s Builder version 1.0 and am fluent with STL C++.
I have loaded and tried to get Eigen going only to find to my
frustration it does not seem to know about anything about AnsiString -
using only “>>’s” and String.h.
Bad luck and bye bye for me?
Any tips?
Happy days,
Trevor Smith
Sydney, Australia

--
Janek Kozicki, PhD. DSc. Arch. Assoc. Prof.
Gdańsk University of Technology
Faculty of Applied Physics and Mathematics
Department of Theoretical Physics and Quantum Information
--
https://gitlab.com/yade-dev/trunk/-/commits/master
http://pg.edu.pl/jkozicki (click English flag on top right)





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