(c)表示商業產品
AD_DNSVM:David Lauvergnat撰寫的標量,向量(V)和矩陣(M)的Fortran自動分化工具。它在自變量的數量方面沒有限制(此數字在運行時定義),並且可以計算出高達第三個導數。
ADF95:修改Jingchang Shi與ADF95中描述的GFORTRAN合作:自動差異工具的工具,用於針對大量獨立變量設計的Fortran代碼,由Christian W. Straka,計算機物理通信,第168卷,第2卷,第2期,2005年6月1日,第123-139頁,第123-139頁,第123-139頁,第123-139頁,第123-139頁
ADIFOR:給定Fortran 77源代碼以及用戶對因變量和獨立變量的規範,Adifor將生成一個增強的導數代碼,該代碼除了原始結果外,還針對所有指定的獨立變量計算所有指定的因變量的部分衍生物。
輔助:使用Fortran 95和操作員超載,生成稀疏的Jacobians的自動區分,Pauli Virtanen
Audito:Fortran的自動分化工具,米歇爾V. Heinz。數學運算符已被超載以與新定義的類型合作,其中不僅包括功能值,還包括梯度,Hessian和Laplacian。
AUTO_DERIV:由一組FORTRAN 95程序組成的模塊,可用於計算任何連續函數的第一和第二部分衍生物(或混合),並由S. stamatiadis和Sc farantos(Computer Physics Communications Communications Program庫中的一部分)進行許多獨立變量。數學函數應表示為一個或多個Fortran 77/90/95程序。
Autodiff:Simon Geard最多可自動差異4衍生物
Auto-Diff:Zoziha的後退模式自動分化的現代福特實施。
雙數自動分化(DNAD):Yu,W。和Blair的代碼更新,M。 :“ DNAD,一種使用雙重數字自動區分Fortran代碼的簡單工具”,《計算機物理通信》,第1卷。 184,2013,第1446-1452頁,OddleHod。相關項目:fortran_dnad。 Oyvindyr的叉子使用FYPP宏。這種方法的好處是,可以將數學功能的接口和實現“注入”到使用的模塊中。
fazang:由Yi Zhang的Stan/Math Library啟發的反向模式自動分化的庫。 Zoziha已更新了該項目,以與Gfortran和Ifort合作。
OpenAD:數值計算機程序的自動差異(AD)工具
ta腳:在Inria開發的自動分化引擎。它可以在線運行,也可以在本地下載並作為一組Java類(JAR存檔)進行下載和安裝。
FORTRAN(TAF)中算法的轉換:Fortran 77-95代碼的源代碼轉換器,IE TAF接受Fortran 77-95代碼作為輸入,應用語義轉換,並生成Fortran 77-95代碼。 TAF支持幾個語義轉換。最重要的是自動分化(AD),即用於評估一階導數(Jacobian矩陣)的代碼生成。 (C)
doxygen:從一組已記錄的源文件中生成一個在線文檔瀏覽器(在HTML中)和/或一個離線參考手冊(在乳膠中)。還支持在RTF(MS-WORD),PostScript,超鏈接PDF,壓縮HTML,DOCBOOK和UNIX MAN頁面中生成輸出。
F90TOHTML:PERL腳本將Fortran源文件轉換為超鏈接的網站
福特:自動從代碼中的註釋中生成fortran文檔,從fortran-foss-programmer
HTMLINDEX:C ++代碼,該代碼為C,C ++,Fortran77或Fortran90源代碼文件構建“骨架” HTML頁面,記錄文件中的每個例程...如果每個例程都標記了約翰·伯卡特(John Burkardt)。標記後的信息通常是一行說明例程的作用。
Protex:可以從標準的Fortran文檔標頭中剝離信息並將其保存到Arlindo da Silva等人的乳膠文件中的Perl腳本。
版本-F:Minh Dao的語義版本2.0.0的實現,旨在成為用於處理Fortran Projects中版本的用戶友好工具
buildnis:分佈式,平台獨立的構建系統,可以處理C ++ 20和Fortran模塊,並且足夠靈活以構建其他任何內容並處理各種構建步驟
CMAKE跨平台開源構建系統發電機。 ChristenSencode的Fortran_with_cmake_examples提供了一些具體示例,並提供了盡可能多的解釋,以使其對CMAKE經驗相對較少經驗的人清楚。
CMAKE UTILS:用於CMAKE的有用腳本和模塊,特別是用於科學計算,HPC和Fortran,來自Scivision
CookieCutter-Fortran-Project:用於設置新的Fortran項目的模板,允許用戶從各種構建系統(CMAKE,FPM和MESON)中進行選擇,以及不同的並行化模型,例如Serial,MPI和CoArray。生成的項目包括庫,單元測試(目前利用Fortuno單元測試框架),以及可選的獨立應用程序和示例。
簡單:通過fpm設置GitHub存儲庫的步驟,以及包括福特(1)文檔和單位測試在內的GitHub動作,由UrbanJost
F90_MakeFile_Builder:Python程序通過Benjamin Pieczynski瀏覽每個模塊以搜索每個模塊以構建Fortran 90程序的製作程序。該算法確定依賴項的順序,並以正確的順序構建製造文件。
FAB:為FORTRAN和C項目構建系統。最初旨在構建大都會辦公室的主要科學應用程序,即LFRIC和UM。
FCM:Metomi的現代Fortran Build System +包裝器顛覆科學軟件開發
ff08依賴性:用於獲取Fortran 2008源文件的文件依賴信息的命令行工具,由ianh撰寫的Fortran 2003
fobis.py,窮人的Fortran構建系統:用於使用依賴性層次結構的文件自動解析,並包括語句,以及Szaghi等人在根目錄中發現的所有程序或僅在根目錄中構建的所有程序。
fortdep:Python 3腳本,用於在fortran模塊之間生成依賴性,由Dominik gronkiewicz撰寫
FortDepdectect:Python腳本生成Fortran Projects的依賴性,Zedthree
Forte:短腳本可以從Linux Shell中更靈活地執行Fortran 90代碼,by Ed Higgins
fortran-compiler-with-two-computers:Python代碼,以促進一台計算機上編譯Fortran源文件的工作流程,並在Jucelio Tavares Junior上運行另一個計算機輸出(DLL)。它是通過單獨的機器處理仿真和編譯過程的分佈式環境的理想選擇。
fortrandep:python工具,以確定fortran項目的makefile依賴性,ryan orvedahl
fortran_makedeps:小型python腳本,以掃描fortran源並產生適合file的依賴,詹姆斯·比德爾(James Biddle)
fortranmakeutils:用於生成依賴樹和makefiles的python腳本,由丹尼斯·埃拉斯(Denis Eiras)
Visual Studio的Fortran軟件包管理器:使用Fortran軟件包管理器(FPM)添加了用於構建,運行和測試您的FORTRAN項目的選項和菜單條目,
FORTRAN項目模板:帶有預加壓檢查的項目模板,使用fpm build編譯檢查,使用fpm test自動測試,使用fprettify進行代碼格式,以及使用Matthalex的現代Fortran Vscode延期覆蓋
FPM:Fortran軟件包管理器(FPM)是Fortran-Lang的軟件包管理器和構建系統
fpm completions:Shinobu Amasaki的Fortran軟件包管理器的命令行完成功能。 ZSH目前需要使用此軟件包。
FPM-GUI:Fortran軟件包管理器(FPM)的Straigtforward圖形用戶界面,由Arjen Markus
fpm registry:Fortran-Lang網站的FPM軟件包中央註冊表
FPM搜索:列出了命令行中的FPM註冊中的可用軟件包,Urbanjost和Sebastian Ehlert。這允許快速找到fpm(1)軟件包,並生成相關的依賴線,以插入希望使用它們的FPM(1)軟件包清單文件(fpm.toml)。
GFORTRAN-CONFIG:Windows批處理腳本將在mingw-w64 gfortran環境中自動構建和運行fortran代碼,並通過Cloudy-sfu構建Ubuntu Linux的類似bash腳本
githubactions_intro:引入github動作,作為科學數據工作流的輕質自動化的工具,由奧斯卡·莫吉卡(Oscar Mojica)在python和fortran中進行了示例
Homebrew-Fortran:為Federico Perini等人兼容的Fortran周圍的工具和庫提供包裝構建說明。此水龍頭中的可用軟件包是FPM:Fortran軟件包管理器和LFORTRAN:現代Interactive LLVM基於Fortran編譯器。
Intel®Oneapi數學庫鏈接線顧問:請求有關計算機系統的信息以及有關如何使用Intel®OneapiMath內核庫(動態或靜態的鏈接,使用螺紋或順序模式等)的信息,並自動為應用程序生成適當的鏈接線
JAMS_MAKEFILE:提供一種可移植的,多功能的方式來編譯Fortran,C,C ++和混合項目,McUntz
makedepf90:生成fortran代碼的依賴性,埃里克·埃德曼(Erik Edelman)
Makefile-Maker:Garl4nd的自動Fortran Makefile Maker。該程序首先掃描所有fortran文件以導入其他源文件,並創建有向依賴項圖,每個頂點代表文件,從a到b的箭頭根據B。
Makemake:Michael Wester首先開發的Perl腳本是為了為現代Fortran代碼構建正確的Makefiles,並為較新的編譯器修改,並由Katherine Holcomb為C ++工作。它的用法在這裡討論。
MakeMake90:Jan Berges生成的Python腳本,為模塊化福特計劃生成Makefiles。它遞歸地搜索了.f90文件的工作目錄並確定其依賴性。
梅森:下一代構建系統。 Test-Meson是帶有Fortran代碼的示例Python項目。
Fortran軟件包管理器的MINGW軟件包:為Fortran軟件包管理器(FPM)提供與MSYS2工具鏈兼容的軟件包構建指令。該項目在發布頁面上提供了預構建的MINGW軟件包。
Mkhelper:Skosukhin由GNU AutoConf和GNU製造用於構建Fortran項目的公用事業的收集,由Skosukhin
MKMF:用perl5編寫的工具,該工具將從NOAA-GFDL構建分佈式源的makefile。單個可執行程序是典型的結果。
PYFPM:提供FORTRAN軟件包管理器中使用的FPM軟件包清單格式的Pydantic模型,Sebastian Ehlert
運行式 - 基於模塊的定義和用法,lycantropos的fortran文件。
SPACK:超級計算機,Linux和MacOS的軟件包管理器,使安裝科學軟件變得容易。它與特定語言無關 - 可以在Python或R中構建軟件堆棧,鏈接到C,C ++或Fortran編寫的庫,並輕鬆交換編譯器或目標特定的微體系結構。
冗長的goggles:生成戈達德·戈里昂(Goddard Guryon)的Fortran Project模板。 create_project.sh腳本以輸入為項目名稱(並選擇一個項目目錄名稱),創建項目文件夾,構建和文檔中的文件夾,並將模板文件保存在cmake和doxygen中。
Xmake:基於LUA的輕質跨平台構建實用程序。它使用xmake.lua維護項目構建。支持的兩個Fortran編譯器是Gfortran和Ifort。
CHATGPT:從英語或其他自然語言的問題描述中生成Fortran代碼,並將代碼從其他編程語言轉換為Fortran,有時會出現錯誤。 Chrome chrome擴展程序允許使用GFORTRAN編譯代碼並在Chatgpt Web界面中運行。其他可以生成Fortran代碼的LLM是困惑,Groq,Claude,Mistral,Mistral,Vertex ai與Google的Gemini,Meta AI上的Llama 3和Github Copilot。
IRPF90:Fortran編程環境,通過將隱式參考應用於參數方法(IRP)來幫助開發大型Fortran代碼
楓:有一個Fortran命令,將楓碼轉換為Fortran 77(c)
MATHCODE F90:從Mathematica代碼生成獨立的fortran 90代碼,可選地通過Mathink連接到Mathematica(C)
MATLAB:FORTRAN函數從符號表達式生成Fortran代碼片段,或者生成包含代碼片段(C)的文件
Maxima內置的fortran命令將表達式打印為fortran語句。 F77是一種增強。
參數fortran:Martin Erwig等人,可以產生Fortran程序生成器的生成器,該生成器可以生成Fortran的擴展,專門支持特定應用程序的編程。擴展是通過參數結構指定的,可以在Fortran程序中引用,以描述程序零件對這些參數的依賴性。
PSYCLONE:針對有限差/音量/元素接地系統模型的域特異性編譯器和代碼轉換系統
sympy:可以生成fortran代碼的符號數學的Python庫,如Ivan Pribec所示
argv-fortran:更好的get_command_argument for fortran fortran返回可分配的字符串中的參數,jacob williams撰寫
CMDFF:布拉德·理查森(Brad Richardson
command_args:由Arjen Markus自動處理傳遞給程序的命令行參數
f90getOpt:getopt() - 和getopt_long() - 喜歡功能(類似於c命令),用於fortran 90,hani andreas ibrahim,基於Mark Gates的代碼
Fargparse:命令行論證解析Fortran,該戈達德福特蘭生態系統的一部分
襟翼:庫,旨在簡化Stefano Zaghi的Fortran 2003中復雜CLI的(重複)構造。皮瓣受到Python模塊Argparse的啟發,並試圖模仿它。
ftn_getopt:以類似於c中的getopt設施的方式,提供了一種處理命令參數的方法
M_CLI:在給出了名字符號和原型字符串時,會破裂命令行,看起來非常像Urbanjost和Laurence Kedward的程序的調用。使用NAMELIST組的好處是,不需要將字符串轉換為所需類型或複制類型聲明。
M_CLI2:在給出了Urbanjost等人的原型字符串時,會破裂命令行,該原型字符串看起來很像程序的調用。然後,對每個參數名稱進行呼叫get_args(3F)或其一個變體之一,以適當設置程序中的變量。
M_KRACKEN95:FORTRAN 95版本的Kracken(3F)過程(及相關例程),用於命令行解析,由Urbanjost撰寫
OptionsF90:Christopher N. Gilbreth的定義和解析命令行選項和輸入參數的模塊。它的設計靈感來自Python的OptParse模塊。
paramcard:命令行參數輸入簡單,takahiro ueda
FORTRAN-COMPILER考試套件:包含一個框架和套件,用於測試Fortran編譯器的框架,其主要目標是使Fortran社區易於添加測試並使Brad Richardson等人的廣泛編譯器易於使用該框架。
FORTRAN測試框架(FTFRAMEWORK):Python和Bash腳本的收集,可輕鬆使用Bash自動化測試系統蝙蝠對FORTRAN編譯器進行輕鬆測試
AMD優化C/C ++/Fortran編譯器(AOCC):高性能,生產質量代碼生成工具。 AOCC環境為開發人員提供了各種選項,同時構建和優化C,C ++以及針對32位和64位Linux®平台的Fortran應用程序。
AOMP:基於開源的Clang/LLVM編譯器,並增加了Radeon™GPU上的OpenMP®API的支持。安裝F18的說明在這裡。
ARM FORTRAN編譯器:針對服務器,HPC和科學代碼量身定制,並支持Fortran和OpenMP。該編譯器建立在開源Flang前端,以及基於LLVM的優化和代碼生成後端。 (C)
F18-LLVM項目:F18的LLVM/LLVM項目的叉子。與F18-MLIR和F18同步。
Flang:Flang(也稱為“ Classic Flang”)是針對LLVM的未樹外編譯器。這是PGFORTRAN的開源版本,PGFORTRAN是PGI/NVIDIA的商業福特蘭編譯器
Flang-WASM:包含構建LLVM的Flang-New編譯器修補版本的工具,可用於編譯WebAssembly的Fortran源。還為WebAssembly構建了一個預先構建的fortran運行時庫。
fortran-dev-image:圖像包含HåkonStrandenes的最新版本的編譯器,MPI和HDF5庫以及基本的構建工具(Cmake,Ninja)。然後,這些圖像可用於編譯依賴MPI和HDF5的FORTRAN應用程序。
FORTRAN高級合成(Fortran-HLS-Main):通過在Vitis生態系統中的LLVM Flang整合在AMD Xilinx設備上啟用Fortran,從而實現了所有特徵的使用,例如模擬,分析和硬件BitsReams的生成。相關論文:Fortran高級合成:降低了Gabriel Rodriguez-Canal等人的FPGA上加速HPC代碼的障礙。
fortran-ios:用flang構建iOS ARM64來源的Fortran編譯器的腳本,由Emma Cold撰寫
Fortran kernel for jupyter in Coarray支持:來自Sourceryinstitute
Fortran-setup:腳本設置一個系統,用於在基於Ubuntu的系統上使用Federico E. Benelli的系統。 It installs a Python package manager for some Python-based tools, gfortran, optionally Intel oneAPI HPC, BLAS and LAPACK, gdb, fuzzy-finder (fzf), Fortran Package Manager (fpm), findent, flinter, FORD, fortls, and fortran_project, a script to generate and open projects.
Fortran.rs:Fortran的口譯員,用Rust撰寫的Xavier2p,正在進行的開發
Full-Stack-Fortran:Christoph Honal等人的工具鏈將Fortran編譯為WebAssembly,以及一些使用它的項目。
GFORTRAN:GNU FORTRAN項目,開發免費的Fortran 95/2003/2008編譯器,用於GCC,GNU編譯器集合。 GFORTRAN開發工作利用開放的開發環境來吸引大型開發人員團隊,並確保Gfortran可以在多個架構和不同的環境上工作。 Fortran-Lang討論了各種平台上的Gfortran安裝。對於Windows,有Quickstart Fortran。
gfortran-for-macos:fxcoudert撰寫的Macos Intel的Gfortran。
G95:穩定,生產Fortran 95編譯器可用於多個CPU架構和操作系統。 F2003和F2008標準的一部分已實施
HPE Cray編程環境:與編譯器,工具和庫完全集成的軟件套件,旨在提高程序員的生產力,應用程序可伸縮性和性能。除了支持多種編程語言,編程模型,編譯器,I/O庫和科學庫外,該套件還為包括調試,績效分析,工作量管理和環境設置在內的領域提供了各種支持的工具。 (C)
IBM fortran:forAix®的XL Fortran:在IBM AIX上構建優化和調整的FORTRAN應用程序。
用於Linux的XL Fortran:優化IBMPower®系統上Linux的HPC和認知FORTRAN應用程序,包括Power9™處理器。
vs fortran:使用IBM vs fortran為IBMZ®和Z/VM®開發有效的應用。 (C)
英特爾·福特蘭(Intel Fortran):建立在生成優化代碼的悠久歷史上,該代碼支持行業標準,同時利用Intel®Xeon®可伸縮處理器和Intel®Core™處理器的內置技術。編譯器現在與英特爾不斷發展且多樣化的體系結構保持一致,現在支持GPU。
LFORTRAN:現代開源(BSD許可)互動式Fortran編譯器建於LLVM之上。它可以交互式執行用戶的代碼,以允許探索性工作(就像Python,Matlab或Julia一樣),並以二進製文件為目標,其目標是在Multi-Core CPU和GPU等現代體系結構上運行用戶代碼。
MacOS-Cross-Compiler:Compile C,C ++和Linux上的Fortran代碼,該代碼將由MacOS上的Jerred Shepherd執行。該項目的重點是支持MACOS的新版本。
Mercurium:C/C ++/Fortran Source-Source-Source彙編基礎設施,針對巴塞羅那超級計算中心的編程模型組開發的快速原型。將Mercurium與Nanos ++運行時庫一起使用,以實現OMPSS編程模型。這兩個工具還提供了OpenMP 3.1的實現。
現代 - 武器 - 騙子:建造現代越野碼頭圖像的Dockerfile。它基於Ubuntu 23.10,該23.10具有對Linux內核的多種增強功能,並支持GCC GFORTRAN v13.2.0。這款Dockerfile安裝了Gfortran,OpenMPI和OpenCoArrays,還安裝了現代Fortran項目的Git克隆。
NAG:強大且經過高度測試的FORTRAN編譯器,以其檢查功能和詳細的錯誤報告而受到重視。在Linux,Microsoft Windows和Mac OS X上可用,包括Apple Silicon Mac。 (C)
NEC:Fortran編譯器符合Fortran-2003標準(ISO/IEC 1539-1:2004),並支持Fortran-2008的許多功能(ISO/IEC 1539-1:2010)。 NEC在高端矢量機上擁有30多年的編譯器技術經驗,這些新開發的編譯器將基於這種經驗,並支持NEC編譯器已知的所有優化策略。 (C)
NVIDIA HPC軟件開發套件:NVIDIA HPC SDK C,C ++和FORTRAN編譯器支持HPC建模和使用標準C ++和Fortran,OpenACC®指令和CUDA®的HPC建模和仿真應用程序的GPU加速。 GPU加速數學庫可在常見的HPC算法上最大化性能,並且優化的通信庫啟用了基於標準的多GPU和可擴展系統編程。
OMPI:由學術,研究和行業合作夥伴共同開發和維護的開源消息傳遞界面(MPI)實施
開放式Fortran編譯器(OFC):目標是提供一個fortran靜態代碼分析工具,這是一種fortran Modernizer,可以在可能的情況下將遺產fortran重印為F90,並為開放源代碼編譯器提供替代的Fortran前端。
Oracle Developer Studio Fortran編譯器F95:提供以下功能和擴展:對多處理器系統,VAX/VMS fortran擴展,OpenMP並行化指令,全局,PEEPHOLE,以及潛在的並行性優化的優化自動和顯式循環並行化。 (C)
操場:Ashirwad Mishra等人的瀏覽器中的Interactive Fortran Playground。它的主要目的是讓新移民輕鬆地品嚐到該語言並學習Fortran編程的基本信息。
玫瑰:大型C(C89和C98),C ++(C ++ 98和C ++ 11),UPC,Fortran(77/95/2003),OpenMP,Java,Python和PHP應用
設置 - Fortran:從Fortran-Lang上設置Ubuntu,MacOS和Windows上的Fortran編譯器和工具鏈的GitHub操作。可用的編譯器是GFORTRAN,IFX,IFORT,LFORTRAN和NVFORTRAN。
Silverfrost Fortran FTN95:完整的Fortran 95標準編譯器,能夠為Win32和Microsoft .NET生產快速的可執行文件。 FTN95船上擁有世界上最好的運行時檢查和各種支持軟件。有一個免費的個人版。 (C)
VSI Fortran for OpenVM:支持Fortran 66,Fortran 77,Fortran 90和Fortran 95標準
XCC項目:C/C ++/fortran編譯器收集,用Java編寫的Jianpingzeng
Fortran stacktrace:通過在C ++庫向後提供一個fortran包裝器來生成堆棧跟踪。它還與Fortran錯誤處理庫集成,以生成包括StackTrace的錯誤。
GDB_FORTRAN_TOOLS:支持Fortran代碼的更高級的GDB調試:對許多基本的Numpy數組操作員的通用訪問:SUM,MIN,MIN,MAX,LOG10等;圖形:情節,Imshow,散佈;保存數據:Cickle,CSV,Ken Mankoff和X-Neon
串行箱:數據序列化庫和C/C ++,Fortran和Python3的工具,用於從蘇黎世ETH構建針對參考運行的驗證框架
UPS:Mark Russell在X11下運行的源C,C ++和Fortran調試器。當前支持的系統是Intel X86上的FreeBSD和GNU/Linux,以及SPARC上的Solaris。
Align-F90:Jannisteunissen的Emacs的Fortran 90的對齊支持
DOOM EMACS FORTRAN模塊:為Fortran提供一個完整的現代開發環境。它與FPM的集成,通過FORTLS的LSP支持,通過FPRETTIER進行自動形成以及對Gfortran和Intel Fortran的支持。
Emacs:可擴展,可自定義,免費文本編輯器。在這裡下載。
F90format:與史蒂夫·珀塞爾(Steve Purcell)的emacs-reformatter相關的fprettify的包裝,由特洛伊·布魯姆利(Troy Brumley)撰寫
F90-IFACE:Wence-和Monnier的Fortran 90仿製接口的基於EMACS的瀏覽器
F90-NAGELIST模式:擴展到Emacs F90模式以處理Fortran Namelists,由Zedthree
Fortpy:Rosenbrockc和Wsmorgan,Python Emacs Intellisense和對Fortran的單元測試支持
Fortpy-el:與Fortpy集成的EMAC的LISP軟件包,為Fortran 2003提供了特定於上下文的自動完成和IntelliSense,包括面向對象的構造,由RosenBrockc提供
fortran-index-args:ffevotte在列表中的每個參數之前,數字subroutine參數並顯示索引。此類索引僅顯示在屏幕上,但不要修改基礎緩衝區。
Fortran層:Fortran語言的基本碼頭配置層,Marco Scopesi
fortran標籤:Raullaasner等人的焦點,重點是查找任何變量或過程的定義。它能夠正確找到所有全球和本地變量,並有望與任何Fortran 2008符合代碼合作,但如下所述。
fprettify.el:fprettify的界面,現代福特代碼的自動格式,由osada-yum
CCX_FFF:Python腳本將舊的Fortran 77代碼轉換為帶有colculix的免費形式的代碼。移動評論和延續標記以獲得更好的代碼折疊。
EZUP:將Fortran固定源形式轉換為自由源形式的工具,與Elf90兼容,到August Miller
F2F:perl腳本,它完成了將Fortran 77源代碼轉換為現代Fortran的許多繁瑣的工作,由Colby Lemon
F2F90:邁克爾·梅特卡夫(Michael Metcalf),彼得·A·羅奇福德(Peter A. Rochford)和本·特雷特爾
F77TOF90:python腳本在fortran 77(.f或.f)固定的表單文件中讀取,並將其轉換為MattDturner的Fortran 90文件(.f90或.f90)的免費表單。它成功地用於將舊版代碼庫(超過400 .f/.f文件和數百萬行代碼)從fortran 77轉換為fortran 90。
ffixed2free:將fortran固定格式源代碼(Fortran 77樣式)轉換為自由格式源代碼(Fortran 90樣式),Pirmin Kaufmann和Martin Schraner。 ffixed2free不需要固定格式代碼僅限於Fortran 77標準。
fortran77_to_fortran90:將舊固定源Fortran 77代碼轉換為fortran 90代碼的免費形式,koushikphy
Fortran-Legacy-tools:處理Fortran代碼的工具:固定到自由源形式轉換器,上層轉換器,較低的轉換器,用於可變聲明的格式化,Ylikx
fortran_tools:Python 2劇本James Goppert和Lenna Peterson
自由式:腳本將固定表格的Fortran文件(用Fortran 77編寫)和標題文件免費形式,由BAST
GConvert:將固定形式的Fortran轉換為GeorgetSikas固定或自由形式的代碼的程序。
to_f90:艾倫·米勒(Alan Miller
EGGX/PROCALL:C,C ++和FORTRAN創建的X11圖形庫是為了實現簡單性的。一個人可以使用基本風格的繪圖功能在X Window系統上輕鬆創建2D圖形。
FTK:提供了一種簡單的手段,可以根據Arjen Markus在基於TCL/TK的Fortran中構建圖形用戶界面。在目前的狀態下,它是概念證明,而不是成熟的庫。
Fortran-Graphics:Ed Higgins用OpenGL編寫的圖形庫
Gino:用於創建複雜的2D和3D圖形和GUI應用的高端功能API。 Gino產品可用於Windows和Linux下的Fortran。 (C)
GTK-Fortran:Vincent Magnin等人的跨平台庫(GUI)構建圖形用戶界面(GUI)。 GTK-Fortran是用Fortran編寫的部分GTK / Fortran綁定,這要歸功於C和Fortran之間的互操作性的ISO_C_BINDING模塊。
小文件對話框:在C中提供許多模態和文件對話框,並提供ISO_C_BINDING接口 /模塊,以從Fortran,Guillaume Vareille來調用這些功能
Winteracter:Fortran編程語言的GUI工具集。它由各種視覺開發工具和大量的子例程庫組成。支持了幾個Fortran編譯器。 (C)
ajt-fortran.vim:Ajit J. Thakkar的VIM縮進腳本的港口
FF08Obfuscate:命令行工具,用於生成Fortran 2008程序源的表面混淆的變體,該程序由Ianh用Fortran 2003編寫。它通過修改程序中的標識符並在沒有任何源註釋的情況下渲染代碼來做到這一點。
發現:凹痕和美化,固定和自由格式,並將fortran固定格式轉換為wvermin and Mftabriz的Fortran Food Format。 Gnikit的Findent-Pypi具有PYPI車輪。
花:將自由格式的fortran代碼轉換為Urbanjost的所有小寫或所有大寫。在每種情況下,評論和引用的文本都留為IS。
Fortranindent:縮進Fortran 90來源的工具,來自Kairzhan
fortranindenter_unesp_2007:fortran 77在C中開發的縮進器,由Rafael Delalibera Rodrigues和Paulo Henrique Arantes urgal
fprettify:現代福特代碼的自動格式,該代碼施加了嚴格的白期格式,用python編寫的Pseewald
f90split:將免費的源表格fortran代碼分配到米歇爾·奧拉格諾(Michel Olagnon)的多個文件,一個模塊或過程中,由Urbanjost改編,供fortran package Manager使用。包含的過程存儲在其父程中
Jhenneberg的IntentPatternfortran:Fortran的一般凹痕模式
Xpand:在文件中展開選項卡。 Urbanjost刪除了尾隨的空白,並選擇刪除了多個空白線。它主要用於在系統上使用,而無需訪問UNIX命令展開(1)。
Ctypesforfortran:Python模塊,使用CTYPES生成python結合到Fortran subroutines,由SébastienRiette和Alexandre Mary生成。
Cython Fortran-File:Corentin Cadiou的Fortran撰寫的基於記錄的二進制格式的快速讀者
CYTHON_ISO_FORTRAN_BINDING:用於使用Yuichiro Sakamoto的Cython的ISO_FORTRAN_BINDING.H的代碼。通過使用ISO_FORTRAN_BINDING.PXD,可以從Cython調用Fortran的方式,就像從C中調用Fortran相同的方式。
exputils-f77:perl模塊,試圖找出如何將C程序與系統上的fortran子例程鏈接,並添加了Mohawk2等人的fortran運行時庫列表。
f2py-with衍生類型:演示如何使用f2py與fortran派生類型一起使用類型結合過程,由尼克·沃根(Nick Wogan)
F2X:用Python編寫的多功能,基於模板的Fortran包裝器。與流行的工具F2PY相比,它具有兩個重要的區別:根據OpenFortranparser的工作,完整的Fortran解析器,以及使用Jinja2模板的非常靈活的代碼生成後端。
F90NML:Marshall Ward等人的Python模塊和命令行工具,為讀取,寫作和修改Fortran Namelist文件提供了一個簡單的接口。將名稱文件解析並轉換為名稱對象,該對象的行為就像標準的Python dict
F90_PORT:PEDRO SCHREIBER的測試Erlang端口在此處解釋
F90Wrap:Jameskermode等人的fortran 90到具有派生類型支持的Python接口發生器。
ffi-flang-Zig:flang-new Runtime與Matheus C.França的Zig之間的FFI,靈感來自SourceryInstitute/iso_fortran_binding。 LLVM/Flang V18.1.7文件包含在此存儲庫中。
FFFI:從Pyccel Project中使用Numpy Arrays在Python中生成的Fortran生成的共享庫的工具。它基於CFFI,目前假設使用Gfortran或Intel Fortran。
FGEN:由Jared Lewis和Zebedee Nicholls提供了Fortran代碼,特別派生類型的Python接口。 FGAN包裹的FORTRAN代碼的一個示例是在FGEN-example上。
Fimport:Pauli Virtanen的Python進口掛鉤,用於進口Fortran模塊
Fmodpy:輕巧,高效,高度自動化,python的Fortran包裝,托馬斯·勒克斯(Thomas Lux)。生成的包裝器是自包裝的,純粹是在Python上寫的,並且可以與安裝Fortran編譯器的任何其他Posix平台共享。
FortFormat:Joshua Laughner的Rust Parser for Fortran格式字符串
Forthon:David Grote等人的python包裝器生成器,允許訪問功能和子例程。
FORTMODGEN:從NET-DEVEV
fortran2cc2fortran:fortran至c / c到fortran(嵌套)索引轉換器,漢斯·艾美(HansAlemão)
fortran90namelists.jl:朱莉婭(Julia
fortranfile:nick Everitt使用Fortran格式規範的文件中的Swift讀取數據
fortranfiles.jl:弗蘭克·奧托(Frank Otto)等人的朱莉婭(Julia)包裝讀/寫作fortran(即二進制)文件。
fortran文件系統:標準fortran的文件系統路徑操縱實用程序,來自Scivision。受Python Pathlib和C ++ 17文件系統的啟發。
python(py-fortranformat)的fortran格式解釋器:從變量列表中生成文本,或者會根據Brendan Arnold和MichaelAckerMankerMannaiub通過的Fortran Format語句將文本線讀為Python變量。
fortran_magic:ipython/jupyter的擴展,在MartínGaitán上有助於在互動會話中使用fortran
Fortrannamelist:Jonathan Schilling的Jonathan Schilling fortran Namelists的Java閱讀課
fortran Namelist讀者:Fortran Namelist => dict / struct的Python和Matlab閱讀器,來自Scivision
fortran-namelist:saji hameed操縱fortran namelists的紅寶石圖書館
FORTRAN-UNIX:FORTRAN 2008 ISO C結合接口,可通過InterKoSMOS上的64位UNIX式操作系統上選擇的POSIX和SYSV類型,函數和例程
fpydemo:包裝命令行工具的演示,用python和fortran編寫,saikat banerjee
FTEST:演示了Balasubramanian Narasimhan的fortran的R函數。以小插圖的形式提供了一個完整的示例。
Fython:Fython是Nicolas Essis-Breton的python語法。 Fython代碼可以在Python中使用標準導入語句使用。
genericf2py:演示查理·泰勒
gfort2py:圖書館允許調用來自Python 2.7或Python 3的Gfortran的Fortran Code,作者:Robert Farmer和OndD還將
H2M-Autfortran-Tool:允許Garnet Liu和Michelle Anderson的Fortran計劃中的c例程輕鬆呼叫。給定標準C中的標頭文件,H2M將產生一個fortran模塊,提供功能接口,該函數接口與C與C的互操作性保持。
Haskell-Fortran:如何使用Haskell的外部功能接口(FFI)和C的FFIFI,將Fortran代碼連接到Haskell,以及Haskell的Hmatrix Library,Josh Freckleton,將Fortran代碼連接起來
內聯:通過Dirk Eddelbuettel等人的內線C,C ++或FORTRAN代碼的動態定義R函數(以及對應的S4對象)。
Jansfortrankernel:Jan Arman Parpin的Jupyter內核實施Fortran
libfde:fortran開發擴展(庫),Zorkator
m_process:通過c包裝器從fortran的過程中讀取和編寫行,urbanjost
M_SYSTEM:允許Fortran調用常用的C例程的模塊,該例程執行基本的系統操作,例如創建和刪除文件和目錄,更改和查詢文件允許,獲取基本ID和流程信息,以及其他POSIX系統請求,以及Urbanjost
多語言 - 朱利婭:朱莉婭呼喚和由fortran,c和python召集的最低限度完整的例子,由亞歷克斯·巴內特
Mwrap:Zydrunas Gimbutas等人的Swig或Matwrap精神的界面生成系統。從一組增強的MATLAB腳本文件中,MWRAP將生成一個MEX網關,以訪問所需的C ++/Fortran函數調用和MATLAB功能文件,以訪問該網關。 Alex Barnett的Mwrapdemo包含簡單,最小的完整示例,顯示瞭如何使用MWRAP鏈接到C或Fortran庫,傳遞和傳遞1D和2D陣列,處理複雜,浮動和布爾特類型,並使用OpenMP。
Namelist_python:Leif Denby等人在Python的Fortran Namelist Parser。
NML:Jem Stachelek等人的解析fortran Namelist文件的R包。
NML:Paul Madden和Jemma Stachelek的Clojure中的查詢/修改實用程序
NML:使用Serde框架在Rust中序列化和序列化fortran Namelist輸入
節點 - 弗拉蘭:允許fortran代碼的橋樑來自node.js,byionicăbizău
process_model:讀取tensorflow savedmodel並輸出fortran代碼將其連接到Simon Clifford等人的Fortran-TF-Lib。
PYIFB:Python界面到Fortran的ISO_FORTRAN_BINDING.H,作者:Robert Farmer
Rfortranrcpp:Konrad1991的Fortran,RCPP和R之間的通信。將R或Fortran用戶代碼從軟件包傳遞到Fortran代碼。
setup_mex:提供試圖促進Zhang Zaikun在MacOS或Windows上設置MATLAB MEX的腳本。對於Fortran,它將(自動)從Intel Oneapi中安裝Fortran編譯器
裹屍布:從LANL創建一個Fortran或Python接口到C或C ++庫。它還可以為C ++庫創建C API。
簡化的包裝器和接口生成器(SWIG):從C ++標頭創建Fortran包裝代碼
Sutools:Balasubramanian Narasimhan的自動化供體式註冊代碼的工具
theMelistTool:提供命令行工具,可用於與納梅爾主義者或納米爾人的包裝(更新,比較它們,...)
Torchfort:使用Libtorch實施的HPC程序的深度學習培訓和推理界面,Libtorch是Pytorch框架使用的C ++後端。可以直接從Fortran或C/C ++程序調用該庫。
Veclibfort:輕巧但靈活的“墊片”,旨在糾正加速/veclib blas和用Mac OS X和Fortran Code和Fortran Code彙編的GNU Fortran,例如Michael C. Grant和Robert C.
Allgebra:用於開發C ++和Fortran HPC程序的Docker圖像,由Termoshtt和T-Hishinuma
Codee:自動代碼檢查平台專門針對時間至關時間C/C ++/Fortran應用程序(C)。培訓材料在這裡。
Fortran-Parser:Touko Puro的Fortran預處理器,Touko Puro設計,旨在通過OpenMP進行多線程和GPU卸載,以自動私有化多線程代碼中修改的全球變量的自動私有化,在fortran陣列中,可以在cpu或gpu operation do-deck of cpu cpu cpu cpu cpu cpu operable operation do-decloration cpu operaper,cpu cpu或gpu cpu cpu operation cpu oper tormbles,cpu cpu offors cpu offors cpu opers cpu offors cpu offorts,區域,以及功能內部的功能,哪個有助於OpenMP卸載
GPUFORT:CUDA FORTRAN和FORTRAN+X的來源轉換工具
嘻哈:GPU內核圖書館的Fortran界面
Hybrid-Fortran:基於指令的Fortran語言的擴展,以支持GPGPU。它的輸入是帶有混合FORTRAN擴展的Fortran代碼,其輸出是CUDA FORTRAN或OPENMP FORTRAN代碼。
MPICH:Argonne National Laboratory的MPI-3.1標準的高性能和可移植的實施
OCCA:在異質平台上進行並行編程的供應商中性框架。 OCCA API為異質編程概念(例如設備,內存或內核)提供了統一的模型,而OCCA內核語言(OKL)則可以使用基於指令的擴展名來創建便攜式設備內核。
ohhelp-for-fpm:動態載荷平衡和可擴展性庫,該庫支持使用MPI進行大規模平行的粒子模擬。每個過程都處理分區區域內的粒子計算,同時處理其他過程處理的某些粒子,從而使整體負載平衡。
OMNI編譯器:用於代碼的編譯器,包括XCALABLEMP,XCALABLEACC和OPENACC指令。 Omni編譯器支持的基本語言是Xcalablemp中的C語言(C99)和Fortran 2008,以及XcalableACC和OpenACC中的C語言(C99)。
組合:使用變壓器為C,C ++和Fortran代碼片段生成OpenMP Pragmas。
OpenCoArrays:通過提供平行應用程序二進制界面(ABI)來支持Fortran 2018編譯器,該二進制界面(ABI)從sourceryinstitute中抽像出基礎並行編程模型,這可以是消息傳遞界面(MPI)或OpenShmem
SPEL_OPENACC:與Paper Spel關聯的代碼:用於在功能單元測試框架中使用OpenACC移植E3SM陸地模型的軟件工具,Peter Schwartz等,2022年,使用指令(WACCPD)的加速器編程講習班。它提供了一種可靠的方法,可以將E3SM土地模型(ELM)移植到GPU上。
STNG:Alvin Cheung等人使用經過驗證的升降機的編譯器。它採用Fortran中的輸入代碼,並自動將其重寫為Halide,這是一種利用GPU進行計算的新型高性能域特異性語言。
自動平行化系統(SAPFOR):Kaniandr和Zoocide撰寫的軟件開發套件,該套件側重於降低手動程序並行化的成本。它主要是為了執行順序程序的源對源轉換,以在異質群集上執行。
ACCIS:Ian Hutchinson的繪圖和圖形庫。相關項目:情節結構
ASGL:生成一個可以包含散點圖,線圖,直方圖,2D密度圖和/或分子的鍵和粘合圖的後記或封裝的後記文件,Andrejšali
Chart_coupe:基於NCL庫的Fortran繪圖包,從MEOM組調整了地球物理數值模型輸出
迪斯林:高級繪圖庫,用於顯示曲線,極地圖,條形圖,餅圖,3D彩色圖,表面,輪廓和地圖,可用於多個C,C ++,Fortran 77和Fortran 90/95的編譯器,上面是Unix,Linux,Linux,linux,linux,Windows,Windows,Windows,Mac,Mac osx和Mass和MS-DOS和MAS,MAC OSX和MAS-DOS。迪斯林分佈可以自由使用而無需任何限制。訪問源代碼和首選支持可通過合同獲得。
DISLIN_X_Y_PLOT:從Andi Zuend中,從Fortran程序內部生成圖幾乎和提供的Dislin“ Quickplots”一樣容易。但是,與Quictplots不同,該模塊為控制繪圖頁面,軸系統和各種曲線屬性提供了更多選項。它還使多個X- Y數據集(曲線)添加到單個圖中。
fplot:提供了一個方便的界面,可與gnuplot繪製,由jchristopherson
fortplot:fortran的繪圖模塊,以便可以實時完成繪圖(在飛行中),Anjishnu Sarkar
吉薩:丹尼爾·普萊斯(Daniel Price)等人的2d科學繪圖圖書館建於開羅。為PDF,PS,PNG和X-Windows提供均勻的輸出。以C依賴關係(開羅除外)的C編寫為PGPLOT的直接替換。
GNUFOR2:Alexey Kuznetsov的Fortran 90模塊,其子例程用於繪製數據,包括2D,3D圖,表面,極性坐標和直方圖。這是約翰·伯卡特(John Burkardt)撰寫的gnufor界面的修改。
Gnuplotfortran:Madhusudan Singh的一些類似Unix的OS'ES Fortran 95 Gnuplot界面。這提供了一些例程,可以從Fortran 95程序中直接訪問兒童GNUPLOT會話。必須安裝fortranposix。
塗鴉:詹姆斯·塔平(James Tappin)的交互式工具,用於生成數據和/或功能的圖。原始塗鴉是一個IDL程序。此版本分別使用GTK-Fortran和Plplot為GUI和繪製繪製的Fortran程序中提供了大多數相同的功能。要顯示功能,需要GDL(gnudatalanguage)或IDL。
M_CALCOMP:Urbanjost與M_Draw一起使用的舊圖形庫,用於與舊代碼一起工作。 CALCOMP庫是一組簡單的fortran可呼叫圖形例程,允許用戶快速構建圖。
M_Slices:基於M_DRAW(3F)的基本切片繪圖模塊,並使用FPM構建,由Urbanjost構建。此版本需要X11窗口。
Muesli:數字和圖形庫,主要寫在Fortran 95中,由Édouardant。 Fortran Muesli庫包含所有必要的材料,以數值與動態陣列(大小,類型和結構的動態)合作,稱為Mfarray。 Fortran圖形庫包含使用MFarray對象的圖形例程。
OGPF:基於對象的接口,來自Fortran的GNUPLOT,由Kookma
PG2PLPLOT:促進從鏈接的PGPLOT鏈接到與PLPLOT鏈接的Fortran代碼的過渡,該PLPLOT是開源和維護的。當前,包括許多PGPLOT例程,但代碼絕不詳盡。
PGPLOT PGPLOT圖形子例程庫是蒂姆·皮爾森(Tim Pearson)的fortran-或Clable,可容納的,無獨立的圖形包裝包,用於製作簡單的科學圖。它旨在以用戶最少的精力製作出版質量的圖形圖像。對於大多數應用程序,程序可以獨立於設備,並且可以在運行時將輸出定向到適當的設備。
plotterf90:圖形子例程庫製作後記,Masao Kodama
Plotutil:使用Roninkoi的GNUPLOT從數據文件中繪製圖。具有用於分類和線路擬合的陣列處理utils和代碼。
PLPLOT:可用於創建標準的XY圖,半log圖,日誌圖圖,輪廓圖,3D表面圖,網格圖,條形圖和餅圖。可以將多個圖形(相同或不同尺寸的)放置在一個頁面上,並且為支持它們的那些設備格式允許多個頁面。 C庫具有與Fortran 2003和許多其他語言的綁定。 Archlinux-Plplot-Fortran由Vikas Sharma的Archlinux上的Fortran構建了Plplot構建。
PLPLOTLIB:PLPLOT的包裝,靈感來自Matplotlib的接口,由Zoziha。它旨在在開發數值模擬的同時滿足快速反饋的需求,並且不會取代更複雜的軟件包,例如matplotlib甚至直接使用PLPLOT。
pltfor:達米安·米納納(Damien Minenna
psplot:可輕易的子例程庫,可以在調用程序中合併以生成Postscript繪圖文件。旨在為有興趣以後錄格式為技術期刊生成技術圖紙或圖形的用戶。
Pyferret:雪貂是一種交互式的計算機可視化和分析環境,旨在滿足來自NOAA/PMEL的大型且複雜的網格數據集的海洋學家和氣象學家的需求。它使用X Windows進行顯示在最近的UNIX和MAC系統上運行。 Pyferret於2012年推出,是Python模塊包裝雪貂。
PYPLOT-FORTRAN:使用Python的Matplotlib.Pyplot,jacob williams生成fortran的地塊
飛濺:Daniel Price等人在一個,二維和三個維度中用於一個,二維和三維的平滑粒子流體動力學(SPH)模擬的可視化工具,主要是為天體物理學開發的。它使用命令行菜單,但可以在繪圖窗口中交互操縱數據。 Splash也可以用作來自ASCII,CSV或.FITS文件的任何類型的列表或圖像數據的獨立繪圖工具。
efpp: preprocessor for eFortran, a dialect of modern Fortran presented in S. Hosoyamada and A. Kageyama, A Dialect of Modern Fortran for Simulations in Methods and Applications for Modeling and Simulation of Complex Systems, Communications in Computer and Information Science, vol 946, pages 439-448, 2018 (Proceedings of AsiaSim2018).
例外:通過Arjen Markus通過簡單的預處理步驟實驗Fortran中的例外
F90做巢:Python腳本,以生成深嵌套的Do在Fortran中,由Thomas Hayward-Schneider撰寫。它將在f90code.f90中生成“經典”嵌套do/enddo,並在f90code_conc.f90中生成DO並發版本。
FMACRO:Harris Snyder撰寫的Fortran的模板預處理器。旨在通過簡單的預處理人解決Fortran缺乏對通用編程的支持,以某些語言委員會對模板語言功能的早期想法進行建模,並將其包含在未來的Fortran標準中。
Fortiel:Jhuighuy的Fortran預處理器和元編程引擎
FYPP:Python驅動的預處理器,作者:Aradi。它可以用於任何編程語言
準備:fortran前處理器用Fortran,由Urbanjost撰寫
卡鉗:庫將性能分析功能集成到LANL的應用程序中。要使用卡鉗,開發人員使用卡尺註釋API標記了感興趣的代碼區域。然後,應用程序可以通過卡尺的配置API在運行時啟用性能分析。
HPCTOOLKIT:集成的工具套件,用於測量和分析從多機桌面系統到美國最大的超級計算機的計算機上的程序性能。通過使用計時器和硬件性能計數器的統計抽樣,HPCToolKit可以準確地測量程序的工作,資源消耗和效率低下,並將其歸因於它們發生的完整呼叫上下文。
Malloc Tracker(MALT):查找在C/C ++/Fortran應用程序中分配內存的位置和方式
參考表:可擴展的,面向對象的參考計算實用程序,在Rouson,Morris&Xia(2012)中描述,這不是您父母的Fortran:使用現代Fortran管理C ++對象。科學與工程計算14(2),46-54。
TimeMory:具有模塊化和可重複使用的組件的性能測量和分析套件,可用於適應任何現有的C/C ++性能測量和分析API,並且用戶在其應用程序中可以任意擴展來自NERSC
軟盤:根據朱利安·J·邦恩(Julian J.它可以“整理”源fortran,生成一個帶有凹痕,do-loops,block if-s等的新文件。流程程序採用了Floppy生產的二進制摘要文件,並製作了有關原始Fortran程序結構的各種報告。
福達特:與紙張相關聯的自動化工具,用於升級Fortran代碼,萊斯利·麥克(Lesley Mak)和波亞·塔赫(Pooya Taheri),軟件(2022),在此處討論
FORTRAN語言程序改建系統(FLPR):C ++ 17用於操縱Fortran源代碼的庫,LANL。該軟件包包含“最佳努力” fortran 2018輸入解析器,用於固定和自由形式輸入,在程序單元中操縱源代碼的數據結構,語句和物理行級別以及示例應用程序,以說明用法並提供一些有關如何使用庫的想法。
Glasgow Fortran源代碼編譯器(Repactorf4ACC):Wimvanderbauwhede和Rouson的自動重構工具,以製作Fortran代碼加速的工具。 Refactorf4ACC的主要目的是使遺留fortran 77加速。在此過程中,它將FORTRAN 77代碼轉換為Fortran 95。此外,Refactorf4ACC還具有將模塊轉換為C/OpenCL的後端。
FORTRAN內核生成器:KGEN:Python工具,從大型Fortran應用程序中提取部分代碼,並將其轉換為獨立/可驗證/可執行的內核,作者Youngsung Kim和John Dennis
Fortrantools:使用GFORTRAN啟用舊或專有的fortran代碼的工具。它們旨在與Codethinklab的GCC分支中的GCC擴展一起使用。
重構可疑的FORTRAN(Roquefort):創建模塊以替換現有的常見塊,刪除從模塊導入的未使用的變量,將隱式變量聲明轉換為顯式變量聲明,並將變量移至新模塊,從NLESC-傑克
整理:登錄和以其他方式清理了舊且疲倦的Fortran源程序。整潔接受ANSI FORTRAN 77,默認為19個連續卡以及某些IBM和CDC方言Fortran語句,最初由Harry Murphy
CAMFORT:科學福特計劃的重構和驗證工具。目前,它支持Fortran 66、77和90,並提供各種傳統擴展。
清潔景觀fortranlint:靜態源代碼分析工具,可以通過自動在其源中識別問題來降低組織的風險 - 在編譯或執行程序之前的fortran代碼中。 (C)
Comparefortrannamelists:比較Kai Keller的Fortran Namelists的Python課程
基於證據的性能調整(CCA/EBT)的代碼理解幫助:從Fortran代碼中提取句法/語義結構,然後提供循環nests的輪廓視圖以及用源代碼指標裝飾的呼叫樹。
FF08DIFF:用於在兩組Fortran 2008源文件之間獲得語義差異(含義,而不是外觀的差異)的命令行工具,用ianh編寫了Fortran 2003
Flint:jonastoth的固定分析和格式的小襯裡,帶有靜態分析和格式
弗林特:渴望成為Marshallward的Fortran Parser,Delinter和Analyzer。目前,它是一個fortran令牌,並帶有用於解析和自動化文檔的工具。
Flint:源代碼靜態分析儀和具有多種編程語言支持的質量檢查器。對於Fortran,它打算遵循OMS文檔Wiki頁面中提到的編碼約定。
Forcheck:市場上最古老,最全面的福特分析工具。它對FORTRAN程序或單獨的FORTRAN程序單位進行靜態分析。 (C)
Fordoctest:Federico E. Benelli確保一致的Fortran代碼文檔,檢查福特文件中包含的源文件並警告是否每個文件有多個模塊,或者是否存在無證件的隔離過程,模塊,模塊,模塊過程或過程參數。
毅力:fortran linter and formatter,用Rust,來自Plasmafair編寫
Fortranas:ANTLR4驅動的Fortran解析和代碼克隆檢測工具。 Fortranas利用Grammars-V4生成解析器和Lexers,並支持任何具有相應語法的Fortran版本。
fortranprocedixticationary:parses fortran源文件,並通過Akhil Akkapelli提取有關過程,模塊,功能和子例程等過程的信息。它通過Pycall利用Antlr4庫來解析fortran語法,並生成包含提取過程詳細信息的文本文件。
Fortree:Python應用程序,由Esther Taillifet創建您的Fortran代碼樹的調用樹。 Fortree將呼叫樹,定義樹和依賴樹木。
論壇:Azizn和Damian Rouson生成統一建模語言(UML)類圖的逆向工程工具。 Foruml了解和圖表fortran階級關係,包括繼承和聚合。 Foruml還檢測並描述了操作員的過載,構造函數和並行數據結構(COARRAYS)。
FORTLINT:Fortran靜態源代碼分析,用於更安全和無錯誤的應用程序
fortrancallgraph:fortran的靜態源代碼分析,從fortesg中跟踪常規的呼叫圖中的變量
Fortran-Callgraph:從Jules源代碼創建呼叫圖的工具
fortran_callgraph_browser:在fortran代碼目錄中讀取並將其顯示為交互式圖表的瀏覽工具,Dan Ellis和Richard Rigby
Fortran代碼質量:簡單的Python腳本,該腳本解析Fortran文件,並提供有關代碼質量的一些指標的反饋,撰寫了EirikF.Kjønstad和Sander Roet
fortran linter:簡單的fortran語法檢查器,包括自動修復代碼,來自cphyc
fortran-linter:fortran 77使用python中的parsec式解析組合,uchchwhash fortran 77
fortran_python_tools:分析Jinyuntang的固定源形式fortran 77代碼的可變用法
Fortrantree:Parses fortran源代碼,並使用iMaliyov的Python創建了一個呼叫樹圖。該代碼依賴於Pygraphviz和Fparser。
fortran-vars:用於Fortran代碼的靜態分析庫。它建立在開源項目FORTRAN-SRC之上,該項目提供了Fortran代碼的征服,解析和基本分析。 Fortran-Vars專注於支持Fortran 77標準和擴展。它提供了一個帶有符號表和儲物表的Fortran內存模型,常數表達式評估,恆定傳播分析。
FPARSER:Python中的解析器,支持Fortran 2003和一些Fortran 2008,由Andrew Porter等人維護,最初由Pearu Peterson
FPT-用於Fortran工程的工具 - 錯誤檢查,測量和評估,結構工程,軟件遷移,運行時間測試等。 (C)
FSOURCE:Mwallerb用Pure Python編寫的Fortran靜態分析工具
Ftnchek:Fortran 77程序的靜態分析儀。它旨在檢測編譯器通常不會的fortran程序中的某些錯誤。
fxtran:解析fortran源代碼,並使用XML標籤進行裝飾。結果是一個XML文件,可以使用XPATH搜索,並使用DOM API進行修改。
I-Ecodecnes:靜態代碼分析工具,可幫助開發人員編寫符合CNESCATLAB的Fortran 77,Fortran 90和Shell的CNES編碼規則的代碼。相關項目:Sonar-Icode-Cnes-Plugin
k-scope:帶有圖形用戶界面的源代碼分析工具可視化Fortran 90和Fortran 77源代碼的程序結構。該工具只需根據編譯器的靜態分析從AST中可視化呼叫樹即可。
p6-fortran:愛德華·希金斯(Edward Higgins)的Raku的Fortran語言解析器
Plusfort-多功能工具套件,用於分析和改進Fortran計劃,免費為從事非商業項目的個人,教育和學術用戶免費。 (C)
Pyft:讀取Fortran代碼,用XML解析的Python腳本,執行一些操作,並將其從UMR-CNRM恢復為Fortran。它可以添加和刪除變量聲明,查找未使用的變量,將代碼轉換為下層或高層情況,並在此處列出其他事情。
簡單的Lint GitHub Action(Simple_lint):通過NOAA-GFDL在GIT存儲庫中的文件上運行簡單的類似絨毛的操作。當前的棉被操作列表是檢查尾隨的尾巴,檢查fortran文件以使用選項卡字符,並檢查fortran文件是否長於指定的長度。
Tree-Sitter-Fortran:Matthew Stadelman等人的Fortran語法。
理解:靜態分析工具的重點是源代碼理解,指標和標準測試,通過Fortran 2008(C)支持標準
Atom-Build-fpm:用於從原子內運行Fortran軟件包管理器(FPM)的插件
代碼::塊:構建的免費C/C ++和Fortran IDE,以滿足其用戶最苛刻的需求。它設計為非常可擴展且完全可配置。 Sylau創建了一個簡短的教程,該教程涉及將Fortran與Code :: Blocks一起使用。
linter-gfortran:linting fortran代碼與gfortran
F90.Kak:Kakoune編輯的現代Fortran語法,Andre Smit
Fortrancodenav:Tiemen Schreuder的Visual Studio擴展程序,可幫助瀏覽現代Fortran代碼。它包含幾個解析器來生成代碼結構表示,該表示的代碼結構表示,該表示的上下文意識有限。
Fortran Intellij Idea插件:Intellij Idea的Fortran語言插件,Satamas
FORTRAN語言服務器:Hansec使用Python(2.7+或3.0+)的語言服務器協議實現。使用此語言服務器的編輯器擴展程序可提供自動完成和其他類似IDE的功能,可用於原子,Visual Studio Code,Visual Studio,(Neo)VIM和Emacs。
Fortran Language Server (fortls): based on @hansec's original Language Server implementation but the two projects have since diverged. fortls (this project) is now developed independently by gnikit of the upstream hansec/fortran-language-server project and contains numerous bug fixes and new features the original fortran-language-server does not.
fortranNeoVIM: neovim config for Fortran programming, by Vuncano. Config files made using Lua, inpired by third part config. Also FortranDictionary_vim, a Fortran keyword dictionary, or word list, made to use specially with vim's built-in dictionary completion
fortran_syntax_highlighter_lite-xl: syntax highlighter for Fortran in lite-xl, by Rohan Vashisht
fortran.tmbundle: TextMate support for Fortran. TextMate is a graphical text editor for macOS 10.12 or later.
fortran-vim-plugin: Vim plugin for Fortran developers that can be used to jump to the declaration of a variable, subroutine, function, etc. and to all its references, by Tobias Melson
fossil: Fortran IDE designed in Python by someone eager to learn Fortran but in an easy and accessible way, by nrwade0
Guide_VSCode-fortran: comprehensive guide on how to set up a complete development environment for Fortran in Visual Studio Code, by Julian Henneberg
Modern-Fortran: language syntax for highlighting of Fortran code in Sublime Text, by eirik-kjonstad. It highlights modern Fortran (Fortran 90 and newer) and incorporates features introduced in Fortran 2003, 2008, and 2018.
neovim: Vim-fork focused on extensibility and usability
Photran: IDE and refactoring tool for Fortran based on Eclipse and the CDT. Photran supports Fortran 77-2008. It includes 39 refactoring, including Rename, Extract Procedure, and loop transformations
qtcreator-fortran: support for Fortran projects and source files in Qt Creator as well as syntax-highlighting, by Jonas Lindemann
Simply Fortran: modern Fortran development environment for Microsoft Windows, Apple macOS, and GNU/Linux systems. It includes the Aplot library for creating two-dimensional graphs and plots quickly from Fortran routines and AppGraphics for creating graphics and graphical user interfaces from either Fortran or C. Free 30-day trial. (C)
SublimeLinterFortran: linter plugin for SublimeLinter provides an interface to gfortran, by Ramón L. Panadés-Barrueta and Tejas Shetty. It will be used with files that have free format Fortran syntax.
TiddlyFor: single file, self-contained wiki, aa flavor of TiddlyWiki, for a Fortran programmer but that can be used for any other purposes, by Mohammad Rahmani. It can be put on the web, sent as an email attachment, or put on a thumb drive. Some features are syntax highlighting for modern Fortran and support for math formulas through katex.
vim: improved version of the UNIX editor Vi. Many new features have been added: multi-level undo, syntax highlighting, command line history, on-line help, spell checking, filename completion, block operations, script language, etc. Download here.
vimf90: Fortran ide for vim
vim-findent: vim plugin for Findent, which indents Fortran sources, by cradesto
vim-fortran-fpm: convenience functions for integrating vim with Fortran Package Manager, by Alexey Vyskubov
vim-FORTRAN-UPPER: vim plugin for automatic capitalization in Fortran source, by William C. Dawn
vim-tmux-IDE: minimal vim IDE by luco00. Sets a connection with external terminal via tmux to interactively execute code (Python, R, Julia, Fortran, Go are supported).
Visual Studio Code (vscode): combines the simplicity of a code editor with what developers need for their core edit-build-debug cycle, from Microsoft. It provides comprehensive code editing, navigation, and understanding support along with lightweight debugging, a rich extensibility model, and lightweight integration with existing tools.
vs-fortran-ls-client: Language Server Protocol client that connects to Chris Hansen's Fortran Language Server to add IntelliSense for Fortran to Visual Studio 2017
vscode-fortran-support: extension that provides support for the Fortran programming language. It includes syntax highlighting, debugging, code snippets and a linting based on gfortran.
vscode-modern-fortran-formatter: formatter extension for modern Fortran using fprettify, by Yuki Hanayama
Yapakit: free Fortran source code editor for Windows, Linux or Mac. It can automatically an html documentation of a project and generate Fortran 90 dependencies for inclusion in a makefile, taking module dependencies into account
CFortranTranslator: translator from Fortran to C++ that provides statement-wise translation to improve readability, by Calvin Neo and Michael Tesch
f2c: convert Fortran 77 to C
F2C-Translator: translates Fortran to C++, by Bin Lei. Also HPC-Code-translation-and-generation: tests the translation and generation performance of Fortran HPC code using CodeXGLUE and ChatGPT, and OpenMP-Fortran-CPP-Translation, associated with the paper Creating a Dataset for High-Performance Computing Code Translation using LLMs: A Bridge Between OpenMP Fortran and C++
f2cpp: Converts Fortran 77 code to C++, by victorliu. Unlike f2c, the output of f2cpp.pl may or may not compile, however, only a small number of hand-tuned changes are typically needed. The resulting code is much cleaner than f2c's output, and much closer to the original intent of the original Fortran code.
f2j: translate Fortran 77 to Java, especially for BLAS, LAPACK and ARPACK
f2matlab: converts Fortran 90 code to Matlab m-files, by benbarrowes. Accordingly, only basic data types and constructions are recommended.
f2perl: translates Fortran 77 into Perl, by Steve Hancock. Also at GitHub.
f4go: Transpiling Fortran code to golang code, by Konstantin8105
F77Ccompiler: compiler from Fortran 77 to C, by Danil
Fortran-CPP-HPC-code-translation-dataset: data set for the preprint Creating a Dataset for High-Performance Computing Code Translation: A Bridge Between HPC Fortran and C++ (2023), by Bin Lei et al.
Fortran2Cpp: aims to create an accurate and comprehensive Fortran-to-C++ translation dataset for fine-tining LLMS such as ChatGPT-4, by Bin Lei and Chunhua Liao
Fortran to C++ Conversion from Objexx: conversion process preserves the structure and syntax of the Fortran to retain the value of the existing documentation and developer knowledge. Another product converts Fortran to Python (C).
fortran2julia: Python script to translate Fortran 90 to Julia, by algorithmx
fortran2julia: parses to JSON by fortran-parser, after which parse.jl converts to JSON to Julia, by Tom Rottier. Requires dotnet runtime to be installed.
Fortran2Julia.js: converts Fortran codes to Julia codes using regular Expressions, groups and backreferences, by Shuhei Ohno. A web interface is here.
FortranTranspiler.jl: partial transpiler from Fortran to Julia, by Denis Telnov
Incomplete Fortran to C/C++ converter: translates Fortran 77 to readable C/C++, by Sebastian Macke
loki: tool to explore the possible use of source-to-source translation for ECMWF's Integrated Forecasting System (IFS) and associated Fortran software packages. Loki is based on compiler technology (visitor patterns and ASTs) and aims to provide an abstract, language-agnostic representation of a kernel, as well as a programmable (Pythonic) interface that allows developers to experiment with different kernel implementations and optimizations.
c2f: partial C to Fortran translator by David Frank
Macrofort: Fortran code generator in Maple, by Claude Gomez
makeFortran: converts Mathematica Code to Fortran, by joelgog
matlab2fmex: small translator which aims to convert numerical Matlab m-files to Fortran90 mex files, by Ben Barrowes. matlab2fmex first translates an m-file to a Fortran90 mex source file then compiles that Fortran90 file using Matlab's mex and the local compiler.
matlab2fortran: performs some simple conversions from Matlab code to Fortran, by ebranlard
Mc2For: MATLAB to Fortran compiler, from Sable
numeta: simple Just-In-Time (JIT) compiler for Python, focused on metaprogramming, by Andrea Bianchi. Currently, the code generates Fortran code that is compiled and executed.
pyccel: Pyccel can be viewed as a Python-to-Fortran/C converter or a compiler for a Domain Specific Language with Python syntax
automates: Automated Model Assembly from Text, Equations, and Software, from ml4ai
bench-cli: cross-platform command line tool to benchmark commands and other executables/scripts in command lines written in Fortran, by Lateralus138. Very precise and fast.
Fortran Debug Utilities: collection of some utilities useful for debugging code, by Pål Levold
Fortran-gdb-pp: gdb pretty printer for Fortran dynamic types, by Peter Hill
fortran-git: Fortran 2008 ISO C binding interfaces to libgit2, by interkosmos
Fortran-RefCount: simple reference counting for Fortran
fortran-sigwatch: library of routines to provide simple signal watching for Fortran programs, originally by Norman Gray, modified by Michael Hirsch. This allows a minimal level of control of a running program from outside it, for example to tell it to checkpoint itself on receipt of a signal.
Fortran-Standard-Search: shell script searching a string in the titles of the subsection of the Fortran standard, and opening the pages in a PDF viewer, by Vincent Magnin. It is based on pdfgrep, cut and okular.
irep: tool for filling C/C++ or Fortran data structures from Lua input tables, from LLNL
libconfort: a small library to handle simple configuration files from Modern Fortran (2008+), by Dominik Gronkiewicz
nmltab: Python 3 module and command-line tool to tabulate, semantically diff, superset and consistently format Fortran namelist files, with output to text, markdown, csv, latex and namelists, by Andrew Kiss and Aidan Heerdegen. Requires Python 3.4 or later, and f90nml (amongst other packages).
nml-to-f90: generates Fortran source code for handling parameter I/O from a namelist, by perrette
progRESS+repORT (progrep}: utility to show live progress, status and stats of a running simulation or any compute job that executes a given number of iterations, by SomajitDey. Progrep can report for both serial (single-core) and parallel (multi-core/multi-node - eg OpenMP/MPI) jobs.
f90tw: provides Fortran wrappers for a limited subset of the Boost and Google test frameworks functionality, by loudove. At the same time, it offers a rather simple mechanism for setting up and managing test suites in Fortran projects.
ForDebug: library designed for debugging Fortran code, especially within pure procedures, by Seyed Ali Ghasemi
FortCompare: tool to mitigate the amount of behavior changed between two implementations of the same Fortran function or subroutine, by aijac0
fort_test: very lightweight testing framework that supports basic assertions and running of test sets, by Thomas Marks
fortran-testanything: test library supporting the Test Anything Protocol (TAP) inspired by Perl's Test::More module, by dennisdjensen
fortran_test_helper: library to provide assistance to testing, by Jason Christopherson
FortranTestGenerator: automatically generates unit tests for subroutines of existing Fortran applications based on an approach called Capture & Replay, from fortesg
fortran-unit-test: unit test library in Fortran to encourage scientific programmer to write tests, by dongli
fortran_unit_test: minimalistic Fortran unit tests with CMake and CTest, by Felix Chern
Fortran-Unit-Test: shows how to link Fortran code with C/C++ and a testing framework such as Google Test, by Rich Morrison
Fortran_UnitTest: unit test library based on OOP, by zhenkunl. It is strongly inspired by Zofu, and its output format is derived from fortran-unit-test.
Fortran Unit Test Framework (FortUTF): unit test framework written purely in Fortran to be compatible with as many projects as possible, by Kristian Zarębski
Fortran Unit Test Library: pure Fortran library using Object-Oriented Programming (OOP), by zhenkunl. It is strongly inspired by Zofu, and its output format is derived from fortran-unit-test.
Fortran Unit Testing Objects (Fortuno): flexible and extensible Fortran unit testing framework for testing serial, MPI-parallelized and coarray-parallelized applications, by Bálint Aradi
ForUnitTest: simple, object-oriented unit testing framework, by Seyed Ali Ghasemi.
FRUIT: Fortran unit test framework in Ruby, by mortele and michaelkonecny
ftest: minimalistic unit testing, by Ladislav Méri
FUnit: lightweight library for writing, administering, and running unit tests in Fortran, by Andrey Pudov. It is an instance of the xUnit architecture and provides Fortran programmers a basic testing functionality with a flexible variety of user interfaces.
fytest: lightweight unit testing framework for Fortran, by aradi. Thanks to its header-only design, it can be easily bundled with any Fortran project without creating extra dependencies.
julienne: compiler-portable, unit-testing framework for modern Fortran, including accelerated coarray Fortran software, by Katherine Rasmussen and Damian Rouson
M_framework: aggregate of Fortran modules useful for creating terminal messages, comparing expected values to results, writing logfiles and playback journals and performing unit tests for Fortran, by urbanjost
par-funnel: unit test parameterizer using namelist, by Tomohiro Degawa. Par-funnel is not a unit test framework but is intended to be used with other unit test frameworks.
pFUnit: unit testing framework enabling JUnit-like testing of serial and MPI-parallel software written in Fortran, from Goddard-Fortran-Ecosystem. Limited support for OpenMP is also provided in the form of managing exceptions in a thread-safe manner.
tap: minimal producer implementation of the "Test Anything Protocol" (TAP) in Fortran 90, from gzahl
test-drive: lightweight, procedural unit testing framework based on nothing but standard Fortran, by awvwgk. Integration with meson, cmake and Fortran package manager (fpm) is available. testdrive_util by Tomohiro Degawa provides procedures to make using test-drive more convenient.
Testing Or ASsertion Toolkit (TOAST): unit testing library by thomasms and Bob Apthorpe
Vegetables: testing framework written using functional programming principles, by Brad Richardson. As many of its procedures as possible are marked with the pure keyword while still allowing the framework to test impure code.
XFunit: object oriented framework to implement unit testing in Fortran 2018, by Fran Martinez Fadrique. Unit testing with XFunit is structured in suites and units. A test suite typically define all test to be implemented for a Fortran module.