OpenFOAM事始め(はてなブログ編)

CAEにまつわるアレとかコレ

Linux環境とWindows環境

OpenFOAMを使うには、基本的にLinux環境が必要である。

OpenCFD社からは、UbuntuSuSE向けにはバイナリが、他のLinux向けにソースが公開されている。基本的にはLinuxUNIX)環境であれほとんど修正なしにリコンパイルのみで動作は可能であろうと思われるが、原則としてWindows環境で動作させることはできない。開発元であるOpenCFD社は、Windows版を作るつもりはないようである。

とはいえWindows環境でOpenFOAMを使うための試みはいろいろなされていて、多くの方が実際にはWindows環境で使っているのではないかと思うが(特に日本では)、今回はその件は措く。

自分が社会人として仕事を始めたころ、当時はCAEとは何の関係もない業務で、マイコン用のプログラムを書いていたのだが、当時のパソコンはMS-DOS 2.11かなにかで、Windowsは影も形もなかった時代である。メモリは1MB(うちユーザーが使用できる領域は640KB)で、一回にひとつのプログラムしか動作しない(シングルタスク)というシロモノである。

マイコンは一品生産なので、マイコン用のプログラムを書く場合、現物は存在しない。そこでワークステーションUNIXマシンである)の中に仮想環境を作り、クロスコンパイルをかけてプログラムを作成していた。

UNIXワークステーションといっても僕自身はさほど高度な機能を使っていたつもりはなく、(今でいうところの)DOS窓を3つくらい広げて、ひとつでエディタ(ソースの作成)、ひとつでコンパイラ、そしてひとつで単体テストのできる環境を作っておき、プログラム作成→コンパイル→テストをプログラムを立ち上げたまま行なっていた。

ドキュメント作成はパソコン上で一太郎を用いて作成していたのだが、こちらは画面に表示できる大きさに限度がある上(確か20行までだったかな)、一太郎で作業中は他の作業が全くできない、それこそ電卓を起動することすらできないため、パソコンってやっぱり不便だなあ、という印象であった。

それから数年経ってCAEの世界に移ってきたのだが、まだまだUNIXが主流。実をいうと僕は流体解析なんてすべてスーパーコンピュータで行なわれていると思い込んでいて、ワークステーションで普通に計算されていると聞いて驚いたくらい。少なくともパソコンで数値解析を行なうなどということは誰も考えていなかった。

時は移り、Windows NTのリリースは1994年。Windows NT 3.51のリリースが1995年、NT搭載パソコンが「PCワークステーション」などと呼ばれるようになり、この頃から徐々にCAD/CAEソフトがWindowsに移植され始めたと記憶している。技術評論社から「Software Design」が創刊され、日経バイトで「パソコンとワークステーションはどこが違うのか」という特集が組まれたりするようになった。

Windowsで、パソコン用の9x系と業務用のNT系が統合されたのは2001年のXPから。この頃になるとパソコン(いわゆるPC互換機)とUNIXワークステーションに性能差はなく、PCの方が圧倒的に低コストで済むことから、業務用途でも急激にPCが広まっていった。理工系の学生と話をしていて、「うちの研究室にはUNIXマシンは一台もありませんよ、全部Windowsですよ」と言われて驚いたのもこの頃ではなかったか(今では別に驚かないが、10年前は少なくとも驚いたのだ)。

そして今では、一部の計算サーバーを除いて身の回りにあるマシンはすべてWindows、という人がほとんどだろう。エンジニアで「UNIXなんて、一度も触ったことがない」という人も、珍しくないだろう(ある年齢から下の人は、そういう人が多いだろう)。

そこでOpenFOAMである。

オープンソースなツールは、開発はもちろんユーザー環境もオープンソースで、と思うのはわからないでもない。しかし、OpenCFD社は趣味でOpenFOAMを開発しているわけではなく、ビジネスとしてとらえているはず。ユーザーも多くは業務で使用したいと考えている(あるいは、既に業務で使用している)。となると、やはりWindows環境で使えないのは、少々厳しい。