я тут неделю назад извратился: надо было тридиагональную /не знаю, как по-русски правильно/ систему решить, решил поиграться с дотнетовским nemerle - начал красиво, со списками, рекурсиями и т.п.... Но потом представил, как я буду это объяснять... В общем свелось всё к банальным for и массивам аля на любом языке:) единственное, что полезное - вложенные функции.
З.Ы. Не надо мне рассказывать о выборе инструмента к задаче: я учусь и играюсь с чем хочу и как хочу.
Обычно сначала проверюя работоспособность методов на octave, потом, как обретаю уверенность в непокобелимости мат.выкладок применяю Си + библиотечки численных методов, коих более чем достаточно, Довольно часто требуется скорость вычислений(чтобы модели просчитывались по 2 часа, а не по 8).
С(рр) или fortran разницы нет, если не планируется использовать в дальнейшем чужой код. Не забудте по интелевский компилятор. Недавно поиграл с линуксоидовской версией маткада. как и в винде очень удобно.
есть http://sourceware.org/gsl/ Но лично мне она показалось неудобной - после Фотртана. Может просто непривычно, я на ней толком ничего серъёзного не сделал. FFT очень хорошее есть - www.fftw.org. В какой-то версии оно MPI поддерживает.
FFTW is a very fast C library for computing Discrete Fourier Transforms (DFT). It uses a powerful symbolic optimizer written in OCaml which, given an integer N, generates highly optimized C code to compute DFTs of size N.