FDtomo是一個使用多年,以三維震波層析成像 (Seismic Tomography)為目的的程式。FDtomo在設計上,由多個以 Fortran 程式語言撰寫之模組組合而成,使用者通常將這些模組編譯成執行檔,並且對這些執行檔進行控制。而這種對執行檔進行控制的方法,限縮了一些使用上的便利性,讓使用者通常會透過輔助工具來完成操作的行為。另外FDtomo為前人所架構,讓它在使用上並沒有善用現今各式硬體架構的效能,造成等待計算的時間過長。雖然現在存在許多可以提升程式效能的平行工具,但是要使用工具需要相關的背景知識,而這並不容易上手。因此本研究提供一個基於FDtomo設計之上的工具STFlow (Seismic Tomography Flow),這個工具在層析成像的領域上定義一些相關資料結構,並且提供一個特定領域語言(Domain Specific Language, DSL)。除了透過提供各式的資料結構,讓使用者能以更具抽象性的方式來進行層析成像的計算,DSL的設計也讓使用者在不具備平行程式撰寫知識的情況,卻可以增進程式執行的效率。;FDtomo is a tool for seismic tomography that is used for many years. In the design of FDtomo, it divides FDtomo into multiple modules written in the programming language Fortran. The users of FDtomo usually compile these modules into executable binaries, and operate the binaries; however, the way users do makes usage of FDtomo inconvenient, which have users accomplish the operation through other aid tools. Moreover, FDtomo has been developed about 10 years ago, so that it does not benefit from a variety of modern hardware and takes users a lot of time to wait for calculation. Although there are sorts of parallel tools that can improve performance of program, it’s hard for people who do not have related knowledge. As a result, this research provides a tool based on FDtomo called STFlow (Seismic Tomography Flow). It defines related data structures for tomography domain, and provides a Domain Specific Language, DSL. The design of our DSL not only provides various data structures that make users can accomplish calculation of tomography with higher-level abstraction, but also improves the performance of running tomography while hiding the details of parallel programming