收集的Java科學計算庫

五柳-先生發表於2015-05-27

將數學、物理、生物、航天、經濟學等的計算整合到單一系統架構,提供了細緻全面的計算系統。


  • 科學計算框架 Catalano

    http://www.oschina.net/p/catalano

    Catalano Framework 是一個 Java 和 Android 的科學計算框架。 主要計算功能: 影象處理 模糊邏輯 數學計算 統計 機器學習 神經網路

    Catalano


  • 科學計算可移植擴充套件工具包 PETSc

    http://www.oschina.net/p/petsc

    PETSc(Portable, Extensible Toolkit for Scientific Computation) ,讀作Pet-see,是美國能源部ODE2000支援開發的20多個ACTS工具箱之一,由Argonne國家實驗室開發的可移植可擴充套件科學計算工具箱,主要用於在分散式儲存環境高效求解偏微分方程組及相關問題。PETSc所有訊息傳遞通訊均採用MPI標準實現。

        PETSc用C語言開發,遵循物件導向設計的基本特徵,使用者基於PETSc物件可以靈活開發應用程式。目前,PETSc支援Fortran 77/90、C和C++編寫的序列和並行程式碼。

        PETSc是系列軟體和庫的集合,三個基本元件SLES、SNES和TS本身基於BLAS、LAPACK、MPI 等庫實現,同時為TAO、ADIC/ADIFOR、Matlab、ESI 等工具提供資料介面或互操作功能,並具有極好的可擴充套件效能。PETSc為使用者提供了豐富的Krylov子空間迭代方法和預條件子,並提供錯誤檢測、效能統計和圖形列印等功能。

        線性方程組求解器是PETSc的核心元件之一,PETSc幾乎提供了所有求解線性方程組的高效求解器,既有序列求解也有並行求解,既有直接法求解也有迭代法求解。對於大規模線性方程組, PETSc提供了大量基於Krylov子空間方法和各種預條件子的成熟而有效的迭代方法,以及其他通用程式和使用者程式的介面。PETSc具有一般庫軟體所具備的高效能、可移植等優點,而且物件導向技術使得PETSc內部功能部件的使用非常方便,介面簡單而又適用面廣,可以縮短開發週期,減少工作量。

        如今,越來越多的應用程式在PETSc環境上開發,並逐漸顯示出PETSc在高效求解大規模數值模擬問題方面的優勢和威力。 --摘自百度

        支援C、C++、Fortran和Python語言。
        特徵:
    • Parallel vectors
      • includes code for communicating ghost points
    • Parallel matrices
      • several sparse storage formats
      • easy, efficient assembly
    • Scalable parallel preconditioners
    • Krylov subspace methods
    • Parallel Newton-based nonlinear solvers
    • Parallel timestepping (ODE) solvers
    • Support for Nvidia GPU cards
    • Complete documentation
    • Automatic profiling of floating point and memory usage
    • Consistent user interface
    • Intensive error checking
    • Portable to UNIX and Windows
    • Over one hundred examples
    • PETSc is supported and will be actively enhanced for many years

圖形化科學資料分析工具 VisIt

http://www.oschina.net/p/visit

VisIt 是一種互動式並行視覺化訪問和圖形的分析工具,用來檢視科學資料。使用者可以從他們能快速生成視覺化資料,隨著時間而動態顯示,操縱他們,儲存用來展現的結果影象。Visit含有豐富套視覺化功能。支援python和Java互動式呼叫。

VisIt

  • 科學計算工具 FreeMat

    http://www.oschina.net/p/freemat

    這是一款在語法功能與操作介面上,比起一樣免費的老大哥Octave較Matlab更加相似的軟體。可減少由Matlab轉換過來時,在使用上的陣痛期。有些學校已改用此軟體做授課教學,而不再侷限於Matlab這套軟體。一樣使用.m檔...

    FreeMat

  • Java 科學計算包 Shared Scientific Toolbox

    http://www.oschina.net/p/shared+scientific+toolbox

    共享科學工具箱是一個用於科學和分散式計算的Java類庫。它具有廣泛的多方面的陣列線性代數和FFT支援;非同步,高效能的網路層和詮釋抽象類載入中,記錄和訊息傳遞。

    Shared Scientific Toolbox

  • Java數學計算包 JSci

    http://www.oschina.net/p/jsci

    JSci 是一個開源的包集合,這些包中包含數學和科學類。

    Features

    • Abstract math interfaces
    • Linear algebra (support for various matrix and vector types)
    • Statistics (including probability distributions)
    • Wavelets
    • Newtonian mechanics
    • Chart/graph components (AWT and Swing)
    • MathML DOM implementation
    • Lots more...

