|
[Date Index]
[Thread Index]
[Author Index]
Re: Re: Intensive numerical calculations
- To: mathgroup at smc.vnet.net
- Subject: [mg80554] Re: [mg80517] Re: Intensive numerical calculations
- From: Daniel Lichtblau <danl at wolfram.com>
- Date: Sun, 26 Aug 2007 02:59:38 -0400 (EDT)
- References: <f9s445$all$1@smc.vnet.net><fabgog$id8$1@smc.vnet.net> <fae9u4$ec7$1@smc.vnet.net> <200708220838.EAA08507@smc.vnet.net> <faj4vu$8sk$1@smc.vnet.net> <200708240557.BAA16587@smc.vnet.net>
Cristian wrote:
> On Thu, 23 Aug 2007 05:12:30 +0000 (UTC), Daniel Lichtblau
> <danl at wolfram.com> wrote:
>
>
>>Cristian wrote:
>
> ]zac[
>
>>Suffice it to say that a dense representation will cause problems for
>>most software on many machines. As for a sparse represntation, and
>>computational speed, it will depend on what specifically you want to do.
>>Mathematica uses some fairly good libraries for certain linear algebra
>>operations on such matrices. If what you require is not well supported
>>then you might need to go to some other approach, perhaps via MathLink.
>>
>>Daniel Lichtblau
>>Wolfram Research
>>
>
> My problem is not the dimension of the matrixes. Certainly the
> limitation on the packeds array (< 2^31)limits, but my true problem is
> the slowness in to pass these matrixes to the form c++ by matlink.
> That that profit inserting pieces in c++, I lose in the transfers
> through matlink. I have to develop a form (structural fem)
> personalized for the analysis of parts mechanics submitted to dynamic
> solicitations and I was considering mathematica because I knew it from
> the university. If I use c++ and MTL for example it'is ok There is a
> method for move more quickly big matrixes (unfortunately the matrixes
> become full with the progress of the footsteps and it would be for me
> too complicated to avoid this to the beginning) from Mathematica to
> an external form in c++?
If you provide simple examples and take the trouble to use correct
terminology then you will more likely get useful responses. For example,
there is no "matlink" (the program you have in mind, I suspect, is
MathLink). Moreover you still have not specified what is your data
format when it resides in Mathematica. SparseArray[...]? Something else?
Maybe what you will require is some form of Export. I believe that
function supports some matrix types but it is, as I note, unclear which
would be appropriate, as you gave no example.
As for matrix fill-in, I'd be really surprised if your C++ library code
uses a dense method for solving linear systems of the sort generated for
FEM, with dimension around 10^5. As noted in a prior response, that
would be close to 100 Gb, and that is a large chunk of memory to work
with. Not to mention time, since you would likely have an O(n^3)
algorithm, or at best maybe O(n^2.4) or so from asymptotically fastest
approaches to matrix multiplication.
Much more likely is that a Krylov type of method would be used. Similar
to what Mathematica might do in solving a sparse system using machine
double arithmetic.
Daniel Lichtblau
Wolfram Research
Prev by Date:
Coordinate problems with Inset (and a bug)
Next by Date:
Re: ParametricPlot3D from 5.2 to 6.0
Previous by thread:
Re: Intensive numerical calculations
Next by thread:
Re: Intensive numerical calculations
|