wxWidgetsのインストールは多くの場合は簡単です。Windows環境では、Visual Studio用のファイルが用意されており、所望のライブラリを作成することが出来ます。また、多くのLinux環境では、プレインストールされています。MacOS Xでも実はシステムにインストール済み(10.5で確認)ですが、古いバージョンでした。2012年10月現在、wxWidgetsは2.9がリリースされていますが、既に十分に枯れた2.8もまだ実用になります。
wxWidgetsのインストールは多くの場合は簡単です。Windows環境では、Visual Studio用のファイルが用意されており、所望のライブラリを作成することが出来ます。また、多くのLinux環境では、プレインストールされています。MacOS Xでも実はシステムにインストール済み(10.5で確認)ですが、古いバージョンでした。2012年10月現在、wxWidgetsは2.9がリリースされていますが、既に十分に枯れた2.8もまだ実用になります。
FreeFEM++は、フランスのパリ第6大学のJ.L.Lions研究所やINRIAで開発が進められている有限要素法のためのインタープリター環境とでも言うべきものである。日本では、広島国際大学の大塚厚二教授がプロジェクトに参加されていて、啓蒙活動を進められている。筆者も学会で隣に座られた教授に直接啓蒙されて、マニュアルまでいただいたという様な経緯がある。
1次元から3次元まで解くことが出来る環境であるが、2次元のマイクロストリップ線路の準TEMモード解析を例にして説明する。
wxWidgetsは、グラフィカルユーザインターフェースを構築するための多くのOSプラットフォームを対象としたC++のライブラリです。かなりアクティブに活動しており、ユーザコミュニティも活発です。日本語による解説はあまり見かけることはありませんが、英語でのサポートは、ボランティアベースですが、かなり手厚いです。バージョン2.6以降、ユニコードの実装も進んでおり、日本語などのマルチバイトコードにも不具合は見かけなくなっています。
wxWidgetsが活躍するのは、メニューを表示させてユーザに選択させたり、警告ダイアローグを表示させたりというコンピュータとユーザを橋渡しする部分の設計・開発の部分です。デザインをWYSWYGで作成し、プログラムコードを自動的に生成してくれる、いわゆるRADツールも開発され、無償・オープンソースで提供されています。最も良く使われているのは、wxFormBuilderというツールです。若干、不安定なところもありますが、素晴らしいツールです。
マルチプラットフォームライブラリなので、同じコードを異なるOS環境下で動作させることが出来ます。その時に困るのが、開発環境が全く異なることが多いと言うことです。wxWidgetsにはたくさんの機能の異なるライブラリが存在し、またコンパイルオプションやリンクオプションも少なくありません。手作業でこれらの設定を開発環境毎に作るのは大変です。そこで、おすすめしたいのが、Kitwave Inc.の提供している、cmakeというツールです。このツールを使うと、かなり作業が楽になります。各プラットフォームでのメジャーな開発環境のプロジェクトファイルも作成してくれます。
Electro Magnetica Numerica (EM)は、広義ではFinite-Difference Time-Domain法を用いたシミュレータです。Maxwell方程式の離散化手法は、正確に言うと、Thomas Weiland教授(Technische Universität Darmstadt)の提唱した、Finite Integral Technique (FIT)を用いて離散化しています。EMが他のシミュレータと最も異なる部分は用いている格子が非構造格子系の技術を用いているところです。このレポートでは、その独自の格子についてご紹介します。
/sw
以下に存在します。様々なディレクトリが内包していますが、/sw/fink/10.9-libcxx/stable/main/finkinfo/devel/openmpi.info
というファイルが存在します。この中には、このopenmpiというパッケージの依存情報や、configureのオプションが記述されています。この記述の内、ConfigureParams:
--preix=%p \
--datadir=%p/share/doc \
--sysconfdir=%p/etc/%n \
--sharedstatedir=%p/var/%n/shared \
--localstatedir=%p/var/%n/local \
--libdir=%p/lib/%n \
...
--enable-mpi-thread-multiple
を追加します。その後、%> fink rebuild openmpi
とすることで、新しく追加したオプションが反映されます。 %> ompi_info -c | grep -i thread
ConfigureParams: Thread support: posix (MPI_THREAD_MULTIPLE: yes, OPAL support: yes, OMPI progress: no, ORTE progress: yes, Event lib: yes)
FT Checkpoint support: no (checkpoint thread: no)