桉樹雲服務環境 Eucalyptus

http://www.oschina.net/p/eucalyptus

Elastic Utility Computing Architecture for Linking Your Programs To Useful Systems (Eucalyptus) 是一種開源的軟體基礎結構,用來通過計算叢集或工作站群實現彈性的、實用的雲端計算。它最初是美國加利福尼亞...

Eucalyptus


  • bystroTeX

    http://www.oschina.net/p/bystrotex

    bystroTeX 是一個面向科學演示的幻燈片展示系統。特別適用那些大量使用複雜公式的技術演講。使用 Scribble (the Racket documentation system) 來通過

    評價:似乎是個好東西

  • DUNE

  • 海量資料傳輸協議 GridFTP

    GridFTP,美國阿貢國家實驗室(ANL)開發的通訊協議,已在美國能源部的Energy Sciences Network(ESnet)上用於傳輸海量資料(中文),提供可靠的、高效率的通訊基礎,使大規模的、共同合作的科學努力更加容易。

    今日的大規模的、合作性的科學計劃通常要傳輸數量驚人的資料,海量資料傳輸會造成網路的巨大負擔,傳統的通訊協議無法處理如此巨大的資料傳輸需求, 結果可能導致延遲或資料丟失,GridFTP便是用於解決該問題。舉例來說,用Secure Copy進行資料遷移,在兩個遠端主機之間傳輸33GB資料需花費八小時。而GridFTP在同樣時間內可以傳輸20倍的資料,不同於 FTP,GridFTP可以使用多重資料通道改進傳輸速度。

    大資料圖形化工具 GraphBuilder

    http://www.oschina.net/p/graphbuilder

    GraphBuilder由英特爾研究院(Intel Labs)開發,是首個針對大資料的可擴充套件的開源Java庫,可以將大資料集構建成圖形——能夠反映資料之間關係的網路狀結構圖,幫助行業和學術界的科學

    GraphBuilder


  • 檔案共享軟體 OneSwarm

    http://www.oschina.net/p/oneswarm

    OneSwarm是華盛頓大學計算機科學系 研究人員開發的新檔案共享軟體,能改善P2P網路的隱私。OneSwarm的共享不是採用直接的通訊,而是朋友對朋友(F2F,friend-to- friend

    OneSwarm

  • 生物資訊學基礎庫 BioJava

    http://www.oschina.net/p/biojava

    BioJava – 開源的生物資訊學基礎庫 生物資訊學,從字面上理解,這是一門與生命科學和資訊科學這兩個當今熱點領域都相關的學科。 那到底什麼是生物資訊學?在這裡,我只能很遺憾地告訴大家,對於這樣

Colt Matrix library

Colt Project 提供了一組開源的高效能的科學和數學計算的 Java 庫。

  • Java數值計算包 jLab

    http://www.oschina.net/p/jlab

    jLab是數值計算的Java執行環境。該jLab環境的目的是提供一個基於Matlab / Scilab喜歡的科學計算平臺所支援的指令碼引擎執行的Java語言。 The current jLab


平行計算框架 Apache Hama

http://www.oschina.net/p/hama

Hama 是個計算框架,基於BSP (Bulk Synchronous Parallel大容量同步並行)計算技術,主要針對大規模科學的計算。

Apache Hama

  • MathML渲染器 GMathml

    http://www.oschina.net/p/gmathml

    GMathml 是一個 MathML 的渲染器,用來將 MathML 標識語言轉成形如下圖的數學公式 支援輸出到 PNG/SVG/PDF 等格式。 以下內容來自百度百科: http://baike.baidu.com/view/631411.htm MathML‎(Mathematical Mark...

    GMathml

  • MathML渲染器 JEuclid

    http://www.oschina.net/p/jeuclid

    JEuclid 是一個Java 的 MathML 的渲染器,用來將 MathML 標識語言轉成形如下圖的數學公式 支援的輸出格式包括:JPEG, BMP, WBMP, GIF, SVG, EMF, PDF, PS, SWF JEuclid 由一個MathML瀏覽器、命令列轉換工具、Ant...

    JEuclid


    • 簡單分散式計算機制 JavaSpaces

      http://www.oschina.net/p/javaspaces

      JavaSpaces技術是進行分散式計算的一種簡單機制,在分散式計算應用程式中,JavaSpaces 提供了物件的提供者和請求者可用來方便地進行通訊的共享虛擬空間,這允許以Java物件的形式對任務、請求和資訊進行簡單的交換...

    • GNU TeXmacs(好東東)

    GNU TeXmacs 是一個所見即所得的科學公式編輯軟體,提供一個獨一無二、使用便利的框架用來編輯結構化文件。

    TeXmacs 的主要特點是:

    • 跟 Lyx 等不同,它不是一個 TeX 的“前端”,而是一個完全獨立的,超越 TeX 的系統。TeXmacs 擁有跟 TeX 相同,甚至更好的排版美觀程度。這是因為它採用跟 TeX 一樣的排版演算法,並且用 C++ 重新實現。據說分頁的演算法比 TeX 的還要好些。

    • 擁有超越 Word (或者任何一款字處理軟體)的,真正的“所見即所得” (WYSIWYG)。Word 所謂的“所見即所得”其實是假的。所見即所得的含義應該是,螢幕上顯示的內容,跟列印下來的完全一樣。可是 Word 能做到嗎?列印一個文件出來你就發現跟螢幕上顯示的有很大區別,一般來說螢幕上顯示的要粗糙一些。一些 TeX 的前端,比如 Lyx, Scientific Workspace 等也是類似的,它們都不能達到真正的所見即所得。

    • 直接可在螢幕文件裡繪圖。完全視覺化的表格,公式編輯環境。這些都是比 TeX 方便高效很多的方式。需要當心的是,用過 TeXmacs 一段時間之後,你會發現回到 TeX 的公式編輯方式簡直就像回到原始社會。

    • 非常人性化的按鍵設計。比如,在數學公式環境下,你按任意一個字元,然後就可以用多次 TAB 鍵相繼選擇“拓撲相同”的字元。舉個例子,如果你按 @,然後再按幾下 TAB,就會發現這個字元變成各種各樣的圓圈形的字元。如果你按 >,再按 =,就會出現大於等於號,之後再按 TAB,就會相繼出現大於等於號的各種變體。

    • 在直觀的同時不失去對底層結構的控制。比如,(見下圖)視窗右下角的狀態列,顯示出當前游標位置的“上下文”是“proof eqnarry* (1,1) start”,這表示的是這是在一個 proof 環境裡的 eqnarry 的座標 (1,1) 的開始處。當你使用 Ctrl-Backspace,最靠近游標的那層“環境”會被刪除。比如,如果你現在的字型是斜體,那麼在 Ctrl-Backspace 之後,字型就立即還原成正體。

       

    • 結構化的瀏覽功能。比如,按 Ctrl-PgUp, Ctrl-PgDn 就可以在“相同型別”的結構裡上下跳轉。比如,如果你在小節標題裡按這個鍵,就可以迅速的瀏覽所有的小節標題。如果你在數學公式裡按這個鍵,就可以迅速瀏覽所有的數學公式。

    • 與互動式程式介面。支援很多種計算機代數系統,和互動式軟體,比如 MAXIMA,Octave,…… 這些系統返回的數學公式會直接被 TeXmacs 顯示為“TeX 效果”。使用 Scheme 作為嵌入式語言,並且可以使用它來擴充套件系統。這比起 TeX 的語言是非常大的進步。

  • 來源: http://blog.csdn.net/miscclp/article/details/36180855?utm_source=tuicool

相關文章