[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: FORTRAN common blocks



Richard James wrote:
On Mon, 16 Jan 2006, Ricardo Biloti wrote:

       One problem I have never been able to resolve - I accept that C is
better for systems programming, but why on earth does anyone use it for
scientific code?  Can somebody enlighten me?

Obviously, that assertion is a mistake. There are many scientists
writing scientific code in C. Few examples of scientific tools written
in C:

Aztec (a parallel iterative library for solving linear systems)
FFTW
Gnu Linear Programming Kit
Gnu Scientific Library
NAG C Library
Open Optimization Library
PETSc, the Portable, Extensible Toolkit for Scientific computation
Seismic Unix
SLEPc, the Scalable Library for Eigenvalue Problem computation
SUNDIALS (SUite of Nonlinear and DIfferential/ALgebraic equation Solvers)
TAO (Toolkit for Advanced Optimization)

Regards,
--
Ricardo Biloti
Department of Applied Mathematics
IMECC/UNICAMP

> My question was why do people do it?  The question of whether is one to
> which I already know the answer.

I haven't found anything i can't do in C easily. I couldn't imagine using
a language without pointers. Instead of copying 100x100 arrays by value as
a function parameter, i can just pass a pointer to it.

After looking at some papers on how to solve equations fast where the
matrices are sparse, it occured to me that the authors were misguided
by a pointerless language. Using pointers, i made a program to solve
problems with sparse matrices as one would "by hand", which eliminates
all kinds of possible numerical problems with "traditional" methods.



Reply to: