Fortran - Divers - Programmation
Marsh Posté le 12-06-2003 à 15:08:03
Il y a des endroits ou ca s'apprend encore...pour les physiciens à ma connaissance!
Marsh Posté le 12-06-2003 à 15:18:15
+1 dans quelques labos encore (physico-chimie a ma connaissance).
Marsh Posté le 12-06-2003 à 15:28:27
Ca s'apprend en école d'ingé en tout cas. Et en fac de science. Depuis le début de l'année j'ai "étudié" 6 codes de calcul de méca flu ; 5 sont écrits en fortran et le 6ème en c++. Ca fait une belle proportion quand même.
Par contre je me demande l'avantage du fortran sur le c par exemple, pour la physique. Il paraît qu'il y a une histoire de validation de bibliothèques, mais j'aimerais en savoir plus.
Marsh Posté le 12-06-2003 à 15:44:47
Marnie a écrit : Ca s'apprend en école d'ingé en tout cas. Et en fac de science. Depuis le début de l'année j'ai "étudié" 6 codes de calcul de méca flu ; 5 sont écrits en fortran et le 6ème en c++. Ca fait une belle proportion quand même. |
j utilise le fortran au boulot depuis des années.
Pour ta question, ya plusieurs raisons:
- le fortran a été inventé 20 ans avant le C. Donc les premiers codes de calcul ont été écrit en fortran.
- la tendance est d'agrandir un prog dèjà validé plutot que de le ré écrire dans le dernier langage à la mode.
- la nature 'statique' de la prog fortran permettait d avoir une plus grande vitesse sur le C.
résultat des millions de lignes de calcul en fortran ont été faites et elles fonctionnent : on s en sert encore
Et comme tu dis, les bibliothèques numériques sont surtout en fortran. Depuis quelques temps elles sont aussi en C/C++ et validées
Marsh Posté le 12-06-2003 à 16:18:33
Donc le fortran survit parce que les anciens qui ont l'habitude la transmettent aux nouveaux. J'espérais qu'il y avait une raison plus scientifique.
Marsh Posté le 12-06-2003 à 16:25:54
Marnie a écrit : Donc le fortran survit parce que les anciens qui ont l'habitude la transmettent aux nouveaux. J'espérais qu'il y avait une raison plus scientifique. |
bin 1 000 000 de lignes de fortran => personne a envi de réécrire ça en C++
et la raison + scientifique est qu en optimisant à fond le fortran bin c'est le langage le + rapide.
Je connais des codes en C++ qui utilisent pour le coeur du calcul du fortran car ça dépote +
Marsh Posté le 12-06-2003 à 16:49:22
Oui ça s'apprend encore et honétement ça sert pas tant que ça (à part maintenence de vieux code )
cow2 a écrit : |
Là j'ai des gros doutes, je demande à voir.
Marsh Posté le 12-06-2003 à 16:56:00
LetoII a écrit : Oui ça s'apprend encore et honétement ça sert pas tant que ça (à part maintenence de vieux code ) |
raison 1 :
fortran = mémoire statique
tout est alloué au début du calcul = ca dépote
(si pas assez de mémoire pour tout allouer = ca plante )
raison 2 :
en plus les programmeurs savent comment est stocké les tableaux (en colonne) = organisation des boucles optimales
Marsh Posté le 12-06-2003 à 16:59:24
cow2 a écrit : |
Ca tien pas debout, on peut aussi faire ça en C/C++.
Marsh Posté le 14-06-2003 à 10:40:15
Ayant appris et pratiqué le Fortran vers les années 1975-1798 après JC, j'ai l'impression que
* si l'on part de rien, on se lance en (C/)C++, QuickBasic (ouaf ! j'en connais)
* si un gros tas d'outils existent déja, au lieu de passer sa vie à tout réécrire (les autres n'ont peut-être pas envie de le faire pour nos beaux yeux), on s'y colle.
Si je savais qu'il existe (faudrait que je cherche un peu ) des classes diverses et variées qui me permettaient de me simplifier la vie pour ce que j'écris en C, je ferais un (gros) effort pour apprendre le C++. Réécrire la roue, ça prend du temps.
Marsh Posté le 23-06-2003 à 09:02:09
CARBON_14 a écrit : Ayant appris et pratiqué le Fortran vers les années 1975-1798 après JC, j'ai l'impression que |
Ca me parait être une façon raisonable d'aborder le PB
Marsh Posté le 23-06-2003 à 09:34:57
LetoII a écrit : |
de memoire y'a aussi eu des extensions au fortran, notamment le HPF qui permet de filer des tips au compilo pour exploiter le parrallelisme de la machine cible (si jamais elle a le bon gout d'etre parrallele, ce qui a des chances d'etre le cas pour les gros calculs scientifiques)
Marsh Posté le 01-07-2003 à 16:38:25
chrisbk a écrit : |
oui effectivement
On utilise aussi les bibliotheques openMP (calculateurs paralleles à mémoire partagée) ou MPI (calculateurs à mémoire distribuée).
Ces bibliothèques existent aussi en C/C++ cependant
Je me suis renseigné depuis, la 'vitesse' d'éxécution n'est plus prépondérante.
LEs dernièrs compilos donnent les mêmes résultats en C/ Fortran.
Reste que l'immensité de bibliothèques numériques est en Fortran.
Et aussi que la plupart des numériciens préférent le bon vieux fortran de leur jeunesse
Marsh Posté le 12-06-2003 à 15:05:08
YA du monde qui utilise encore le fortran au boulot ou suis je un dinosaure ???
Ca s'apprend encore à l école ?