Возможно ли прицепить научные библиотеки fortran к python?

Discussion in 'С/С++, C#, Rust, Swift, Go, Java, Perl, Ruby' started by dutywar, 14 Mar 2016.

  1. dutywar

    dutywar New Member

    Joined:
    11 Sep 2015
    Messages:
    5
    Likes Received:
    0
    Reputations:
    0
    Всем доброго времени суток! Читал, что все научное достояние человечества отражено в библиотеках фортрана, где есть решение почти к каждой математической вычислительной задаче. В связи с этим вопрос: Я начал уже изучать питон. Возможно ли использовать в нем библиотеки от фортрана? Ведь если да, то значит, можно не зная сам язык использовать его кладезь, на более простом языке.
     
  2. Ins3t

    Ins3t Харьковчанин

    Joined:
    18 Jul 2009
    Messages:
    939
    Likes Received:
    429
    Reputations:
    139
  3. smack

    smack Active Member

    Joined:
    25 Aug 2013
    Messages:
    210
    Likes Received:
    157
    Reputations:
    3
    Уверен, что то, что есть в питоне тебе не хватит?
     
  4. dutywar

    dutywar New Member

    Joined:
    11 Sep 2015
    Messages:
    5
    Likes Received:
    0
    Reputations:
    0
    Нет, совсем не уверен. Скорее всего хватит, просто есть очень амбициозная цель миграции в другую страну, там устроиться работать в NASA, сейчас обучаюсь на технической специальности, соответствующей этой цели. Но использование самой извращенной версии паскаля для обучения меня печалит, поэтому и интересуюсь питоном: с одной стороны современно, ч другой очень продуктивно.

    ЗЫ. Да, я знаю, что в NASA кое-где используют fortran, но пока я доеду до них, это изменится. Да и суть моего вопроса в принципе такова: можно ли зная питон, использовать еще и наработки фортрана за весь период его сущетсвования
     
  5. smack

    smack Active Member

    Joined:
    25 Aug 2013
    Messages:
    210
    Likes Received:
    157
    Reputations:
    3
    Сцаентологи из любой области сейчас используют питон, библиотек там достаточно.
    Там где используют фортран, или специфическая задача, или волокут еще старые разработки. В любом случае после питона ты научишься программировать и чтобы начать писать на фортране, тебе остается только изучить его синтаксис и некоторые особенности языка.
     
    dutywar likes this.
  6. FunOfGun

    FunOfGun Elder - Старейшина

    Joined:
    5 Sep 2012
    Messages:
    388
    Likes Received:
    72
    Reputations:
    124
  7. scrat

    scrat кодер

    Joined:
    8 Apr 2007
    Messages:
    625
    Likes Received:
    541
    Reputations:
    3
    > Читал, что все научное достояние человечества отражено в библиотеках фортрана

    Это очень общее утверждение, отчасти верное.
    Например, в физике высоких энергий(большой адронный коллайдер, вот это всё) используется огромное количество Fortran/C++ пакетов, причём довольно старых, проверенных временем. Они используются для CPU-intensive вычислений: Монте-Карло симуляции, realtime-обработки данных. Далее эти данные используются в анализе, который зачастую делается на Python с использованием ipython/numpy/scipy/matplotlib-стека и линковкой Fortran/C++ библиотек в Python.

    Отвечая на твой вопрос: да, ты вполне сможешь ужиться в Python среде, там уже есть всё необходимое. Если тебе понадобится Fortran у тебя есть как минимум два варианта:
    1. Делать часть работы полностью с Fortran, потом экспортировать данные и работать с ними в Python.
    2. Линковать Fortran-библиотеки с Python. Способы для этого упоминали выше, вот ещё один: http://www.sam.math.ethz.ch/~raoulb/teaching/PythonTutorial/combining.html

    Большинство научных библиотек в python уже написаны с использованием C/Fortran внутри, например посмотри на статистику использования языков в scipy: https://github.com/scipy/scipy
    22% исходников на fortran.

    Ещё один совет: лучше поищи материалы о том, как люди в твоей области работают, спроси в более релевантных местах, а не на этом богом забытом форуме.
     
    dutywar likes this.
  8. dutywar

    dutywar New Member

    Joined:
    11 Sep 2015
    Messages:
    5
    Likes Received:
    0
    Reputations:
    0
    Всех благодарю за развернутые ответы! Что хотел уяснил!