Question:
La langue Fortran est-elle toujours utilisée dans l'aviation?
Oğuz Özdoğan
2016-11-02 16:04:28 UTC
view on stackexchange narkive permalink

Je suis étudiant en génie aéronautique à l'Université technique d'Istanbul et notre plan de cours inclut Fortran comme langage de programmation. J'ai quelques doutes à ce sujet car Fortran est une langue ancienne.

Le Fortran est-il toujours utilisé dans l'aviation?

Salut. Bienvenue sur Aviation.SE. Si vous apprenez à écrire du code, votre question n'est pas la bonne. Vous feriez mieux de poser cette question sur Programmers.SE pour comprendre pourquoi.
Pas directement sur l'aviation, mais j'ai des amis qui exécutent des simulations écrites en Fortran sur des super ordinateurs du gouvernement américain. Ils ont appris Fortean spécifiquement à cette fin au cours des dernières années. Les bibliothèques mathématiques et de parallélisation pour Fortran sont très bonnes et très efficaces, donc si vous voulez juste faire beaucoup de mathématiques sur de nombreux processeurs, Fortran reste un bon choix.
La dernière version stable de Fortran remonte à 2008, et étant donné que la langue elle-même a presque 60 ans, je ne la classerais pas comme une langue "ancienne", mais une langue mature. Certes, il n'est plus utilisé dans le courant dominant, mais pour l'analyse mathématique, Fortran est un très bon langage à connaître.
[Lié] (http://aviation.stackexchange.com/q/3608/15982) sinon dupliquer ...
Vous apprendrez la "programmation". La langue n'est pas (encore) importante.
Compte tenu de l'âge et de la désuétude de Fortran, je pense qu'il est largement utilisé dans l'industrie aéronautique.
@JonathanWalters Si vous pensez que Fortran 2008 (ou la prochaine version 2015) est "obsolète", vous ne connaissez probablement pas Fortran. Vous vous rendez compte que * standard * Fortran prend désormais en charge la programmation orientée objet, le calcul parallèle, etc., etc. Certes, il y a beaucoup de gens qui écrivent encore du code qui ressemble à peu près à Fortran 66, mais ce n'est pas la faute du langage.
@alephzero: "Standard Fortran supporte désormais la programmation orientée objet" Ce qui est peut-être une bonne raison de NE PAS l'utiliser dans l'aviation.
@mins: Non seulement cela, mais d'après ce que je comprends, les personnes qui maintiennent les normes pour ces langues sont plus intéressées par l'élargissement de la gamme de choses que le langage peut faire, contrairement aux responsables du standard C qui, au nom de "l'optimisation", ont réduit sa capacité à faire des choses que FORTRAN ne peut pas.
@jamesqf Je ne vois aucune raison pour laquelle un langage orienté objet ne pourrait pas être utilisé dans l'aviation. Comparez et mettez en contraste le C ++, qui est un langage multi-paradigme qui peut être utilisé de manière orientée objet. J'accorde que dans * certaines * situations de la programmation aéronautique, vous ne voudriez certainement * pas * * une exécution imprévisible * qui est un argument pour utiliser un langage et un runtime non récupérés par les déchets, pas un langage non orienté objet. Dans d'autres situations, je soupçonne d'être capable d'exprimer de manière succincte et lisible ce que vous voulez que l'ordinateur fasse est plus important que le temps d'exécution exact.
@GiacomoCatenazzi: quel langage ** s ** vous utilisez lors de l'apprentissage de la programmation est très important. Non seulement ils vous aident à structurer vos pensées, différemment pour chaque approche, mais vous aident également à en apprendre de nouvelles. FORTRAN est probablement (avec BASIC) l'un des pires au départ. En passant, j'ai un doctorat en physique où FORTRAN était la langue de choix et c'était un vrai cauchemar comparé à même C. Comme mon excellent professeur disait * "J'aime garder mes 10000 lignes de code dans un seul fichier pour avoir tout à portée de main, parfaitement dans une colonne "*. FORTRAN a peut-être changé, cependant (mais pourquoi?)
@WoJ: Try [RPG] (http://www.ibm.com/support/knowledgecenter/ssw_ibm_i_61/rzasc/sc092507.pdf), vous allez adorer Fortran et adopter Basic.
Six réponses:
pericynthion
2016-11-02 20:21:26 UTC
view on stackexchange narkive permalink

FORTRAN n'est pas beaucoup utilisé à ma connaissance dans l'aviation , mais il est largement utilisé dans l'ingénierie aéronautique . Je travaille quotidiennement avec des personnes qui utilisent les programmes «xfoil», «xrotor» et «aswing» de Mark Drela pour la conception et l'analyse de profils aérodynamiques, d'hélices et d'aérostructures. Et j'ai utilisé le modèle «CHARM» de la dynamique des giravions. Tous ces éléments sont écrits en FORTRAN et vous avez souvent besoin de connaître le langage pour les déboguer ou les intégrer dans d'autres programmes, par exemple. pour l'optimisation globale de la conception.

C'est Fortran, pas FORTRAN. Depuis plus de 25 ans, c'est le cas.
@VladimirF dépend de sa révision je suppose ... FORTRAN 66 et FORTRAN 77 sont nommés en majuscules.
@Ruslan '77 remonte à 1977-1978, selon Wikipedia, en le datant d'un conservateur il y a 37 ans. Je ne vois pas en quoi cela contredit le commentaire de Vladimir F.
@MichaelKjörling mon point est qu'il peut encore y avoir des programmes en cours d'utilisation écrits dans ces anciennes versions de la langue.
[NASTRAN] (https://en.wikipedia.org/wiki/Nastran), fréquemment utilisé pour FEA (Finite Element Analysis) dans les applications aérospatiales est écrit en FORTRAN et les praticiens apparemment qualifiés doivent se plonger à un bas niveau dans certains applications.
RedGrittyBrick
2016-11-02 19:22:47 UTC
view on stackexchange narkive permalink

Fokker Services et DynamicSource AB ont développé conjointement une application iOS pour exécuter les modules FORTRAN Take Off and Landing SCAP (Standard Computerized Airplane Performance) sur l'iPad d'Apple®. L'application permet à un opérateur d'effectuer les calculs de performances peu de temps avant le décollage et permet donc d'intégrer des changements de dernière minute en ce qui concerne le chargement de l'avion et les conditions de piste.

Modules de calcul des performances de décollage et d'atterrissage OEM sont conformes à la spécification d'interface IATA SCAP. Ils sont écrits en Fortran. Normalement, les programmes Fortran ne fonctionnent pas sur iPad®, mais les ingénieurs logiciels de DynamicSource AB ont réussi à rendre cela possible.

Le module SCAP fourni par l'OEM est combiné avec un programme d'appel et une base de données d'aéroports / obstacles. Via une interface utilisateur graphique (GUI) conviviale, des données pertinentes telles que le poids de l'avion, le vent et l'état de la piste sont introduites dans l'application. En quelques secondes, les données de décollage et d'atterrissage telles que V1, V2 et le réglage des volets sont présentées sur l'écran de l'iPad®.

Tom H
2016-11-02 22:31:53 UTC
view on stackexchange narkive permalink

FORTRAN est toujours en cours d'utilisation pour AU MOINS les raisons suivantes, que j'ai pas toutes vues expliquées ici:

  1. FORTRAN a une énorme base de code héritée qui fonctionne et a résisté à l’épreuve du temps. Bien sûr, vous pouvez diriger la source via un convertisseur FORTRAN vers C (c'est ainsi que certains compilateurs FORTRAN modernes fonctionnent réellement dans les coulisses), mais vous ruinez en grande partie toute nature auto-documentée du code - ce qui pour de nombreux programmes et algorithms est la seule documentation qui existe ou qui est complète et fiable.

  2. La syntaxe et le flux de contrôle de FORTRAN sont relativement simples par rapport à de nombreux langages modernes et peuvent donc être utilisés comme " lingua franca "pour distribuer des algorithmes de calcul qui fonctionnent manifestement.

  3. En corollaire du point immédiatement précédent, le fait que FORTRAN est un langage relativement" mort "qui ne sera pas révisé peut être considéré comme une bonne chose. Si vous publiez une découverte scientifique, et incluez la source FORTRAN des algorithmes utilisés pour extraire les données critiques et effectuer les analyses qui soutiennent la découverte, il ne fait aucun doute que dans 50 ou même 100 ans, les scientifiques et les chercheurs pourront toujours exécutez votre code quelque part. Peut-on vraiment faire la même affirmation pour quelque chose comme MATLAB? Je ne pense pas.

Vous seriez fou, bien sûr, d'essayer d'écrire un framework GUI ou vraiment n'importe quoi au-delà du pur code de calcul numérique en FORTRAN. Mais ce qu'il fait, il le fait toujours très bien.

* le fait que FORTRAN est un langage relativement "mort" qui ne sera pas révisé * WTF? Le projet Fortran 2015 est déjà terminé. (Fortran, pas FORTRAN). Peut-être que vous vouliez simplement dire que la compatibilité descendante sera maintenue?
John K
2016-11-03 00:13:22 UTC
view on stackexchange narkive permalink

Oui, Fortran est toujours utilisé. Cependant, ne vous inquiétez pas trop si vous trouvez votre cours moins qu'excitant: la plupart des ingénieurs aérospatiaux ne font pas beaucoup de programmation informatique (le cas échéant). Cependant, si vous avez l'intention de poursuivre des études supérieures, faites attention dans votre classe Fortran! Je pense que votre première priorité (quels que soient vos projets d'études supérieures) devrait être Matlab. Tout le monde l'utilise aujourd'hui, surtout si vous publiez. La puissance de Matlab (et Mathematica) réside dans leur capacité à simplifier les équations algébriques et à produire de jolis résultats (prêts pour la publication). Mathematica était autrefois le roi de la colline dans ce domaine, mais Matlab les a pratiquement chassés (bien que Mathematica connaisse une résurgence en raison de la version gratuite de Raspberry pi). Ce sont tous deux d'excellents outils, mais si vous avez besoin d'analyser des données volumineuses, les outils de choix dans l'aérospatiale sont Fortran ou c / c ++. Fortran est préférable lorsqu'il s'agit de nombres complexes et possède de nombreuses fonctions vectorielles, matricielles et mathématiques intégrées. Cependant, cela échoue lorsque vous essayez de gérer des pointeurs ou d'interfacer avec des fonctions de bas niveau du système d'exploitation (où c brille). Mais seul un petit pourcentage d'ingénieurs aérospatiaux écrivent du code dans ces langages. La plupart des Fortran de Boeing fonctionnent sur leurs machines massivement parallèles effectuant des calculs électromagnétiques et de dynamique des fluides dans les domaines de la recherche. Les langages c sont principalement utilisés dans les systèmes embarqués (avionique) .Ma recommandation: vous devez maîtriser Matlab mais vous connaîtrez (être capable de lire et comprendre) à la fois Fortran et c ...

T.E.D.
2016-11-03 20:52:40 UTC
view on stackexchange narkive permalink

Mon employeur actuel dans l'industrie de la simulation de vol l'utilise toujours pour de nouveaux travaux. Nous essayons de nous en éloigner, mais il n'est tout simplement pas possible (ou raisonnable) de faire 100% lorsque nous avons beaucoup de code réutilisable entièrement débogué écrit, et nous obtenons encore occasionnellement des modèles de vol de fournisseurs qui l'emploient. (Ce droit là est votre grand indice énorme que oui, l'industrie aéronautique l'utilise toujours)

Je crois que la plupart des autres grands acteurs du secteur de la simulation de vol sont dans le même bateau. Même si nous nous en éloignons, c'est principalement vers d'autres langages compilés procéduraux non-VM comme C ++, que je soupçonne que beaucoup d'étudiants considèrent également de «vieux langages» de nos jours.

Même si nous le pouvions débarrassez-vous de Fortran dans tous nos nouveaux emplois, nous avons beaucoup de systèmes livrés qui l'utilisent, et ceux-ci ont périodiquement besoin de corrections de bogues ou de mises à jour (efforts de remplacement de matériel obsolescent, etc.). Nous devrons donc encore soutenir Fortran pendant encore deux décennies.

user724067
2016-11-03 22:17:06 UTC
view on stackexchange narkive permalink

Un directeur du développement d'UAV aux États-Unis m'a dit directement que Fortran est toujours utilisé dans leurs drones.

Bien que cela puisse être vrai, cette réponse serait beaucoup plus utile avec plus de détails ou de sources pour la soutenir.
Tout ce que j'ai, c'est une déclaration personnelle qui m'a été faite. Juste des preuves anecdotiques de la fin des années 2000. http://www.acq.osd.mil/sts/organization/bio-weatherington.shtml


Ce Q&R a été automatiquement traduit de la langue anglaise.Le contenu original est disponible sur stackexchange, que nous remercions pour la licence cc by-sa 3.0 sous laquelle il est distribué.
Loading...