EQUATRAN-G

EQUATRAN-Gの解説

EQUATRAN-Gの概要

昨今のパソコンの低価格化で、その普及が急速に進み、2、3人に1台が、あるいは先進的な企業ではひとりひとりにパソコンが配布されています。 このような状況下では、ワープロや表計算ソフトは仕事のツール(道具)として日常化してきています。 また、表計算ソフトやデータベースソフトに代表される、利用者が自らデータを操作できるようなアプリケーションが整備されてきており、利用者が主体となったシステムの構築、いわゆる EUC(エンド・ユーザー・コンピューティング) が進むと予想されています。
また、一方技術計算の分野に目を向けると、大型計算機の時代から技術者・研究者自ら FORTRAN あるいは BASIC を使ってプログラムを作り、問題を解決してきました。 すでに EUC が行われていたとも言えます。 しかし、本来プログラマーでないわけですから、満足するプログラムを作るまでには、多くの時間と労力が必要になっていました。

ここで紹介する EQUATRAN-G は このような技術計算の悩みを一気に解決してくれるソフトです。 技術計算をプログラミングせずに簡便に行えるソフトで、「数値計算の簡易言語」と言えるものです。

応用例

EQUATRAN-G の基本となる機能は方程式の解法です。 方程式をそのまま入力すると直接数値解を得ることができます。 たとえば、図のような5元連立方程式を入力して実行を指示すると、下のような計算結果が得られます。

計算結果

一番身近な応用は、データから近似式を作る カーブフィッティング でしょう。 観測データや文献などのデータから近似式を求めるのに最小2乗計算をし、データと近似式をグラフにプロットして評価できます。
線形・非線形連立方程式を使えば、時間依存のない電気回路の計算、化学平衡計算、管路網の計算やプロセスの物質収支計算などのいわゆる バランス計算 を解くことができます。
連続系の ダイナミックシミュレーション は、常微分方程式でモデル化できます。 振動系のシミュレーション、電気回路の過渡現象の解析、制御系の解析や設計、反応速度の検討、反応器のようなプラント機器の設計、血液循環系のシミュレーションや社会システムのシミュレーションなどがあります。

EQUATRAN-G とプログラミング言語との違い

プログラミング言語とはどこが違うのか、図は問題を解く場合のアプローチの違いを示しています。

FORTRAN & BASIC数式モデルを作成したら、まず計算の手続き、アルゴリズムを考えます。 このとき、線形・非線形方程式や常微分方程式などが含まれる場合、それぞれの数値計算の手法(常微分方程式であればルンゲ・クッタ法など)の知識が必要になります。 次にそのアルゴリズムに従い FORTRAN や BASIC でプログラムを作成し、正しく計算できるよう修正します(デバッグ)。 プログラミングの知識が要求され、多くの時間と労力が必要となります。

EQUATRANEQUATRAN-G の場合は、一番やっかいな部分であるアルゴリズムを考える段階と、プログラミングおよびデバッグの段階を自動化してくれます。
数式モデルを正しく入力しさえすればよいので、ほしいときに答えが得られると同時に、各人が抱えている本来の専門の仕事に専念できることになります。


各機能の説明

方程式解法機能

EQUATRAN-G では、線形連立方程式、非線形連立方程式、常微分方程式(高階または非線形を含む)、そして最適化計算、最小2乗法計算(非線形を含む)を数値的に解くことができます。 この場合、方程式はそのままの形で入力すればよく、変形したり、解く順序に並び替える必要はありません。 解く順序は、EQUATRAN-G が自動的に生成してくれます。
線形・非線形連立方程式の場合は、そのまま入力するだけです。 特に非線形の場合は、一般に直接解くことができないので、繰り返し収束計算が必要になりますが、EQUATRAN-G では線形部分や非線形部分を判断して、それぞれの計算手法を自動的に組み込みます。 なお、ユーザーが繰り返し収束計算の方法を指定をすることも可能です。
常微分方程式では、微分項はアポストロフィ(')を微分記号として

と書き表せばよいので、高階の方程式でもそのまま扱うことができます。 最適化計算とは、評価式の値が最大あるいは最小となるように、1つあるいは2つ以上の独立変数の値を求める問題ですが、これも独立変数と評価変数を指定するだけです。 EQUATRAN-G では、以上の方程式を解く問題のほかに、これらの方程式が混在した複合問題、たとえば常微分方程式と線形・非線形連立方程式が混在した問題、最適化計算の中に非線形連立方程式が含まれるような問題なども、扱うことができます。 さらにユーザー関数を利用すれば、高度な複合問題(多重積分、2点境界値問題、動的システムのパラメータ同定問題、MINIMAX問題など)も扱えます。

方程式記述機能

数式モデルを簡潔に記述するために、以下のような豊富な記述機能を持っています。

  • 配列変数 ・・・ 1次元および2次元の配列変数が扱えます。
  • 組み込み関数 ・・・ 対数、指数、三角関数など36個の関数が内蔵されています。
  • 数表 ・・・ 変数間の関係が図や表として与えられている場合に、数表として定義し、方程式の中で関数のように利用できます。
  • 条件付きの式 ・・・ 条件によって場合分けされるような式を表現できます。
  • ユーザー関数とマクロ ・・・ 規模の大きな数式モデルはモジュール化して記述できます。
グラフ作成機能

片対数・両対数グラフ、スプライン曲線による補間、1〜3次式による近似曲線など、科学技術分野向きのグラフ機能が用意されています。 自動設定機能により、簡単にグラフが作れ、しかも、各種のメイクアップ機能により、完成度の高いグラフが得られます。 画面に表示されたグラフはそのままプリンタに任意のサイズで出力できます。

レポート作成機能

レポートの形に作成したテキスト(フォーム)中に、計算結果を任意の位置に、任意のフォーマットで埋め込むことができます。これにより、レポートの作成が容易にできます。

ユーザーインターフェース

後の例で示すように、GUI(グラフィカル・ユーザー・インターフェース)を用いており、マルチ・ウィンドウによって数式モデルの入力、計算結果の表示、グラフの表示などを別々のウィンドウで実行できるため、作業が効率的に進められます。 また、他のソフトとのデータのやり取りが簡単になっています。